MasterSource
Galera!!
Graças aos colaborados deste fórum, conseguir resolver um problemão na parte da manhã.
Resumindo o problema, a solução foi ligar uma tabela (IBTable) com a consulta (IBSQL) para que a consulta apontasse o registro encontrado na tabela. Tudo perfeito!!!
Bom. Fui fazer o mesmo em outra tela. Está funcionando. O problema é que a grid que mostra todos os dados da tabela, só me mostra o valor consultado. Gostaria de saber se tem como desativar e ativar este link em tempo de execução?
Tentei data.ibtturma.mastersource.enabled:=false; e não deu certo.
Valeu a força.
JR.
Graças aos colaborados deste fórum, conseguir resolver um problemão na parte da manhã.
Resumindo o problema, a solução foi ligar uma tabela (IBTable) com a consulta (IBSQL) para que a consulta apontasse o registro encontrado na tabela. Tudo perfeito!!!
Bom. Fui fazer o mesmo em outra tela. Está funcionando. O problema é que a grid que mostra todos os dados da tabela, só me mostra o valor consultado. Gostaria de saber se tem como desativar e ativar este link em tempo de execução?
Tentei data.ibtturma.mastersource.enabled:=false; e não deu certo.
Valeu a força.
JR.
Jrjoliv2003
Curtidas 0
Respostas
Xanatos
11/06/2004
Bom! por isso que te mostrei o exemplo usando o IBtable.Filter pois assim voce só filtraria a tabela na hora de editar!!! e depois filtered:= false e pronto!!! a tabela mostraria tudo!!!
O que voce poderia fazer é em vez de colocar o mastersource na ibtable, voce atualizaria usando a propria IBsql e daria um .refresh na ibtable! o que acha?
:idea:
O que voce poderia fazer é em vez de colocar o mastersource na ibtable, voce atualizaria usando a propria IBsql e daria um .refresh na ibtable! o que acha?
:idea:
GOSTEI 0
Jrjoliv2003
11/06/2004
Xanatos, tudo certo?
Cara...
Eu não consegui usar o Filter por isso não fiz!!!
E segunda parte que vc explicou (Refresh) não entendi.
Rapaz, são tantas dúvidas pq sou novato em Delphi. O q aprendi, aprendi sozinho ou com o fórum. A GALERA ajuda muito.
Valeu a força!!
JR.
Cara...
Eu não consegui usar o Filter por isso não fiz!!!
E segunda parte que vc explicou (Refresh) não entendi.
Rapaz, são tantas dúvidas pq sou novato em Delphi. O q aprendi, aprendi sozinho ou com o fórum. A GALERA ajuda muito.
Valeu a força!!
JR.
GOSTEI 0
Xanatos
11/06/2004
Bom o filter é uma filtragem que fica ativa se a propriedade filtered for true
e voce monte ela de maneira mais simples que sql, voce coloca o nome do campo = valor and campo2=valor ... assim! faça um teste simples ... coloca algum campo = alguma coisa no filter e abre tua tabela! pode ser util pra voce!
qto ao refresh seria se voce usasse o IBsql para atualizar o registro! em vez de usar a ibtable pois voce teria todos os parametros e seus valores e só usaria:
UPDATE TABLE SET OBS=:PAROBS WHERE TURMA=:TURMA AND MATERIA=:MATERIA AND AULA=:AULA;
daria um ExecQuery e depois dava um refresh na table!
:idea: espero que agora consiga!
e voce monte ela de maneira mais simples que sql, voce coloca o nome do campo = valor and campo2=valor ... assim! faça um teste simples ... coloca algum campo = alguma coisa no filter e abre tua tabela! pode ser util pra voce!
qto ao refresh seria se voce usasse o IBsql para atualizar o registro! em vez de usar a ibtable pois voce teria todos os parametros e seus valores e só usaria:
UPDATE TABLE SET OBS=:PAROBS WHERE TURMA=:TURMA AND MATERIA=:MATERIA AND AULA=:AULA;
daria um ExecQuery e depois dava um refresh na table!
:idea: espero que agora consiga!
GOSTEI 0
Jrjoliv2003
11/06/2004
Beleza!!! O Filter tá funcionando com um só. Se eu coloco outro parâmetro ele dá erro. Por favor, veja se tem alguma coisa errada no código:
data.IBTHis.Filter:=´HIS_TURMA = ´ + Quotedstr(dblookupcombobox2.Text) and ´HIS_Modulo = ´ + Quotedstr(dblookupcombobox1.Text);
Quotedstr eu peguei desse artigo:
Table1.Filter := ´Nome = ´´´+ Edit1.Text + ´´´´;
ou
Table1.Filter := ´Data = ´´´ + DateToStr(Date) + ´´´´;
Tente usar este:
Table1.Filter := ´Nome = ´ + QuotedStr(Edit1.Text);
ou
Table1.Filter := ´Data = ´ + QuotedStr(DateToStr(Date));
Valeu!!
JR.
data.IBTHis.Filter:=´HIS_TURMA = ´ + Quotedstr(dblookupcombobox2.Text) and ´HIS_Modulo = ´ + Quotedstr(dblookupcombobox1.Text);
Quotedstr eu peguei desse artigo:
Table1.Filter := ´Nome = ´´´+ Edit1.Text + ´´´´;
ou
Table1.Filter := ´Data = ´´´ + DateToStr(Date) + ´´´´;
Tente usar este:
Table1.Filter := ´Nome = ´ + QuotedStr(Edit1.Text);
ou
Table1.Filter := ´Data = ´ + QuotedStr(DateToStr(Date));
Valeu!!
JR.
GOSTEI 0
Jrjoliv2003
11/06/2004
Galera!! O código é esse!!!
Resolvidoooooooooooooooooooo!!!!!!!!!
data.IBTHis.Filter:=´HIS_TURMA = ´ + Quotedstr
(dblookupcombobox2.Text)+´ and HIS_Modulo = ´ + Quotedstr
(dblookupcombobox1.Text);
JR.
Resolvidoooooooooooooooooooo!!!!!!!!!
data.IBTHis.Filter:=´HIS_TURMA = ´ + Quotedstr
(dblookupcombobox2.Text)+´ and HIS_Modulo = ´ + Quotedstr
(dblookupcombobox1.Text);
JR.
GOSTEI 0