| Vamos ver como gerar gráficos no Crystal Reports. Eu
        sei, eu sei , tem o Excel que é muito melhor, tem o
        MSChart que também não lá estas coisas e tem também
        alguns OCX's de terceiros(First Impression) que
        são fantásticos. Mas tudo isto consome recursos , do
        seu bolso e do sistema , e ao distribuir sua aplicação
        você terá que contar que o usuário final tenha o
        produto instalado (no caso do Excel). Espero que com
        isto você se convença que valha a pena dar uma olhada
        nesta possibilidade usando o Crystal Reports. Não espere
        maravilhas , afinal estaremos usando a versão 4.6 que
        vem junto com o VB 5.0 , e o Crystal já está na versão
        6.0. Construiremos dois gráficos : um de pizza
        e outro de barras ( os mais usados ) ;
        usaremos como fonte de dados a tabela tblalunos
        do arquivo ESCOLA.MDB
        construido anteriormente.(Veja estrutura da tabela
        abaixo) Gráfico de PizzaCriando a Consulta SQLO gráfico de pizza deverá mostrar
        os alunos por período, onde cada fatia representará um
        período discriminado no gráfico pela cor e pela legenda
        aplicada. O pulo do gato neste caso é montar uma consulta que
        totalize os alunos por período e usar o resultado para
        montar o gráfico no Crystal. Vejamos como fazer isto. 
            Crie uma consulta no seu banco de dados com o
                nome de qry_periodo. Você pode
                usar o Access para fazer isto ou criar um
                consulta via código ( veja o artigo Criando Consultas
                Parametrizadas ). Vamos usar o Access pois é
                mais fácil: 
            
                Abra o Banco de Dados Escola.mdb no Access
                    (Usamos aqui o Access 7.0 ) e selecione a aba
                    Consultas e a seguir clique
                    no botão Novo 
                Clique no botão OK e a
                    seguir , estando selecionada a tabela
                    tblalunos clique no botão adicionar
                    e a seguir no botão fecharA seguir no Menu Exibir
                    selecione a opção Nome das Tabelas
                    e a opção Totais; percorra
                    a tblalunos e clique duas
                    vezes sobre o campo período ; repita
                    a operação anterior clicando duas vezes
                    sobre o campo periodo.Finalmente na primeira coluna Período
                    , na linha Total deixe em Agrupar Por
                    e na segunda coluna Período na linha
                    Total selecione Contar.(Veja
                    Resultado Final na tabela Abaixo) 
                Se quiser aperfeiçoar o trabalho , na
                    segunda coluna, linha Campo, substitua o nome
                    periodo por: Numero de
                    Alunos: periodo. Pronto
                    terminamos a consulta , salve-a com o nome QRY_PERIODO.Agora clique no Menu Exibir opção
                    modo SQL e teremos a instrução SQL
                    para a nossa consulta: 
                
                    | SELECT
                    tblalunos.periodo, Count(tblalunos.periodo)
                    AS [Numero de alunos] FROM tblalunos GROUP BY
                    tblalunos.periodo; |  Criando o Gráfico de Pizza
            Abra o Crystal Reports e selecione no
                menu as opções File->New ,
                a seguir clique no ícone Ghaph
                (fig 1.0) e na janela do Create Report
                Expert clique no ícone Data
                File.  
            
                |  |  
                | fig 1.0 |  | 
    
        | 
            Selecione o seu arquivo de dados , usaremos d:\escola\escola.mdb,
                e clique no botão ADD da janela
                Choose Database File . Após as tabelas
                e consultas serem incluidas clique no botão
                Done.(fig 2.0) 
            
                |  |  
                | fig 2.0 |  
                | Selecione a consulta criada - Qry_Periodo
                - e delete as demais tabelas e consultas.
                (fig3.0) | 
            
                |  |  
                | fig 3.0 |  
                |  |  
                | Na aba Fields inclua os
                campos da consulta (fig 4.0) |  
                |  |  
                | fig 4.0 |  
                |  |  
                | Na Aba Graph , Selecione o
                Tipo de Gráfico. (fig 5.0) |  
                |  |  
                | fig 5.0 |  
                |  |  
                | Na Aba Text, do Graph/Chart
                Expert , Digite o Titulo do Gráfico na caixa
                Title, e , informe o nome do eixo X e do eixo
                Y(fig 6.0) |  
                |  |  
                | fig 6.0 |  
                |  |  
                | Na options, clique nas opções Show Legend ,
                Show grid Lines e Show values on risers e a
                seguir em Graph Done.(fig 7.0) |  
                |  |  
                | fig 7.0 |  
                |  |  
                | Pronto podemos visualizar o relatório em
                tempo de desenho, faça os ajustes
                escondendo(hide) as secções de forma a obter o
                relatório da fig 8.0 |  
                |  |  
                | fig 8.0 |  
                |  |  
                | Vamos inserir uma formula que dará nome a
                cada período. Clique na opção
                Insert->Formula Field e digite a formula da
                figura 9.0 |  
                |  |  
                | fig 9.0 |  
                |  |  
                | Pronto, podemos executar o relatório ;
                devemos ter algo parecido com a fig 10 |  
                |  |  
                | fig 10 |  
                | Agora não esqueça de salvar o relatório ,
                que tal grafico.rpt, e preparar
                o código para imprimir o relatório no VB. Algo
                como: (Aqui chamamos o nosso controle Crystal
                Reports de CR1)  
                    
                        | cr1.WindowState = 2 'janela
                        maximizada cr1.WindowControlBox = True
                        'ativa os botões de controle da janela cr1.ReportFileName = App.Path &
                        "\gráfico.rpt" 'caminho nome
                        do relatorio cr1.Destination = 0 'imprime na tela cr1.Action = 1 'inicia impressao | Obs: 
                    Não esqueça de ao gerar o seu
                        relatório deixar ativa a opçao Verify
                        on Every Print do menu Database
                    desative opção Save Data with Closed
                        Report na opção Database->Set
                        Location... clique no botão Same
                        as Report.Você pode alterar as opções em tempo
                        de desenho do relatório clicando com o
                        botão direito do mouse sobre o gráfico. | E, por hoje é só... |