Gráficos com bancos de dados: DB Course

Na maioria dos aplicativos de banco de dados modernos, algum tipo de representação gráfica de dados é preferível ou até obrigatório. Para tais fins, Delphi inclui vários componentes com reconhecimento de dados: DBImage, DBChart, DecisionChart, etc. O DBImage é uma extensão para um componente de imagem que exibe uma imagem dentro de um campo BLOB. Capítulo 3 deste curso de banco de dados discutimos a exibição de imagens (BMP, JPEG, etc.) dentro de um banco de dados do Access com ADO e Delphi. O DBChart é uma versão gráfica com reconhecimento de dados do componente TChart.

Nosso objetivo neste capítulo é apresentar o TDBChart, mostrando como integrar alguns gráficos básicos em seu aplicativo baseado em Delphi ADO.

TeeChart

O componente DBChart é uma ferramenta poderosa para criar tabelas e gráficos de banco de dados. Não é apenas poderoso, mas também complexo. Como não exploraremos todas as suas propriedades e métodos, você precisará experimentá-lo para descobrir tudo o que é capaz e como ele pode melhor atender às suas necessidades. Usando o DBChart com o

instagram viewer
TeeChart mecanismo de criação de gráficos, você pode criar rapidamente gráficos diretamente para os dados nos conjuntos de dados sem exigir nenhum código. TDBChart se conecta a qualquer Delphi DataSource. Os conjuntos de registros ADO são suportados nativamente. Nenhum código adicional é necessário - ou apenas um pouco, como você verá. O editor de gráficos o guiará pelas etapas de conexão com seus dados - você nem precisa ir ao Inspetor de objetos.

As bibliotecas de tempo de execução TeeChart estão incluídas como parte das versões Delphi Professional e Enterprise. O TChart também é integrado ao QuickReport com um componente personalizado do TChart na paleta QuickReport. O Delphi Enterprise inclui um controle DecisionChart na página Cubo de Decisão da paleta Component.

Preparando para o gráfico

Nossa tarefa será criar um formulário Delphi simples com um gráfico preenchido com valores de uma consulta ao banco de dados. Para acompanhar, crie um formulário Delphi da seguinte maneira:

1. Inicie um novo aplicativo Delphi - um formulário em branco é criado por padrão.

2. Coloque o próximo conjunto de componentes no formulário: ADOConnection, ADOQuery, DataSource, DBGrid e um DBChart.

3. Use o Inspetor de objetos para conectar o ADOQuery ao ADOConnection, DBGrid ao DataSource e ADOQuery.

4. Configure um link com nosso banco de dados demo (aboutdelphi.mdb) usando o ConnectionString do componente ADOConnection.

5. Selecione o componente ADOQuery e atribua a próxima sequência à propriedade SQL:

SELECIONE O TOP 5 cliente. Companhia,
SUM (orders.itemstotal) AS SumItems,
COUNT (orders.orderno) AS NumOrders
DO cliente, pedidos
ONDE customer.custno = orders.custno
GRUPO POR CLIENTE. Companhia
ORDER BY SUM (orders.itemstotal) DESC
Esta consulta usa duas tabelas: pedidos e cliente. Ambas as tabelas foram importadas do banco de dados DBDemos (BDE / Paradox) para nosso banco de dados demo (MS Access). Esta consulta resulta em um conjunto de registros com apenas 5 registros. O primeiro campo é o nome da empresa, o segundo (SumItems) é uma soma de todos os pedidos feitos pela empresa e o terceiro campo (NumOrders) representa o número de pedidos que foram feitos pela empresa. Observe que essas duas tabelas estão vinculadas em um relacionamento mestre-detalhe.
6. Crie uma lista persistente de campos do banco de dados. (Para chamar o Editor de campos, clique duas vezes no componente ADOQuery. Por padrão, a lista de campos está vazia. Clique em Adicionar para abrir uma caixa de diálogo listando os campos recuperados pela consulta (Empresa, NumOrders, SumItems). Por padrão, todos os campos são selecionados. Selecione OK.) Mesmo que você não precise de um conjunto persistente de campos para trabalhar com um componente DBChart - nós o criaremos agora. Os motivos serão explicados mais adiante.

7. Defina ADOQuery. Ativo para Verdadeiro no Inspetor de objetos para ver o conjunto resultante no tempo de design.

instagram story viewer