Table of Contents
MapTools → Table
Design
From Theory to Practice
Module Summary
Final Remarks
Algumas operações problemáticas:
- Dado uma chave rolar a tabela para a linha correspondente:
Neste caso é preciso manter um mapeamento de todos os elemento do conjunto externo com as suas respectivas posições nas linhas da tabela. - Ordenar as linhas de uma tabela por um conjunto de colunas:
A não ser que o dataset esteja em memória, é preferível refazer a consulta original na fonte de dados. Isso obriga que a fonte de dados seja capaz de responder consultas.
Outras operações desejáveis:
- Desenhar geometrias nas tabelas
- Possibilitar a apresentação de hover geométrico
Algumas considerações:
- AbstractTable tem praticamente todos os métodos da classe DataSet, exceto a questão de chave primária e a possibilidade de ter as colunas lógicas desacopladas da real/implementação.
- Parece que parte de chave primária poderia ser migrada p/ o DataAccess com o conceito de ObjectId, usando abstractData.
- Já a questão do controle das colunas lógicas poderiam estar no modelo Qt pois não devem existir derivações no nível do MapTools.
- A questão de ir p/ uma linha específica da tabela a partir de uma chave deve ser considerada por uma segunda implementação do modelo Qt para não consumir recursos de forma desnecessária.
Testes:
- AbstractTable:
- testar o moveColumn com várias combinações.