Fórum Incremento Personalizado #222769

27/03/2004

0

Pessoal estou começando a trabalhar com DELPHI, e com certeza preciso da ajuda de vcs. Connheço ACCESS e agora quero migrar o aplicativo que fiz para DELPHI, dar uma cara comercial.

Gostaria que me esclaressem, ou seja, como ficaria o codigo em ACCESS que me da um incremento personalizado para o N_Contrato, buscando o ultimo registro da TABLE e acrescentando +1.

=SeImed(DContar(´[NumeroContrato]´;´Contratos´)=0;1;DMáx(´[NumeroContrato]´;´Contratos´)+1)

Outra opção, seria criar uma tabela ´TabContrato´ com o campo ´ContratoInicial´ que armazena o número inicial dos contratos. Desse modo, a expressão acima ficaria assim:

=SeImed(DContar(´[NumeroContrato]´;´Contratos´)=0;DLookup(´[ContratoInicial]´;´TabContrato´);DMáx(´[NumeroContrato]´;´Contratos´)+1)

Conto com a pasciencia e ajuda de vcs. []´s SrBrown


Srbrown

Srbrown

Responder

Posts

27/03/2004

Wtjunior

Qual Banco de Dados vc vai usar....
Interbase/Firebird existe o Generator
Oracle Sequence
Paradox (não considero BD) - auto incremente....

por aí afora

um abraço
Wilson


Responder

Gostei + 0

27/03/2004

Adeilson_alves

existe um tipo de campo que ja faz o autoincremento, mas tem outro modo, o tipo do campo tem ser numerico ou shortInt:

vc faz assim:
var
Num: Integer;
begin
Table1.Open;
Table1.Last;
Num := Table1.FieldByName(´Codigo´).AsInteger;
Inc(Num); // incrementa mais um
//se for incremento dois vc faz assim Inc(Num,2ou3)
Table1.Insert;
Table1.FieldByName(´Código´).AsInteger := Num;
....
// os outros campos
Table1.Post;
//salva o registro
Table1.Close;


Responder

Gostei + 0

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

Aceitar