Fórum Campo codigo em um DBedit #265510
16/01/2005
0
Ou seja, a cada novo cliente o campo codigo gere uma numeração automatica e não sobreponha uma a outra?
Ulisses R.l.c
Curtir tópico
+ 0Posts
16/01/2005
Jcmsistemas
Ou seja, a cada novo cliente o campo codigo gere uma numeração automatica e não sobreponha uma a outra?[/quote:471b9f08dd]
Se fosse para um cadastro de clientes, veja exemplo:-
[b:471b9f08dd]procedure TFmCliente.BitBtn5Click(Sender: TObject);
var c: integer;
jam: string;
begin
dm.Cliente.Refresh;
dm.Cliente.Insert;
if dm.Cliente.RecordCount = 0 then
jam := ´00001´
else
begin
dm.Cliente.IndexName := ´Ind_Codigo´;
dm.Cliente.Last;
c := dm.ClienteCodigo.AsInteger + 1;
jam := formatcurr(´00000´,c);
end;
dm.ClienteCodigo.AsString := jam;
dm.Cliente.Refresh;
end;[/b:471b9f08dd]
Gostei + 0
16/01/2005
Isabelct
function NovoCodigo(NomeTabela: string; NomeCampo: string): Integer; begin QueryConsulta.Clear; QueryConsulta.SQL.Add(´SELECT ´ + NomeCampo + ´ + 1 AS NOVOCODIGO´); QueryConsulta.SQL.Add(´FROM ´ + NomeTabela); QueryConsulta.Open; if QueryConsulta.FieldByName(´NOVOCODIGO´).AsInteger = 0 then Result := 1 else Result := QueryConsulta.FieldByName(´NOVOCODIGO´).AsInteger; end;
Acho que isso resolve seu problema. Caso tenha dúvidas, manda pra cá!
Gostei + 0
16/01/2005
Isabelct
function NovoCodigo(NomeTabela: string; NomeCampo: string): Integer; begin QueryConsulta.Clear; QueryConsulta.SQL.Add(´SELECT MAX(´ + NomeCampo + ´) + 1 AS NOVOCODIGO´); QueryConsulta.SQL.Add(´FROM ´ + NomeTabela); QueryConsulta.Open; if QueryConsulta.FieldByName(´NOVOCODIGO´).AsInteger = 0 then Result := 1 else Result := QueryConsulta.FieldByName(´NOVOCODIGO´).AsInteger; end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)