Hola,
Cita:
Empezado por jachguate
pero si el campo recibo es parte de la llave primaria, como supongo que será, tenes el inconveniente que Delphi será incapaz de localizarlo después de realizada la inserción,
|
No, en realidad no es llave primaria, pues ese campo está vacío mientras no se paga el producto, que es cuando se genera el numero de recibo, y este se copia en el campo recibo, de todos los registros involucrados en dicho pago.
Cita:
Empezado por jachguate
quizas es conveniente que utilices la misma lógica, pero desde el evento BeforePost de la tabla, cuando esta se encuentre en modo de inserción
|
Pero, si se estoy insetando un nuevo registro, ¿Para que necesito asegurarme que el estado de la tabla esté en modo inserción, en el evento BeforePost?, ¿esto no generará un bucle?
En cuanto a:
Código:
if tRecibo.State = dsInsert Then
Begin
if tReciboEmpresa.AsString = 'C' then
Begin
spGen_ReciboC.ExecProc;
tReciboRecibo.AsInteger := spGen_ReciboC.ParamByName('id').AsInteger;
end
else Begin
spGen_ReciboA.ExecProc;
tReciboRecibo.AsInteger := spGen_ReciboA.ParamByName('id').AsInteger;
end;
end;
Que significa exactamente:
spGen_ReciboC.ExecProc;
y el 'id' de:
spGen_ReciboA.ParamByName('id').AsInteger;
¿es una llamada al generador de IB desde el Delphi?
¿como hago para ponerle la A o la C delante?
Muchas gracias por la ayuda,
Virginia