Table of Contents
Qt → Widgets → Query Builder
O componente para criação de Query foi desenvolvido utilizando um conjunto de interfaces de modo a permitir sua reutilização e facilitar em sua manutenção. Um wizard utilizando esses componentes individuais foi criado para auxiliar neste processo.
O resultado final deste componente é um objeto do tipo te::da::Select. Mais informações no módulo de query.
Wizard Pages
Neste tópico serão detalhadas as interfaces utilizadas no processo de construção da consulta.
Página 1 Escolha dos data sets → Cláusula FROM .
Esta página permite ao usuário escolher quais data sets farão parte de sua consulta, a cada data set selecionado um “alias” pode ser associado. O usuário deve selecionar ao menos um data set para dar continuidade ao processo.
Página 2 Escolha dos atributos → Cláusula FIELDS .
Esta página lista todos os campos de todos os data sets selecionados pelo usuário no passo anterior. O usuário deve selecionar ao menos um atributo para dar continuidade ao processo.
Página 3 Definição da restrição da consulta - Cláusula WHERE .
Neste passo é possivel definir uma ou mais restrições para sua consulta.
Os operadores disponíveis varia em relação ao Data Source selecionado, listando apenas os operadores suportados, o mesmo ocorre com os conectores. Este passo é opcional.
Página 4 Definição de agrupamento - Cláusula GROUP BY .
Permite a escolha de atributos para o agrupamento do resultado da consulta. Este passo é opcional.
Página 5 - Definição de ordenação - Cláusula ORDER BY .
Permite a escolha de atributos e a forma de ordenação desejada. Este passo é opcional.
Query Layer Builder Wizard
O conceito de Query Layer Builder é permitir através da criação de uma consulta a algum data source que este resultado seja materializado como um layer, permitindo ao usuário poder visualizar e interagir com o resultado da consulta.
O wizard para este processo é definido pelos seguintes passos.
Página 1 Escolha do data source - datasourceselector.
Página 2 Escolha dos data sets → Cláusula FROM .
Página 3 Escolha dos atributos → Cláusula FIELDS .
Página 4 Definição da restrição da consulta - Cláusula WHERE .
Página 5 Definição de agrupamento - Cláusula GROUP BY .
Página 6 - Definição de ordenação - Cláusula ORDER BY .
Página 7 - TODO → Definição de um componente para o usuario definir o nome do data set a ser criando e outro metadados necessários.
Final Remarks
- Deve have uma GUI que possibilite apenas exprimir uma consulta textual → sem wizard → no idioma do driver → pode ser até uma nova entrada chamada Native Query.