É possível gerar gráficos dinâmicos com informações resgatadas de um banco de dados.

No exemplo abaixo é gerado gráfico de acordo com os dados anuais, selecionado em um ListBox

Página Database01.asp

Esta página exibe um formulário para que possa ser selecionado o ano para gerar-se dinamicamente a imagem do gráfico

<html> <body> <h1>Integração com Base de Dados</h1> <p>Este exemplo cria um gráfico baseando-se nas informações passadas por um banco de dados</p>   <form action="<%=Request("SCRIPT_NAME")%>"> Selecione o ano da consulta <select name="year"> <option value="1990">1990 <option value="1991">1991 <option value="1992">1992 <option value="1993">1993 <option value="1994">1994 <option value="1995">1995 <option value="1996">1996 <option value="1997">1997 <option value="1998">1998 <option value="1999">1999 <option value="2000">2000 <option value="2001">2001 </select> <input type="submit" value="OK"> </form>   <% SelectedYear = Request("year") if SelectedYear = "" Then SelectedYear = 2001 end if %>   <SCRIPT> //make sure the select box displays the current selected year. document.forms[0].year.selectedIndex = <%=SelectedYear - 1990%>; </SCRIPT>   <img src="database02.asp?year=<%=SelectedYear%>">   </body> </html>

Página Database02.asp

Esta página gera a imagem do gráfico e faz a consulta no banco de dados

Atenção! – No caminho do banco de dados você deverá alterar a palavra login para seu login de FTP

<%@ language="vbscript" %> <% 'Cria o Objeto Chart Director Set cd = CreateObject("ChartDirector.API")   'armazena em uma variável o ano escolhido. Se for aberto inicialmente, o valor será em branco e ele adotará o valor 2001 como default SelectedYear = Request("year") if SelectedYear = "" Then SelectedYear = 2001   'String SQL que efetuará a consulta no banco de dados SQL = "Select Month(TimeStamp) - 1 As ArrayIndex, " & _ "Software, Hardware, Services " & _ "From Revenue Where Year(TimeStamp)=" & SelectedYear   'Conecta-se ao banco de dados, lê os dados da tabela e armazena-os dentro de um array Set rs = CreateObject("ADODB.RecordSet") Call rs.Open(SQL, "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=e:/home/login/dados/sample.mdb") Set dbTable = cd.DBTable(rs, "ArrayIndex", 12) rs.Close()   'Agora com os dados obtidos podemos inicir a construção de nosso gráfico   'Cria uma imagem no tamanho de 420 pixels x 240 pixels, with pale yellow '(0xffffc0) background and 2 pixel 3D border Set c = cd.XYChart(420, 240, &Hffffc0, &Hffffc0, 2)   'Ajusta área de exibição na posição (70, 50) no tamanho de 320 x 150 pixels. Call c.setPlotArea(70, 50, 320, 150, &Hffffff, &Hffffff, &Hc0c0c0, &Hc0c0c0)   'Adiciona um título ao gráfico Call c.addTitle("Locaweb - Estatisticas de " & SelectedYear, "timesbi.ttf" _ ).setBackground(&Hffff00)   'Adiciona uma caixa de legenda no topo da área de exibição do gráfico Call c.addLegend(70, 30, 0, "", 8).setBackground(cd.Transparent)   'Cria o gráfico com os dados resgatados anteriormente Set layer = c.addBarLayer2(cd.Stack) Call layer.addDataSet(dbTable.getCol(1), -1, "Locaweb") Call layer.addDataSet(dbTable.getCol(2), -1, "Email Locaweb") Call layer.addDataSet(dbTable.getCol(3), -1, "Locavoz") Call layer.setBorderColor(cd.Transparent, 1)   'ajusta os rótulos do eixo x. Neste exemplo, eles vão de janeiro a dezembro labels = Array("Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", _ "Set", "Out", "Nov", "Dez") Call c.xAxis().setLabels(labels)   'Ajusta largura do eixo x para 2 pixels Call c.xAxis().setWidth(2)   'Ajusta o título do eixo Y Call c.yAxis().setTitle("Crescimento")   'Ajusta largura do eixo Y para 2 pixels Call c.yAxis().setWidth(2)   'Exibe o gráfico no browser Response.ContentType = "image/png" Response.BinaryWrite c.makeChart2(cd.PNG)   'Fecha e destrói o objeto rs rs.close Set rs = nothing   'Destrói o objeto c Set c = nothing   'Destrói o Objeto ChartDirector Set cd = nothing %>

Clique aqui para fazer o download do Banco de Dados Access utilizado neste exemplo.

Referências

Recursos Sobre ASP na Internet

Há ainda muita informação na Internet sobre ASP. Além da Microsoft, visite também:

http://www.advsofteng.com/

Veja também


No momento, não há conteúdo nesta página Você pode pesquisar pelo título desta página em outras páginas, ou buscar por registros relacionados . Note que, no entanto, você não tem permissão para criar esta página.

Era isso que estava procurando?
SimNão

Demo Title

Demo Description


Introducing your First Popup.
Customize text and design to perfectly suit your needs and preferences.

Isso vai fechar em 20 segundos

Categorias

[menu name="categorias"]

Isso vai fechar em 20 segundos