Ver Mensaje Individual
  #1  
Antiguo 31-08-2006
chileno chileno is offline
Miembro
 
Registrado: jun 2005
Posts: 121
Reputación: 19
chileno Va por buen camino
campos calculado "Stack over Flow"

hola de nuevo!!!

esto se me escapa de mis manos asi que recurro a todos que me hechen una mano, la situcion es la sgte:

Código Delphi [-]
procedure TDM.tbPrecioCalcFields(DataSet: TDataSet);
begin
  if not (DataSet.State = dsInsert) then
  begin
    DataSet.FieldByName('Total_Cargos').Value :=       tbCargos.FieldByName('embalaje').Value +                                                tbCargos.FieldByName('comision').Value +
                                                  tbCargos.FieldByName('otros').Value    +
                                                  ObtenerValor(Dataset.FieldByName('id_tipo_precio').Value);
    DataSet.FieldByName('Precio_Venta').Value := ((tbUnidad_Venta.FieldValues['Costo'] * DataSet.FieldByName('Total_Cargos').Value)/100) +
                                                   tbUnidad_Venta.FieldValues['Costo'];
    DataSet.FieldByName('embalaje').Value     := (tbUnidad_Venta.FieldValues['Costo'] * tbCargos.FieldByName('embalaje').Value)/100;
    DataSet.FieldByName('comision').Value     := (tbUnidad_Venta.FieldValues['Costo'] * tbCargos.FieldByName('comision').Value)/100;
    DataSet.FieldByName('otros').Value        := (tbUnidad_Venta.FieldValues['Costo'] * tbCargos.FieldByName('otros').Value)/100;
    DM.miSQL.Close;
    DM.miSQL.SQL.Clear;
    DM.miSQL.SQL.Add('select transporte from tipo_precio where id_tipo_precio = ' + floattostr(Dataset.FieldByName('id_tipo_precio').Value));
    DM.miSQL.Open;
    DataSet.FieldByName('trasporte').Value   :=  (tbUnidad_Venta.FieldValues['Costo'] * DM.miSQL.Fields[0].Value)/100;
    DM.miSQL.Close;
    DM.miSQL.SQL.Clear;
    DM.miSQL.SQL.Add('select utilidad from tipo_precio where id_tipo_precio = ' + floattostr(Dataset.FieldByName('id_tipo_precio').Value));
    DM.miSQL.Open;
    DataSet.FieldByName('utilidad').Value     := (tbUnidad_Venta.FieldValues['Costo'] * DM.miSQL.Fields[0].Value)/100;
  end;

el problema surge cuando modifico el campo atravez de un campo de busqueda asoaciado a un dbgrid y me lanza el sgte mensaje "Stack over Flow".... cualquier sugerencia es de ayuda !!!
Responder Con Cita