Before post em Firebird
Colegas...
Num componente IBDataSet no seu evendo onbeforepost coloquei o codigo abaixo:
procedure TFrmOficina.DSOficinaBeforePost(DataSet: TDataSet);
begin
DSOficina.FieldByName(´ID_FUNC´).AsInteger:=IBQueryFunc.FieldByName(´ID´).AsInteger;
DSOficina.FieldByName(´MAO_OBRA´).Value:=DSOficina.FieldByName(´TOTALPAGO´).Value -
DSOficina.FieldByName(´TOTALLIQ´).Value - DSOficina.FieldByName(´DESCONTO´).Value;
end;
Aqui como sempre fiz em paradox busco informação de dados de outras tabelas, como funcionarios da tabeloa funcionarios, calculo o preço da mao de obra, aparece o resultado blz nos DBEdites. mas quando fecho o cadastro e abro de novo, esses valores do evento beforepost não é salvo no banco de dados.
no botao salvar coloquei o seguinte:
DSOficina.post;
DSOficina.CommitRetaining;
os dados que coloco nos dbedits manualmente são gravados normalmente no banco de dados..
Como estou começando em IB/FB, preciso de uma força...
Grato:
Jose Luiz
Num componente IBDataSet no seu evendo onbeforepost coloquei o codigo abaixo:
procedure TFrmOficina.DSOficinaBeforePost(DataSet: TDataSet);
begin
DSOficina.FieldByName(´ID_FUNC´).AsInteger:=IBQueryFunc.FieldByName(´ID´).AsInteger;
DSOficina.FieldByName(´MAO_OBRA´).Value:=DSOficina.FieldByName(´TOTALPAGO´).Value -
DSOficina.FieldByName(´TOTALLIQ´).Value - DSOficina.FieldByName(´DESCONTO´).Value;
end;
Aqui como sempre fiz em paradox busco informação de dados de outras tabelas, como funcionarios da tabeloa funcionarios, calculo o preço da mao de obra, aparece o resultado blz nos DBEdites. mas quando fecho o cadastro e abro de novo, esses valores do evento beforepost não é salvo no banco de dados.
no botao salvar coloquei o seguinte:
DSOficina.post;
DSOficina.CommitRetaining;
os dados que coloco nos dbedits manualmente são gravados normalmente no banco de dados..
Como estou começando em IB/FB, preciso de uma força...
Grato:
Jose Luiz
Jose Luiz
Curtidas 0