Obter informações em Consulta DbGrid
Boa Noite,
BD: Firebird
Componentes : Zeos (Query, UpdateSQL, Data Source)
Delphi 2010
Usando Data Module
Estou com um aplicação parada por causa desta duvida.
Estou desenvolvendo uma aplicação onde dentro do formulario de cadastro do Funcionario tem um campo cargo, por exemplo, que deve pegar informações da tabela cargo criada.
A ideia inicial seria colocar um botão e um DBText, onde ao clicar no botao ele abriria outro form com um campo para consulta e um dgbrid. ao consulta, localizar e selecionar no dbgrid, clicando no botao fecharia o form de consulta e o DBText receberia a informação no caso o cargo selecionado.
P.S.: É possivel um DBText funcionar desta forma?
Desde ja agradeço a ajuda na solução desta duvida
BD: Firebird
Componentes : Zeos (Query, UpdateSQL, Data Source)
Delphi 2010
Usando Data Module
Estou com um aplicação parada por causa desta duvida.
Estou desenvolvendo uma aplicação onde dentro do formulario de cadastro do Funcionario tem um campo cargo, por exemplo, que deve pegar informações da tabela cargo criada.
A ideia inicial seria colocar um botão e um DBText, onde ao clicar no botao ele abriria outro form com um campo para consulta e um dgbrid. ao consulta, localizar e selecionar no dbgrid, clicando no botao fecharia o form de consulta e o DBText receberia a informação no caso o cargo selecionado.
P.S.: É possivel um DBText funcionar desta forma?
Desde ja agradeço a ajuda na solução desta duvida
Flavio Silva
Curtidas 0
Respostas
William
29/01/2013
Colega vc pode carregar esses cargos em um TCombobox ou TDBLookupComboBox gera menos trabalho.
Mas também pode usar um outro form para consultar os cargos.
Mas também pode usar um outro form para consultar os cargos.
GOSTEI 0
Flavio Silva
29/01/2013
Bom dia wllfl,
É dessa forma com você falou o meu sistema.
Dentro do form Funcionario existe um buttom que ao ser clicado abrirá uma janela com um dgbrid contendo todos os cargo cadastrados, e um DBText que receberia o resultado desta consulta.
no entanto, o que busco é se existe a possibilidade deste DbText exibir, por exemplo, o cargo que foi selecionado na janela de consulta e como fazer.
Quando ao Combobox e DBlookupcombobox eu só queria usa-lo com uma alternativa se o mesmo DBText nao puder exibir desta forma.
Obrigado.
É dessa forma com você falou o meu sistema.
Dentro do form Funcionario existe um buttom que ao ser clicado abrirá uma janela com um dgbrid contendo todos os cargo cadastrados, e um DBText que receberia o resultado desta consulta.
no entanto, o que busco é se existe a possibilidade deste DbText exibir, por exemplo, o cargo que foi selecionado na janela de consulta e como fazer.
Quando ao Combobox e DBlookupcombobox eu só queria usa-lo com uma alternativa se o mesmo DBText nao puder exibir desta forma.
Obrigado.
GOSTEI 0
William
29/01/2013
Bom, então vamos fazer dessa forma usando o form:
No frmCadastro vc coloca um botão chamando o frmPesquisa, pode ser:
Vc terá que passar valores de um form para o outro, sendo assim vc seleciona o cargo desejado e no botão do frmPesquisa vc codifica algo parecido com isso:
Basicamente é essa a idéia, usei nomes de campos e componentes aleatórios vc adapata para a sua necessidade.
Qualquer dúvida posta aí novamente...
No frmCadastro vc coloca um botão chamando o frmPesquisa, pode ser:
frmPesquisa = TFrmPesquisa.Create(nil); frmPesquisa.showModal;
Vc terá que passar valores de um form para o outro, sendo assim vc seleciona o cargo desejado e no botão do frmPesquisa vc codifica algo parecido com isso:
frmCadastro.DBEdit.text = ZQueryConsulta.fieldByName('cargo').asString; ou ZQueryCadastro.fieldByName('cargo').asString; = ZQueryConsulta.fieldByName('cargo').asString; frmPesquisa.Close;
Basicamente é essa a idéia, usei nomes de campos e componentes aleatórios vc adapata para a sua necessidade.
Qualquer dúvida posta aí novamente...
GOSTEI 0
Flavio Silva
29/01/2013
Muito Obrigado deu Certo....
GOSTEI 0
Flavio Silva
29/01/2013
Bom realmente esta funcionando e exibindo a informação no formulario, porem percebi uma coisa mesmo eu clicando no form de consulta no cargo que preciso, porem ele só exibi no cadastro 1 que é o gerente. posso clicar no 300, mas só exibi o numero 1
GOSTEI 0
William
29/01/2013
Vc seleciona um cargo no DBGrid do frmConsulta e no DBText fo frmCadastro é preenchido com outro cargo?
GOSTEI 0
Flavio Silva
29/01/2013
Vc seleciona um cargo no DBGrid do frmConsulta e no DBText fo frmCadastro é preenchido com outro cargo?
isso!
tenho atualmente 4 cargo cadastrados na tabela cargo.
Independente de qualquer um que eu selecione e clique no botao, insere o codigo 1 que é gerente.
GOSTEI 0
William
29/01/2013
A sua tabela do frmCadastro está em modo de edição?
Como está trabalhando com componente ligado direto ao DataSet?
Como está trabalhando com componente ligado direto ao DataSet?
GOSTEI 0
Flavio Silva
29/01/2013
A sua tabela do frmCadastro está em modo de edição?
Como está trabalhando com componente ligado direto ao DataSet?
Como está trabalhando com componente ligado direto ao DataSet?
A forma como estou trabalhando, sempre que vou testar o campo cargo, clico no navigator como se fosse inserir um novo cadastro.
Quando ao componentes estou usando o ZEOS
TZConnection
Assim estou usando o TZQuery > TZUpdateSQL > DataSource
no form Consulta coloquei um TZQuery para Consulta, porem, nele só tem o SQL da seguinte forma "SELECT * FROM CARGO"
GOSTEI 0
William
29/01/2013
Flavio o ponto chave é esse componente TZQuery do frmConsulta, mesmo ele contendo apenas uma instrução SQL simples.
É desse dataset q vc vai pegar o valor q será carregado no DBEdit, se o nome dele é TZQuery então quando vc selecionar um registro no DBGrid o valor será refletido para propriedade fieldByName:
Teste colocando esse código no evento OnClick do DBGrid:
Clique no registro q vc quiser no DBGrid, deverá ser exibido uma mensagem com valor do campo cargo.
É desse dataset q vc vai pegar o valor q será carregado no DBEdit, se o nome dele é TZQuery então quando vc selecionar um registro no DBGrid o valor será refletido para propriedade fieldByName:
TZQuery.FieldByName('cargo').AsString
Teste colocando esse código no evento OnClick do DBGrid:
ShowMessage('Valor do campo cargo: ' + TZQuery.FieldByName('cargo').AsString);
Clique no registro q vc quiser no DBGrid, deverá ser exibido uma mensagem com valor do campo cargo.
GOSTEI 0
Flavio Silva
29/01/2013
Ok. A partir da orientação que voce me passou ja da para me virar aqui.
Obrigado
Obrigado
GOSTEI 0