Procedure Global Gravar Novo Registro na Tabela

13/08/2004

0

:?: Olá a todos.
Estou fazendo uma procedure global que será acessada por todos os programas do sistema.
Esta procedure tem a finalidade de adicionar um novo registro em uma tabela, o código deste novo registro esta armazenado em outra tabela que guarda os próximos códigos das tabelas do sistema.
Esta procedure receberá como parâmetros os seguintes dados:
1. Nome da tabela
2. Nome do campo com o ultimo código – numérico
3. Nome do campo da tabela a ser atualizada – Caracter
4. Tamanho do campo caracter da tabela
Ocorre que quando executo a procedure não grava nada no campo de código ele fica vazio estou usando paradox, delphi 5 e DBEdit.
Caso alguém possa me dar um auxilio, será bem vindo.

== >> Ao ativar o Form estou definindo:
procedure TFrC1500.FormActivate(Sender: TObject);
begin
NmTabela := DtmDados.Clientes;
NmCampoCnf := DtmDados.Config.FieldByName(´Cnf_CliCod´).Value;
TamCampo := 2;
NmCampoTab := DtmDados.Pelagem.FieldByName(´Cli_Cod´).Value;
end;

== >>> Quando pressionado o botão gravar chamar a rotina
procedure TFrC1500.BtnGravarRegistroClick(Sender: TObject);
begin
SysGravarRegistro(NmTabela, NmCampoCnf, TamCampo , NmCampoTab);
end;

== >>> Procedure para atualizar o último código
procedure SysGravarRegistro(NmTabela: TTable; NmCampoCnf: String; TamCampo: Integer; NmCampoTab: String);
var
M_Campo : String;
V_Campo, : Integer;

Begin
M_Campo := NmCampoCnf;
V_Campo := StrToInt(M_Campo) + 1;
M_Campo := ´00000´ + IntToStr(V_campo);
M_Campo := copy(M_Campo , (length(M_Campo) - TamCampo) + 1 , TamCampo);

{ Atualiza ultimo código na tabela config }
DtmDados.Config.Edit;
NmCampoCnf := M_Campo;
DtmDados.Config.Post;

{ Grava o novo codigo na tabela }
NmTabela.Edit;
NmCampoTab := M_Campo;
NmTabela.Post;

end;


Neto

Neto

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar