Fórum Preciso fazer modificações em um DbGrid e cancelar depois... #179001

01/09/2003

0

Tenho duas tabelas uma de Venda(CodVenda,Data,Cliente,Funcionario,Total)
e outra de ItensVenda (CodItemVenda,CodVenda,Produto,Qtde,ValUnit,Total)

se eu fizer lançamentos na tabela de venda e depois no dbgrid que esta ligado na ItensVenda quando eu salvo os itens somem devido ao fato de estar sendo efeturada uma relação master/detail até ae tudo bem, eu resolvi o problema gerando o CodVenda no evento OnNewRecord...

o problema é o seguinte...

se eu cancelar a nota depois de lançar os itens da venda a Venda é cancelada e os Itens ficam órfãos pois perdem a relação...

gostaria de saber se existe alguma maneira de fazer com que os novos dados inseridos em uma tabela possam ficar em cache e só serem salvos se eu confirmar se não eles somem...

Valeu pela atenção...
até mais...


Profjohnny

Profjohnny

Responder

Posts

01/09/2003

Koplin

Se o banco não permitir transação, Use uma query e coloque o seguinte no evento beforeCancel da tabela de vendas:

With query1 do begin
close;
sql.clear;
sql.add(´delete from tensVenda where codvenda = ´+TVendaCodVenda.asstring)
execsql;
end;

Se houver registros com o codvenda da tabela venda, ele serão apagados.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar