Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-08-2005
jdangosto jdangosto is offline
Miembro
 
Registrado: jun 2004
Posts: 82
Poder: 20
jdangosto Va por buen camino
Asignacion de campos

Hola a todos.

Tengo el siguiente código
Código Delphi [-]
tabla_detalle.FieldByName('num_venta').AsInteger := tabla_ventasNum_venta.AsInteger;

Lo que intento es asignar la tabla detalle el mismo número que existe en la tabla ventas (el campos se llama en ambos lados Num_Venta), lo único que en la tabla ventas el campo es de tipo Autonumérico y en la de detalle es Numérico. Esta relación me permite asociar ambas tablas. El error que me da es que no encuentra num_venta en la tabla detalle.

Luego por otro lado estoy intentando guardar unos campos calculados de un Grid pero no encuentro la instrucción adecuada. ¿Cómo sería para guardar, ejemplo, el campo calculado SubTotal del grid, existente tanto en el grid como en la tabla detalle, en la tabla detalle?

Estoy intentado lo siguiente, pero se que no es lo correcto ya que me da un error y no se cómo solventarlo.
Código Delphi [-]
tabla_detalle.FieldByName('SubTotal').AsInteger := dbgrid1.Fields['Subtotal':5];

Gracias
__________________
Lo que los Ojos ven y los Oidos Oyen la Mente se lo Cree (H.Houdini)
Responder Con Cita
  #2  
Antiguo 05-08-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
Respecto al primer problema, ten en cuenta que el campo autonumérico se asigna cuando se actualiza el campo, por lo que si acabas de hacer un insert en la tabla de ventas, hasta que no hagas el post no tendrás el número.


Si este no es el caso, y ya tienes en número en la tabla de ventas, porqué no accedes a él mediante el fieldbyname como en el de detalle?

table_detalle.fieldbyname('numero').asInteger := tablas_ventas.fieldByName('numero').asInteger;

Y, por cierto, personalmente no me gustan los campos autonuméricos, prefiero asignarle el número con un (select max(numero)) + 1, cuestión de gustos!

Un saludo

Edu
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 00:25:11.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi