Fórum Ajuda com Generator #336696
24/01/2007
0
E o seguinte pessoal:
Antigamente tinha o sistema em paradox que usava uma função para gerar os códigos das vendas:
Select MAX(CODIGO) from tabela (mais ou menos assim)
então migrei para o Firebird e atualmente estou usando o Generator para numeração automática, só que o problema é que quando inicia uma nova Venda ele gera o código, então se cancelar ele não diminui o numero no generator.
Ex:
Pedidos: 1, 2, 3, 4, 5
Crio o pedido novo gera o código ´6´ então cancelo o pedido. Quando peço o outro pedido, já pula para ´7´
então fica assim: 1, 2, 3, 4, 5, 7, fica muita falha nos códigos dos pedidos
Existe uma maneira inteligente de contornar isso.
poderia assim como abaixo, mas será que seria a maneira ideal?
With DM.SQLQuery do
begin
Close;
SQL.Clear;
SQL.Add(´SET GENERATOR GEN_CLIENTE TO GEN_CLIENTE - 1´);
ExecSQL(True);
end;
Antigamente tinha o sistema em paradox que usava uma função para gerar os códigos das vendas:
Select MAX(CODIGO) from tabela (mais ou menos assim)
então migrei para o Firebird e atualmente estou usando o Generator para numeração automática, só que o problema é que quando inicia uma nova Venda ele gera o código, então se cancelar ele não diminui o numero no generator.
Ex:
Pedidos: 1, 2, 3, 4, 5
Crio o pedido novo gera o código ´6´ então cancelo o pedido. Quando peço o outro pedido, já pula para ´7´
então fica assim: 1, 2, 3, 4, 5, 7, fica muita falha nos códigos dos pedidos
Existe uma maneira inteligente de contornar isso.
poderia assim como abaixo, mas será que seria a maneira ideal?
With DM.SQLQuery do
begin
Close;
SQL.Clear;
SQL.Add(´SET GENERATOR GEN_CLIENTE TO GEN_CLIENTE - 1´);
ExecSQL(True);
end;
Visualdesigner
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)