Ver Mensaje Individual
  #16  
Antiguo 07-10-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Reputación: 27
Caral Va por buen camino
Hola
A ver si esta vez bateo mejor.
Código Delphi [-]
var Dato: Real; // creamos la variable que contendra el dato
begin
             try

             //FACTURA_DE_VENTAS

               DM.IBDataSet_FacturasVentasNUMERO.Value:= DM.IBQuery_NumerosNUMERO.Value;//NUMERO DE FACTURA...
               DM.IBDataSet_FacturasVentasCONDICION.Value:=ComboBox_CondicionVenta.Text;
               DM.IBDataSet_FacturasVentasTIPO_FACTURA.Value:=Label_Factura.Caption;
               DM.IBDataSet_FacturasVentasFECHA.Value:=DTPFecha.Date;
         
               IF ComboBox_Comprador.Text ='CLIENTE' THEN
                   DM.IBDataSet_FacturasVentasID_CLIENTE.Value:= DM.IBDataSet_ClientesID_CLIENTE.Value
               ELSE
                   DM.IBDataSet_FacturasVentasID_EMPLEADO.Value:=DM.IBDataset_EmpleadoID_EMPLEADO.Value;
               //DM.IBDataSet_FacturasVentasID_CAJA
               if CheckBox_Reparto.Checked=True then
                  DM.IBDataSet_FacturasVentasREPARTO.Value:='SI'
               else
                  DM.IBDataSet_FacturasVentasREPARTO.Value:='NO';
               DM.IBDataSet_FacturasVentasESTADO.Value:=1;
               DM.IBDataSet_FacturasVentas.Post;
              //DETALLE_VENTAS

               DM.IBDataSet_DetalleVentasESTADO.Value:=1;
               DM.IBDataSet_DetalleVentasID_FAC_V.Value:= DM.IBDataSet_FacturasVentasID_FAC_V.Value;
               DM.ibdataset_detalleventasPRODUCTO.Value:=DBLookupComboBoxAltaProductoFactura.Text;
               DM.IBDataSet_DetalleVentasPRECIO_UNITARIO.Value:=DM.IBDataSet_ProductosPRECIO_UNITARIO.Value;
               DM.IBDataSet_DetalleVentas.Post;
               DM.Transaction.CommitRetaining;
               ShowMessage('Producto agregado.');
               with (DM.IBQuery_DetalleVenta)do
               begin
                  SQL.Clear;
                  SQL.Add('SELECT SUM(T1.TOTAL) AS TOTALP FROM DETALLE_VENTAS T1, FACTURAS_DE_VENTAS T2 WHERE T1.ID_FAC_V = T2.ID_FAC_V');  
               Open;
               end;
              
           // aqui lo hacemos todo
              Dato:= DM.IBQuery_DetalleVenta.Fields[0].AsFloat; // pasamos el valor
              with (DM.IBQuery_DetalleVenta)do  // usamos el mismo query
               begin
              Close;
              // hacemos el Insert pasandole el dato y el numero de factura a la tabla FACTURAS_DE_VENTAS
              SQL.Text:= 'Insert Into FACTURAS_DE_VENTAS (ID_FACTURA, TOTAL) Values (:Fact, :tot)';
              Params[0].Value:= TU_NUMERO_DE_FACTURA; // no lo se de donde sacas el dato
              Params[1].Value:= Dato; // el valor del total
              ExecSQL; // lo ejecutamos
               end;
               
             except
               DM.IBDataSet_DetalleVentas.Cancel;
               DM.Transaction .RollbackRetaining;
             end;
          end;
Para mi es un insert no un update.
Revisa y trata de entenderlo.
Saludos
__________________
Siempre Novato
Responder Con Cita