Resultado do Select em uma Variavel
Boa Tarde pessoal, estou precisando de uma ajuda. Estou desenvolvendo uma aplicação em Delphi com SQL Server que grava o cadastro do funcionario no BD, porem queria saber como eu faço para armazenar em uma variavel o cod_func(codigo do funcionario na tabela) do funcionario que eu acabei de criar. Alguem pode me dar uma ajuda? Obrigado
Deivid Costa
Curtidas 0
Respostas
Leonardo Rocha
13/01/2014
Faça o seguinte: declare uma variável e passe o valor do SELECT para dentro dela.
Exemplo:
var
COD: Integer;
begin
COD:=SUAQUERY*.FieldByName('NOMEDACOLUNA**').AsInteger;
end;
*Nome do sua Query
**Nome da coluna no Banco de Dados
Espero ter ajudo!!
Exemplo:
var
COD: Integer;
begin
COD:=SUAQUERY*.FieldByName('NOMEDACOLUNA**').AsInteger;
end;
*Nome do sua Query
**Nome da coluna no Banco de Dados
Espero ter ajudo!!
GOSTEI 0
Douglas
13/01/2014
Deivid Costa, o exemplo do Leonardo irá funcionar se você tiver criado o componente objeto Query no seu formulário para consulta do código em tempo de execução.
GOSTEI 0
Deivid Costa
13/01/2014
Deivid Costa, o exemplo do Leonardo irá funcionar se você tiver criado o componente objeto Query no seu formulário para consulta do código em tempo de execução.
Realmente armazenou nada na veriavel. Voce poderia me disse como fazer esse procedimento que mencionou?
GOSTEI 0
Douglas
13/01/2014
Deivid Costa, o exemplo do Leonardo irá funcionar se você tiver criado o componente objeto Query no seu formulário para consulta do código em tempo de execução.
Realmente armazenou nada na veriavel. Voce poderia me disse como fazer esse procedimento que mencionou?
Deivid, você pode criar um objeto TQuery, em tempo de execução. O código ficará da seguinte forma abaixo:
OBS: Não esqueça de dar USES na unit DBTables
procedure TForm1.Button1Click(Sender: TObject);
var
cod : integer;
Qry : TQuery;
begin
Qry := TQuery.Create(Self);
Qry.DataBaseName := 'BdDevMedia';//NOME DA SUA BASE DE DADOS.
Qry.Close;
Qry.SQL.Clear;
Qry.SQl.Add('SELECT * FROM DEVMEDIA ');
Qry.SQL.Add('WHERE COD_DEVMEDIA =:COD');
Qry.ParamByName('COD').AsInteger := 0; //PASSE O CODIGO QUE GOSTARIA DE PESQUISAR.
Qry.Open;
if not Qry.IsEmpty then//SE O RESULTADO DA QUERY NAO RETORNA VAZIO O MESMO PREENCHE O CODIGO PESQUISADO NA VARIAVEL.
cod := Qry.FieldByName('cod_devmedia').AsInteger;
FreeAndNil(Qry);//DESTRUINDO OBJETO DE MEMORIA
end;
OU
Se você tiver criado o objeto TQuery no seu formulário configure no Object Inspector os parâmetros de conexão com o banco, depois na propriedade SQL passe o código SQL.
ex:
SELECT * FROM DEVMEDIA
Feito isto, não esqueça de dar um Open na Query no evento OnCreate do seu formulário e depois feche no evento OnClose. Aí sim o exemplo
dado pelo Leonardo irá funcionar.
Espero que a ideia tenha ficado clara. Aguardo o seu feedback.
GOSTEI 0
Deivid Costa
13/01/2014
Opa eu tentei fazer da forma explicada porem o valor sempre retorna 0, alguém pode me dar uma ajuda? Meu código ta assim:
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('INSERT INTO funcionarios (nome, sexo, loc_nasc, uf_nasc, dt_nasc, naturalidade, situacao, cpf, rg, '+
'dt_admissao, est_civil, nome_conjugue,endereco, bairro, cep, cidade, uf, complemento, tel_resid, celular, email, dt_segunda, dt_terca,'+
' dt_quarta, dt_quinta, dt_sexta, dt_sabado, dt_domingo, hr_entrada, hr_saida, ini_refeicao, fim_refeicao, dt_cadastro, setor, funcao, pis'+
',ncart_trabalho, scart_trabalho, ufcart_trabalho, banco_nome, banco_agencia, banco_conta) VALUES (:nome,:sexo, :loc_nasc,:uf_nasc,:dt_nasc,'+
':naturalidade,:situacao,:cpf,:rg, :dt_admissao,:est_civil,:nome_conjugue,:endereco, :bairro, :cep, :cidade, :uf, :complemento, :tel_resid,'+
':celular,:email, :dt_segunda, :dt_terca, :dt_quarta,:dt_quinta, :dt_sexta, :dt_sabado, :dt_domingo, :hr_entrada, :hr_saida, :ini_refeicao,'+
':fim_refeicao, :dt_cadastro, :setor, :funcao, :pis,:ncart_trabalho, :scart_trabalho, :ufcart_trabalho, :banco_nome, :banco_agencia, :banco_conta)');
ADOQuery1.Parameters.ParamByName('nome').Value := edt_nome.Text;
ADOQuery1.Parameters.ParamByName('sexo').Value := cbox_sexo.Items[cbox_sexo.ItemIndex];
ADOQuery1.Parameters.ParamByName('loc_nasc').Value := edt_cidnasc.Text;
ADOQuery1.Parameters.ParamByName('uf_nasc').Value := cbox_ufnasc.Items[cbox_ufnasc.ItemIndex];
ADOQuery1.Parameters.ParamByName('naturalidade').Value := edt_naturalidade.Text;
ADOQuery1.Parameters.ParamByName('cpf').Value := edt_cpf.Text;
ADOQuery1.Parameters.ParamByName('rg').Value := edt_rg.Text;
ADOQuery1.Parameters.ParamByName('ncart_trabalho').Value := edt_numcart_trabalho.Text;
ADOQuery1.Parameters.ParamByName('scart_trabalho').Value := edt_seriecart_trabalho.Text;
ADOQuery1.Parameters.ParamByName('ufcart_trabalho').Value := cb_ufcart_trabalho.Items[cb_ufcart_trabalho.ItemIndex];
ADOQuery1.Parameters.ParamByName('pis').Value := edt_pis.Text;
ADOQuery1.Parameters.ParamByName('dt_nasc').Value := td_nasci.DateTime;
ADOQuery1.Parameters.ParamByName('est_civil').Value := cbox_estcivil.Items[cbox_estcivil.ItemIndex];
ADOQuery1.Parameters.ParamByName('nome_conjugue').Value := edt_conjugue.Text;
ADOQuery1.Parameters.ParamByName('dt_admissao').Value := dt_admissao.Date;
ADOQuery1.Parameters.ParamByName('endereco').Value := edt_endereco.Text + ' Nº: '+ edt_num.Text;
ADOQuery1.Parameters.ParamByName('bairro').Value := edt_bairro.Text;
ADOQuery1.Parameters.ParamByName('cep').Value := edt_cep.Text;
ADOQuery1.Parameters.ParamByName('cidade').Value := edt_cidade.Text;
ADOQuery1.Parameters.ParamByName('uf').Value := cbox_uf.Items[cbox_uf.ItemIndex];
ADOQuery1.Parameters.ParamByName('complemento').Value := edt_comple.Text;
ADOQuery1.Parameters.ParamByName('tel_resid').Value := edt_telefone.Text;
ADOQuery1.Parameters.ParamByName('celular').Value := edt_celular.Text;
ADOQuery1.Parameters.ParamByName('email').Value := edt_email.Text;
ADOQuery1.Parameters.ParamByName('hr_entrada').Value := StrToTime(edt_htent.Text);
ADOQuery1.Parameters.ParamByName('hr_saida').Value := StrToTime(edt_htsaida.Text);
ADOQuery1.Parameters.ParamByName('ini_refeicao').Value := StrToTime(edt_hainicio.Text);
ADOQuery1.Parameters.ParamByName('fim_refeicao').Value := StrToTime(edt_hatermino.Text);
ADOQuery1.Parameters.ParamByName('setor').Value := cb_setor.Items[cb_setor.ItemIndex];
ADOQuery1.Parameters.ParamByName('funcao').Value := cb_funcao.Items[cb_funcao.ItemIndex];
ADOQuery1.Parameters.ParamByName('banco_nome').Value := cb_banco.Items[cb_banco.ItemIndex];
ADOQuery1.Parameters.ParamByName('banco_agencia').Value := edt_agencia.Text+ '-'+ edt_agenciadig.Text;
ADOQuery1.Parameters.ParamByName('banco_conta').Value := edt_conta.Text+ '-'+ edt_contadig.Text;
ADOQuery1.Parameters.ParamByName('situacao').Value := 'A';
ADOQuery1.Parameters.ParamByName('dt_cadastro').Value := Now;
if check_segunda.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_segunda').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_segunda').Value := 'N';
if check_terca.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_terca').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_terca').Value := 'N';
if check_quarta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_quarta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_quarta').Value := 'N';
if check_quinta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_quinta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_quinta').Value := 'N';
if check_sexta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_sexta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_sexta').Value := 'N';
if check_sabado.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_sabado').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_sabado').Value := 'N';
if check_domingo.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_domingo').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_domingo').Value := 'N';
ADOQuery1.ExecSQL;
Cod_funcionario := AdoQuery1.FieldByName('id_func').AsInteger;
Application.MessageBox(Pchar('O codigo do usuario é '+IntToStr(cod_funcionario)+''),'PROGRAMÇÃO',MB_ICONEXCLAMATION);
frm_resumo_funcionario.ShowModal;
end;GOSTEI 0
Douglas
13/01/2014
Opa eu tentei fazer da forma explicada porem o valor sempre retorna 0, alguém pode me dar uma ajuda? Meu código ta assim:
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('INSERT INTO funcionarios (nome, sexo, loc_nasc, uf_nasc, dt_nasc, naturalidade, situacao, cpf, rg, '+
'dt_admissao, est_civil, nome_conjugue,endereco, bairro, cep, cidade, uf, complemento, tel_resid, celular, email, dt_segunda, dt_terca,'+
' dt_quarta, dt_quinta, dt_sexta, dt_sabado, dt_domingo, hr_entrada, hr_saida, ini_refeicao, fim_refeicao, dt_cadastro, setor, funcao, pis'+
',ncart_trabalho, scart_trabalho, ufcart_trabalho, banco_nome, banco_agencia, banco_conta) VALUES (:nome,:sexo, :loc_nasc,:uf_nasc,:dt_nasc,'+
':naturalidade,:situacao,:cpf,:rg, :dt_admissao,:est_civil,:nome_conjugue,:endereco, :bairro, :cep, :cidade, :uf, :complemento, :tel_resid,'+
':celular,:email, :dt_segunda, :dt_terca, :dt_quarta,:dt_quinta, :dt_sexta, :dt_sabado, :dt_domingo, :hr_entrada, :hr_saida, :ini_refeicao,'+
':fim_refeicao, :dt_cadastro, :setor, :funcao, :pis,:ncart_trabalho, :scart_trabalho, :ufcart_trabalho, :banco_nome, :banco_agencia, :banco_conta)');
ADOQuery1.Parameters.ParamByName('nome').Value := edt_nome.Text;
ADOQuery1.Parameters.ParamByName('sexo').Value := cbox_sexo.Items[cbox_sexo.ItemIndex];
ADOQuery1.Parameters.ParamByName('loc_nasc').Value := edt_cidnasc.Text;
ADOQuery1.Parameters.ParamByName('uf_nasc').Value := cbox_ufnasc.Items[cbox_ufnasc.ItemIndex];
ADOQuery1.Parameters.ParamByName('naturalidade').Value := edt_naturalidade.Text;
ADOQuery1.Parameters.ParamByName('cpf').Value := edt_cpf.Text;
ADOQuery1.Parameters.ParamByName('rg').Value := edt_rg.Text;
ADOQuery1.Parameters.ParamByName('ncart_trabalho').Value := edt_numcart_trabalho.Text;
ADOQuery1.Parameters.ParamByName('scart_trabalho').Value := edt_seriecart_trabalho.Text;
ADOQuery1.Parameters.ParamByName('ufcart_trabalho').Value := cb_ufcart_trabalho.Items[cb_ufcart_trabalho.ItemIndex];
ADOQuery1.Parameters.ParamByName('pis').Value := edt_pis.Text;
ADOQuery1.Parameters.ParamByName('dt_nasc').Value := td_nasci.DateTime;
ADOQuery1.Parameters.ParamByName('est_civil').Value := cbox_estcivil.Items[cbox_estcivil.ItemIndex];
ADOQuery1.Parameters.ParamByName('nome_conjugue').Value := edt_conjugue.Text;
ADOQuery1.Parameters.ParamByName('dt_admissao').Value := dt_admissao.Date;
ADOQuery1.Parameters.ParamByName('endereco').Value := edt_endereco.Text + ' Nº: '+ edt_num.Text;
ADOQuery1.Parameters.ParamByName('bairro').Value := edt_bairro.Text;
ADOQuery1.Parameters.ParamByName('cep').Value := edt_cep.Text;
ADOQuery1.Parameters.ParamByName('cidade').Value := edt_cidade.Text;
ADOQuery1.Parameters.ParamByName('uf').Value := cbox_uf.Items[cbox_uf.ItemIndex];
ADOQuery1.Parameters.ParamByName('complemento').Value := edt_comple.Text;
ADOQuery1.Parameters.ParamByName('tel_resid').Value := edt_telefone.Text;
ADOQuery1.Parameters.ParamByName('celular').Value := edt_celular.Text;
ADOQuery1.Parameters.ParamByName('email').Value := edt_email.Text;
ADOQuery1.Parameters.ParamByName('hr_entrada').Value := StrToTime(edt_htent.Text);
ADOQuery1.Parameters.ParamByName('hr_saida').Value := StrToTime(edt_htsaida.Text);
ADOQuery1.Parameters.ParamByName('ini_refeicao').Value := StrToTime(edt_hainicio.Text);
ADOQuery1.Parameters.ParamByName('fim_refeicao').Value := StrToTime(edt_hatermino.Text);
ADOQuery1.Parameters.ParamByName('setor').Value := cb_setor.Items[cb_setor.ItemIndex];
ADOQuery1.Parameters.ParamByName('funcao').Value := cb_funcao.Items[cb_funcao.ItemIndex];
ADOQuery1.Parameters.ParamByName('banco_nome').Value := cb_banco.Items[cb_banco.ItemIndex];
ADOQuery1.Parameters.ParamByName('banco_agencia').Value := edt_agencia.Text+ '-'+ edt_agenciadig.Text;
ADOQuery1.Parameters.ParamByName('banco_conta').Value := edt_conta.Text+ '-'+ edt_contadig.Text;
ADOQuery1.Parameters.ParamByName('situacao').Value := 'A';
ADOQuery1.Parameters.ParamByName('dt_cadastro').Value := Now;
if check_segunda.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_segunda').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_segunda').Value := 'N';
if check_terca.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_terca').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_terca').Value := 'N';
if check_quarta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_quarta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_quarta').Value := 'N';
if check_quinta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_quinta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_quinta').Value := 'N';
if check_sexta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_sexta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_sexta').Value := 'N';
if check_sabado.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_sabado').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_sabado').Value := 'N';
if check_domingo.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_domingo').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_domingo').Value := 'N';
ADOQuery1.ExecSQL;
Cod_funcionario := AdoQuery1.FieldByName('id_func').AsInteger;
Application.MessageBox(Pchar('O codigo do usuario é '+IntToStr(cod_funcionario)+''),'PROGRAMÇÃO',MB_ICONEXCLAMATION);
frm_resumo_funcionario.ShowModal;
end;Deivid, agora fiquei sem entender você quer inserir dados ou resultar na Query o valor pesquisado?
GOSTEI 0
Deivid Costa
13/01/2014
Opa eu tentei fazer da forma explicada porem o valor sempre retorna 0, alguém pode me dar uma ajuda? Meu código ta assim:
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('INSERT INTO funcionarios (nome, sexo, loc_nasc, uf_nasc, dt_nasc, naturalidade, situacao, cpf, rg, '+
'dt_admissao, est_civil, nome_conjugue,endereco, bairro, cep, cidade, uf, complemento, tel_resid, celular, email, dt_segunda, dt_terca,'+
' dt_quarta, dt_quinta, dt_sexta, dt_sabado, dt_domingo, hr_entrada, hr_saida, ini_refeicao, fim_refeicao, dt_cadastro, setor, funcao, pis'+
',ncart_trabalho, scart_trabalho, ufcart_trabalho, banco_nome, banco_agencia, banco_conta) VALUES (:nome,:sexo, :loc_nasc,:uf_nasc,:dt_nasc,'+
':naturalidade,:situacao,:cpf,:rg, :dt_admissao,:est_civil,:nome_conjugue,:endereco, :bairro, :cep, :cidade, :uf, :complemento, :tel_resid,'+
':celular,:email, :dt_segunda, :dt_terca, :dt_quarta,:dt_quinta, :dt_sexta, :dt_sabado, :dt_domingo, :hr_entrada, :hr_saida, :ini_refeicao,'+
':fim_refeicao, :dt_cadastro, :setor, :funcao, :pis,:ncart_trabalho, :scart_trabalho, :ufcart_trabalho, :banco_nome, :banco_agencia, :banco_conta)');
ADOQuery1.Parameters.ParamByName('nome').Value := edt_nome.Text;
ADOQuery1.Parameters.ParamByName('sexo').Value := cbox_sexo.Items[cbox_sexo.ItemIndex];
ADOQuery1.Parameters.ParamByName('loc_nasc').Value := edt_cidnasc.Text;
ADOQuery1.Parameters.ParamByName('uf_nasc').Value := cbox_ufnasc.Items[cbox_ufnasc.ItemIndex];
ADOQuery1.Parameters.ParamByName('naturalidade').Value := edt_naturalidade.Text;
ADOQuery1.Parameters.ParamByName('cpf').Value := edt_cpf.Text;
ADOQuery1.Parameters.ParamByName('rg').Value := edt_rg.Text;
ADOQuery1.Parameters.ParamByName('ncart_trabalho').Value := edt_numcart_trabalho.Text;
ADOQuery1.Parameters.ParamByName('scart_trabalho').Value := edt_seriecart_trabalho.Text;
ADOQuery1.Parameters.ParamByName('ufcart_trabalho').Value := cb_ufcart_trabalho.Items[cb_ufcart_trabalho.ItemIndex];
ADOQuery1.Parameters.ParamByName('pis').Value := edt_pis.Text;
ADOQuery1.Parameters.ParamByName('dt_nasc').Value := td_nasci.DateTime;
ADOQuery1.Parameters.ParamByName('est_civil').Value := cbox_estcivil.Items[cbox_estcivil.ItemIndex];
ADOQuery1.Parameters.ParamByName('nome_conjugue').Value := edt_conjugue.Text;
ADOQuery1.Parameters.ParamByName('dt_admissao').Value := dt_admissao.Date;
ADOQuery1.Parameters.ParamByName('endereco').Value := edt_endereco.Text + ' Nº: '+ edt_num.Text;
ADOQuery1.Parameters.ParamByName('bairro').Value := edt_bairro.Text;
ADOQuery1.Parameters.ParamByName('cep').Value := edt_cep.Text;
ADOQuery1.Parameters.ParamByName('cidade').Value := edt_cidade.Text;
ADOQuery1.Parameters.ParamByName('uf').Value := cbox_uf.Items[cbox_uf.ItemIndex];
ADOQuery1.Parameters.ParamByName('complemento').Value := edt_comple.Text;
ADOQuery1.Parameters.ParamByName('tel_resid').Value := edt_telefone.Text;
ADOQuery1.Parameters.ParamByName('celular').Value := edt_celular.Text;
ADOQuery1.Parameters.ParamByName('email').Value := edt_email.Text;
ADOQuery1.Parameters.ParamByName('hr_entrada').Value := StrToTime(edt_htent.Text);
ADOQuery1.Parameters.ParamByName('hr_saida').Value := StrToTime(edt_htsaida.Text);
ADOQuery1.Parameters.ParamByName('ini_refeicao').Value := StrToTime(edt_hainicio.Text);
ADOQuery1.Parameters.ParamByName('fim_refeicao').Value := StrToTime(edt_hatermino.Text);
ADOQuery1.Parameters.ParamByName('setor').Value := cb_setor.Items[cb_setor.ItemIndex];
ADOQuery1.Parameters.ParamByName('funcao').Value := cb_funcao.Items[cb_funcao.ItemIndex];
ADOQuery1.Parameters.ParamByName('banco_nome').Value := cb_banco.Items[cb_banco.ItemIndex];
ADOQuery1.Parameters.ParamByName('banco_agencia').Value := edt_agencia.Text+ '-'+ edt_agenciadig.Text;
ADOQuery1.Parameters.ParamByName('banco_conta').Value := edt_conta.Text+ '-'+ edt_contadig.Text;
ADOQuery1.Parameters.ParamByName('situacao').Value := 'A';
ADOQuery1.Parameters.ParamByName('dt_cadastro').Value := Now;
if check_segunda.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_segunda').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_segunda').Value := 'N';
if check_terca.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_terca').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_terca').Value := 'N';
if check_quarta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_quarta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_quarta').Value := 'N';
if check_quinta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_quinta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_quinta').Value := 'N';
if check_sexta.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_sexta').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_sexta').Value := 'N';
if check_sabado.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_sabado').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_sabado').Value := 'N';
if check_domingo.Checked = True then
ADOQuery1.Parameters.ParamByName('dt_domingo').Value := 'S'
else
ADOQuery1.Parameters.ParamByName('dt_domingo').Value := 'N';
ADOQuery1.ExecSQL;
Cod_funcionario := AdoQuery1.FieldByName('id_func').AsInteger;
Application.MessageBox(Pchar('O codigo do usuario é '+IntToStr(cod_funcionario)+''),'PROGRAMÇÃO',MB_ICONEXCLAMATION);
frm_resumo_funcionario.ShowModal;
end;Deivid, agora fiquei sem entender você quer inserir dados ou resultar na Query o valor pesquisado?
Esse código eh do botão que grava o funcionário. Ele está funcionando corretamente. O que eu queria eh armazenar o id_func desse funcionário q eu acabei de gravar no banco.
GOSTEI 0
Douglas
13/01/2014
Deivid, você terá que fazer da seguinte forma abaixo e após o comando ExecSQL.
Desta forma você sempre pegará o último e maior código de funcionário que foi inserido no banco.
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT MAX(COD_FUNC) AS CODIGO FROM FUNCIONARIO');
ADOQuery1.Open;
Cod_Funcionario := ADOQuery1.FieldByName('codigo').AsInteger;
Desta forma você sempre pegará o último e maior código de funcionário que foi inserido no banco.
GOSTEI 0
Deivid Costa
13/01/2014
Deivid, você terá que fazer da seguinte forma abaixo e após o comando ExecSQL.
Desta forma você sempre pegará o último e maior código de funcionário que foi inserido no banco.
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT MAX(COD_FUNC) AS CODIGO FROM FUNCIONARIO');
ADOQuery1.Open;
Cod_Funcionario := ADOQuery1.FieldByName('codigo').AsInteger;
Desta forma você sempre pegará o último e maior código de funcionário que foi inserido no banco.
Douglas Claudio, o codigo funcionou corretamente.
Muito Obrigado pela ajuda amigo.
GOSTEI 0
Douglas
13/01/2014
Deivid, você terá que fazer da seguinte forma abaixo e após o comando ExecSQL.
Desta forma você sempre pegará o último e maior código de funcionário que foi inserido no banco.
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT MAX(COD_FUNC) AS CODIGO FROM FUNCIONARIO');
ADOQuery1.Open;
Cod_Funcionario := ADOQuery1.FieldByName('codigo').AsInteger;
Desta forma você sempre pegará o último e maior código de funcionário que foi inserido no banco.
Douglas Claudio, o codigo funcionou corretamente.
Muito Obrigado pela ajuda amigo.
Que bom meu amigo. Sempre que precisar estarei por aqui!
GOSTEI 0
Douglas
13/01/2014
Podem encerrar o tópico.
GOSTEI 0