| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
jessica07 Novato

Registrado: Sexta-Feira, 2 de Janeiro de 2015 Mensagens: 48
|
Enviada: Sex Jan 02, 2015 11:54 am Assunto: [RESOLVIDO] Puxando um dado na pesquisa para o form cadastro |
|
|
Bom dia pessoal,
Estou com um problema para puxar um dado na pesquisa para o formulario de cadastro. Estou codificando a tela onde eu pesquiso um registro no form de pesquisa e retorno para o form de cadastro.
Criei uma variavel publica no form Consulta Clientes com o nome retornaCodigo, que seria o resultado da minha pesquisa na minha Query.
Na construção do código, no botao Pesquisar do meu form de cadastro, esta o seguinte codigo:
procedure TfrmClientes.btnLocalizaClick(Sender: TObject);
begin
frmConsultaClientes.ShowModal;
if frmConsultaClientes.retornaCodigo <> 0 then
begin
DBE_Codigo......
Porem ai esta o erro.. quando eu coloco o nome do meu componente DBE_Codigo. e aperto enter, nao aparece a opcao VALUE para eu completar o meu codigo...
Vi uma video aula onde o codigo correto seria:
if frmConsultaClientes.retornaCodigo <> 0 then
begin
DBE_Codigo.Value:= frmConsultaClientes.retornaCodigo;
E se eu tento escrever o codigo, salvo e compilo, aparece o seguinte erro no rodapé do Delphi:
[Error] uClientes.pas(168): Undeclared identifier: 'Value'
[Fatal Error] GerenRep.dpr(13): Could not compile used unit 'uClientes.pas'
Gostaria muito da ajuda de vocês.
Desde já agradeço.
Abraços.
Editado pela última vez por jessica07 em Sex Jan 02, 2015 3:35 pm, num total de 1 vez |
|
| Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Sex Jan 02, 2015 12:36 pm Assunto: |
|
|
O que é DBE_Codigo ? Um DBEdit, uma query, um campo ? _________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
| Voltar ao Topo |
|
 |
jessica07 Novato

Registrado: Sexta-Feira, 2 de Janeiro de 2015 Mensagens: 48
|
Enviada: Sex Jan 02, 2015 12:41 pm Assunto: |
|
|
| É o nome do meu componente DBedit no meu formulario de cadastro.. |
|
| Voltar ao Topo |
|
 |
jessica07 Novato

Registrado: Sexta-Feira, 2 de Janeiro de 2015 Mensagens: 48
|
Enviada: Sex Jan 02, 2015 12:43 pm Assunto: |
|
|
| Qual seria o melhor procedimento para eu retornar uma pesquisa para o formulario de cadastro? |
|
| Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Sex Jan 02, 2015 12:45 pm Assunto: |
|
|
Troque:
| Código: | | DBE_Codigo.Value:= frmConsultaClientes.retornaCodigo; |
Por:
| Código: | | DBE_Codigo.Text:= frmConsultaClientes.retornaCodigo; |
_________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
| Voltar ao Topo |
|
 |
jessica07 Novato

Registrado: Sexta-Feira, 2 de Janeiro de 2015 Mensagens: 48
|
Enviada: Sex Jan 02, 2015 12:48 pm Assunto: |
|
|
| Já tentei fazer dessa maneira, ai aparece um erro falando que os tipos nao compativeis, pois minha variavel é do tipo inteiro. |
|
| Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Sex Jan 02, 2015 12:56 pm Assunto: |
|
|
Neste caso você deve converter o resultado da variável para String com o comando IntToStr.
| Código: | | DBE_Codigo.Text:= IntToStr(frmConsultaClientes.retornaCodigo); |
Mas, o correto não é passar o valor para o DBEdit e sim para o campo da tabela ligado ao DBEdit.
Exemplo:
| Código: | | Query1.FieldByName('Codigo').Value:= frmConsultaClientes.retornaCodigo; |
Sendo que Query1 = Nome da Query ligado ao DBEdit e Codigo = nome do campo ligado ao DBEdit. _________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
| Voltar ao Topo |
|
 |
jessica07 Novato

Registrado: Sexta-Feira, 2 de Janeiro de 2015 Mensagens: 48
|
Enviada: Sex Jan 02, 2015 1:13 pm Assunto: |
|
|
Opa, deu certo
Porem esta puxando apenas o codigo, os outros dados do cliente nao aparece, o que aparece é o codigo no qual eu pesquisei e os outros dados, como nome, endereço entre outros, aparece os dados do meu primeiro cadastro. Tem alguma maneira de resolver isso? |
|
| Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Sex Jan 02, 2015 3:17 pm Assunto: |
|
|
Duas opções:
- (Mais trabalhoso) Você pode seguir o mesmo exemplo que você fez com sucesso do código com os outros campos. Criando variáveis e atribuindo a cada campo.
- (Mais simples) Se você utilizar a mesma query do formulario de consulta para o formulário de cadastro. Assim os DBEdits serão preenchidos automaticamente. _________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
| Voltar ao Topo |
|
 |
jessica07 Novato

Registrado: Sexta-Feira, 2 de Janeiro de 2015 Mensagens: 48
|
Enviada: Sex Jan 02, 2015 3:28 pm Assunto: |
|
|
Funcionoou!
Muuito obrigada  |
|
| Voltar ao Topo |
|
 |
|