procedure TForm1.Button2Click(Sender: TObject);
Var
Codigo, Cat:Integer;
Tot, Prec: Real;
Art: String;
begin
ZQueryBD.SQL.Text:= 'Select Sum(Precio) as Suma From facturaTemp';
ZQueryBD.Open;
Tot:= ZQueryBD.Fields[0].AsFloat;
ZQueryBD.Close;
ZQueryBD.SQL.Text := 'Select Max(CodigoFactura) from factura';
ZQueryBD.Active := true;
try
Codigo := ZQueryBD.Fields[0].AsInteger+1;
except
Codigo := 1;
end;
ZQueryBD.Active :=False;
end;
ZQueryBD.SQL.Text:= 'Insert Into factura (CodigoFactura, Monto, Fecha, Hora) Values (:Num, :Mont, :Fec, :Hor)';
ZQueryBD.Params[0].Value := Codigo;
ZQueryBD.Params[1].Value := Tot;
ZQueryBD.Params[2].Value := Date();
ZQueryBD.Params[3].Value :=Time();
ZQueryBD.ExecSQL;
ZQueryBD.Close;
ZQueryBD.SQL.Text:= 'Select Articulo, Cantidad, Precio From facturaTemp';
ZQueryBD.Open;
While not ZQueryBD.Eof do
begin
Art:= ZQueryBD.Fields[0].AsString;
Cat:= ZQueryBD.Fields[0].AsInteger;
Prec:= ZQueryBD.Fields[0].AsFloat;
ZQueryBD.SQL.Text:= 'Insert Into facturaDetalle (CodigoFactura, Articulo, Cantidad, Precio) Values (:Num, :Arti, :cant, :xpre)';
ZQueryBD.Params[0].Value := Codigo;
ZQueryBD.Params[1].Value := Art;
ZQueryBD.Params[2].Value := Cat;
ZQueryBD.Params[3].Value := Prec;
ZQueryBD.ExecSQL;
ZQueryBD.Next;
end;
ZQueryBD.Close;
DataSourceBD.Enabled:= False;
Showmessage(' insertado');
ZQueryBD.SQL.Text:= 'Delete From facturaTemp';
ZQueryBD.ExecSQL;
Edit3.Text:='0.00 BsF';
Edit1.Text:='';
end;