Fórum Registro da Tabela #237167

10/06/2004

0

Tenho 3 LookupCombobox e 1 Edit de uma tabela que faz pesquisas de acordo com a seleção.

Exemplo: Escolho uma Turma no 1º LookupCombobox, aparece no 2º LooKupCombobox as Matérias em relalção a essa Turma.
Escolho uma Matéria no 2º LookupCombobox, aparece no 3º LookupCombobox as Aulas de Matéria.
Escolho no 3º LookupCombobox uma Aula aparece a Data da Aula no edit.

Tá tudo funcionando!!!

O que quero é abrir a tabela e ir para o registro em relação as opções que escolhi para poder editar um 5º campo dessa tabela.

Value a força!!

JR.


Jrjoliv2003

Jrjoliv2003

Responder

Posts

10/06/2004

Edineidaniel

Jrjoliv2003

se vc ja tem um consulta e ta tudo funcionando um opção ...

é colocar um dbgrid ligar a suas consultas... ai vc vai poder ver os registro que ainda estaum disponíveis...

ai vc pode fazer no OnDblClick do grid... mandar os valores para os componente de edição, para editar os registros...

se naum foi isso q vc queria,... mande resposta que eu tento te ajudar denovo...

t+
Edinei


Responder

Gostei + 0

10/06/2004

Jrjoliv2003

Sua ajuda foi muito boa!!! Vou até utilizar em uma outra tela que tenho que programar. Mas o que eu queria é o seguinte:

Eu estou fazendo várias consultas com IBSQL em uma tabela IBTable. O problema que a Tabela não filtra os registros de acordo com a seleção.

Quando eu selecionar os 3 DBLookupCombobox mais o DBedit da data, um campo OBS receberá o texto e terá que gravar na tabela em relação aos seus registros.

E Isso eu não posso fazer em um DBGrid direto.

Valeu a força!!

JR.


Responder

Gostei + 0

10/06/2004

Edineidaniel

Jrjoliv2003,

ta certo entaum vamos tentar o seguinte...

voltando ao dbgrid.... ligue o dbgrid ao IBSQL....
ai vc vai poder ver os resultados dos filtros.... ta certo...

ai no on DblClick do grid... vc mando o código do registro selecionado para um variável qualquer ou campo oculto... (Ex: edit1.text)...
ai nesse mesmo evento vc coloca...
IBTable1.FindNearest([Edit1.Text]);

isso faz com q os dados da table sejam disponibilizados nos dbedits....

t+
Edinei


Responder

Gostei + 0

10/06/2004

Jrjoliv2003

Cara....

Para cada DBlookup eu tenho um IBSql!
São consultas fixas!!! A opção escolhida para no 1º Lookup serve de parâmentro para o segundo.

E IbTable não aceita FindNereast..

O q faço!!!

Valeu a força!!!

JR.


Responder

Gostei + 0

11/06/2004

Xanatos

Bom...acho que voce nao precisa ter um IbSql para cada loockup ! mas acho que voce pode fazer assim!!!

Ja que voce esta usando IBTable voce poderia a medida que o usuario for selecionando os BDLoockups voce poderia usar o filter

Quando selecionar no primeiro Loockup o filter da IBTable ia recebendo os valores

IBTable.filter = ´´Turma = +´+ IBSql1Turma.AsString;
IBTable.filter = ´´And Materia = +´+ IBSql1Materia.AsString;
IBTable.filter = ´´And Aula = +´+ IBSql1Aula.AsString;

e depois que tudo ta selecionado! IBTable.filtered:= true;
IBTable.Edit;


Que tal? espero ajudar!


Responder

Gostei + 0

11/06/2004

Jrjoliv2003

Obrigado xanatos!!!

Se eu configurar o Lookup direto na tabela ele mostrará alguns dados repetidos.

Vou te explicar melhor:
No 1º Lookup = Turma. (Direto da tabela, aparece o número da turma várias vezes).

Valeu a força!!!

JR.


Responder

Gostei + 0

11/06/2004

Xanatos

Bom mas e o esquema do Filter ? deu certo? vamo resolver esse negocio !!!

:lol:


Responder

Gostei + 0

11/06/2004

Jrjoliv2003

Cara, haha. Eu tô tão zonzo qu enão sei mais o q estou fazendo!!!

Vamos lá....

Me explica, sem querer se chato, essa linha

IBTable.filter = ´´Turma = +´+ IBSql1Turma.AsString;


Valeu a força!!!

JR.


Responder

Gostei + 0

11/06/2004

Xanatos

Bom! pelo que entendi voce quer editar o registro da tabela que contenha as informacoes filtradas pelos dbloockups! todos loockups pegam infos da mesma tabela?

Se pegar entao o ultimo loockup vai ter os campos necessarios para um UPDATE da tabela né?

Mas se os loockups nao pegam da mesma tabela!


jrjoliv2003:
Me explica, sem querer se chato, essa linha

IBTable.filter = ´´Turma = +´+ IBSql1Turma.AsString;

Bom estaria com essa linha montando uma filtragem na tabela que vai ser editada e essa é a atribuicao da turma a filtragem

que ficaria tipo no final:
IBTable.filter = ´Turma = A AND MATERIA = CALCULO AULA = 2´

Entendeu?


Responder

Gostei + 0

11/06/2004

Thoor Cobain

Sua ajuda foi muito boa!!! Vou até utilizar em uma outra tela que tenho que programar. Mas o que eu queria é o seguinte: Eu estou fazendo várias consultas com IBSQL em uma tabela IBTable. O problema que a Tabela não filtra os registros de acordo com a seleção. Quando eu selecionar os 3 DBLookupCombobox mais o DBedit da data, um campo OBS receberá o texto e terá que gravar na tabela em relação aos seus registros. E Isso eu não posso fazer em um DBGrid direto. Valeu a força!! JR.


Ligue a probriedade MASTERSOURCE da sua tabela no seu IBSQL e na propriedade MASTERFIELDS da tabela ligue as chaves principais. Desta forma a sua tabela ira atualizar de acord com o IBSQL


Responder

Gostei + 0

11/06/2004

Jrjoliv2003

Com isso eu posso abrir a tabela normalmente, e automaticamente ficará no registro que quero editar?

Eu tô te fazendo essa pergunta pq estou fazendo backup e o programa não está aberto.

Valeu a força!!!

JR.


Responder

Gostei + 0

11/06/2004

Xanatos

Ai que ta! por isso te perguntei se os loockups apontando para a mesma tabela! pois se for assim pode usar o esquema do master soure e linkar os treis campos com o IBSQl que vai funcionar na boa!!! e editar a vontade!

:!:


Responder

Gostei + 0

11/06/2004

Jrjoliv2003

Amigos xanatos e Thoor Cobain,

valeu mesmo!!!

Tudo certo!!!

Vou almoçar e Dormir um pouco!!! Graças a Deus! Não dormi por causa disso!!!

Valeu!!

JR.


Responder

Gostei + 0

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

Aceitar