Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-10-2005
aurbano aurbano is offline
Miembro
 
Registrado: abr 2004
Posts: 20
Poder: 0
aurbano Va por buen camino
como utilizo un campo con autoincremento.

Buenos dias.

Necesito de su ayuda para utilizar, un campo con autoincremento.

Tengo un campo con autoincremento llamado Nro_fact, en la tabla ventas.

Cuando trato de guardar varios registros en la tabla ventas por medio de un dbgrid, el campo me aumenta por cada registro guardado.

Como puedo hacer para que el autoincremento, asigne el mismo numero por cada registro y al finalizar guarde el registro en la tabla de ventas, y se autoincremente en uno.

Ejemplo:


Si quiero vender varios productos, deben tener el mismo nro. de Factura y guardar estos productos en la tabla ventas correr al siguiente nro. de factura.

El codigo que utilizo es este:


procedure TForm8.RoundButton1Click(Sender: TObject);
begin
table1.first;
while table1.Eof=false do
begin
form2.Table1.FindKey([table1.fieldbyname('serial').asinteger]);
form2.Table1.edit;
form2.Table1.fieldbyname('exi_PRO').asfloat := form2.Table1.fieldbyname('exi_pro').asfloat
+ dbgrid1.Fields[3].asfloat;
form2.Table1.FieldByName('iva_PRO').ascurrency:= form2.Table1.fieldbyname('prv_pro').AsCurrency * (14/100);
form2.Table1.fieldbyname('prV_PRO').AsCurrency:= dbgrid1.Fields[4].ascurrency * (40/100)
+ dbgrid1.Fields[4].ascurrency;
form2.Table1.Post;
/// REGISTRO EN LA TABLA DE ventas
TABLE2.INSERT;
table2.fieldbyname('fec_ven').asdatetime := date;
table2.fieldbyname('ser_ven').asinteger := dbgrid1.Fields[0].AsInteger;
table2.fieldbyname('Nro_fac').Asstring := dbedit1.field.Asstring;
table2.fieldbyname('Des_ven').asstring := dbgrid1.Fields[1].Asstring;
table2.fieldbyname('Can_ven').asfloat := dbgrid1.Fields[2].Asfloat;
table2.fieldbyname('Cun_ven').ascurrency := dbgrid1.Fields[3].Ascurrency;
table2.fieldbyname('IVA_ven').ascurrency := dbgrid1.Fields[4].Ascurrency;
table2.fieldbyname('Cot_ven').ascurrency := dbgrid1.Fields[5].Ascurrency;
table2.fieldbyname('RIF_ven').asstring := dbedit2.Field.AsString;
table2.fieldbyname('nom_ven').asstring := dbedit3.Field.AsString;
table2.fieldbyname('nit_ven').asinteger := dbedit4.Field.Asinteger;
table2.fieldbyname('dir_ven').asstring := dbedit5.field.AsString;
table2.fieldbyname('tel_ven').asstring := dbedit6.Field.AsString;
table2.post;
table1.Next;
end;
END;



Gracias por su ayuda.

Última edición por aurbano fecha: 14-10-2005 a las 18:57:15.
Responder Con Cita
 



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 04:31:38.


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