[firebase-br] IBO - TIboQuery,

Carlos H. Cantu listas em warmboot.com.br
Ter Abr 14 12:13:10 -03 2020


OnPrepareSQL, como o próprio nome sugere, só é executado quando o SQL
é preparado. O prepare de uma query no IBO só acontece se ela não
estiver "preparada" e:

- você chama o prepare explicitamente ou
- quando a query é aberta pela primeira vez ou
- quando o SQL da query muda (forçando um novo prepare)

Eu faria diferente: ligaria as queries na forma de mestre-detalhe,
usando parâmetros e a propriedade Datasource dos Filhos ligada a
tabela Pai (exames). Com isso, sempre a query pai (exame) mudar, as
queries filhas serão automaticamente atualizadas.

Comparar IBO com Datasnap é como comparar laranja com banana. Um é
client/server puro, o outro é nTier. São lógicas totalmente diferentes
de desenvolvimento.

[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

GN> Bom dia pessoal,

GN> Não estou conseguindo respostas às minhas perguntas que enviei ao grupo de
GN> usuários do IBO. Receio ter ficado na mão ao adotar o componente.

GN> Enfim, na minha migração BDE para IBO, tenho uma consulta a dados que não
GN> estou conseguindo filtrar o resultado obtido sem que tenha que abrir o
GN> dataset novamente.
GN> Funciona assim: pesquiso pelas informações que desejo que são mostradas em
GN> 3 GRID. Todas as grids e seus datasets, tem um campo de nome EXAME.
GN> Ao lado da tela, monto uma lista contendo a coleção de exames de cada uma
GN> dessas grid.
GN> Assim, o usuário pode selecionar um dos exames ao lado e ter as GRID
GN> mostrando apenas registros com mesmo código de exame.
GN> Pra realizar esse "filro" estou usando o evento ONPREPARESQL
GN> Resumindo, não sei como realizar o filtro sem que tenha que reabrir o
GN> dataset. Estou usando TIboQuery.

GN> PS: ainda sobre grupo de usuários IBO, começo a pensar deveria ter migrado
GN> a aplicação para delphi berlin e optado pelo datasnap.

GN> *Gustavo Novaes *





Mais detalhes sobre a lista de discussão lista