Hola amigos.. tengo un problema,
Tengo una tabla
"Orden", la cual dentro de sus campos tiene unos campos que son Calculados... en este caso serian
"Ord_Total_Neto" y
"Ord_Total".
Quiero hacer algunas actualizaciones en la tabla, pero los cambios que realizo no se almacenan.. esto puede pasar por que la tabla posee campos que son calculados???? si es así, existe otra forma de actualizar los datos, o tendre que quitar los campos calculados que estan dentro de la tabla???
El siquiente es el codigo para cambiar unos datos que no influyen en los campos calculados... ( pero igual no funciona.. no se actualiza )
Código Delphi
[-]
IBQ_Edit.Close;
IBQ_Edit.SQL.Clear;
IBQ_Edit.SQL.Add('Update "Orden" Set "Ord_Atencion"=:Var1, "Ord_Solicitado"=:Var2, "Ord_Observacion"=:Var3');
IBQ_Edit.SQL.Add('Where "Ord_Numero"=:Var4');
IBQ_Edit.Params[0].AsString := nAte.Text;
IBQ_Edit.Params[1].AsString := nSol.Text;
IBQ_Edit.Params[2].AsString := nObs.Text;
IBQ_Edit.Params[3].AsString := Ordenes.Num_Orden;
IBQ_Edit.ExecSQL;
IBT_Edit.Commit;
El siguiente codigo es para actualizar datos de la tabla "Orden", pero los cambios influyen en los campos calculados
Código Delphi
[-]
IBQ_Edit.Close;
IBQ_Edit.SQL.Clear;
IBQ_Edit.SQL.Add('Update "Orden" Set "Ord_Neto"=:Var1, "Ord_Descuento"=:Var2, "Ord_Iva"=:Var3');
IBQ_Edit.SQL.Add('Where "Ord_Numero"=:Var4');
IBQ_Edit.Params[0].AsFloat := bru;
IBQ_Edit.Params[1].AsFloat := desc;
IBQ_Edit.Params[2].AsFloat := iva;
IBQ_Edit.Params[3].AsString := Ordenes.Num_Orden;
IBQ_Edit.ExecSQL;
IBT_Edit.Commit;
en este caso
"Ord_Neto" - "Ord_Descuento" dan el resultado del campo calculado
"Ord_Neto_Total" y los campos
"Ord_Iva"+"Ord_Neto_Total" dan el resultado del campo calculado
"Ord_Total"
demás esta decir que el codigo para almacenar las actualizaqciones lo he probado con otras tablas (en donde no existen campos calculados) y funciona perfectamente....
Esperando comentarios...