Talvez vocês tenham visto o tutorial que eu coloquei aqui sobre como criar um Gráfico Dinâmico no Flash junto com o XML.
TUTORIAL
Para quem não viu da uma passada por lá e veja como faz é impressionante rsrsrs, ou baixe o projeto pronto aqui.
E para quem já viu aqui eu fiz um bônus muito legal, iremos utilizar o mesmo projeto porém iremos interagir com o Access usando ASP, agora sim o projeto se tornou viável.
OK galera mãos na massa
Abram o Access e criem um novo banco (Arquivo>Novo), salvem ele na mesma pasta do Grafico.fla, com o nome grafico.mdb
Criem uma nova tabela com dois campos:
Cod - Numeração automatica - Chave Primaria
Ponto - Texto
Salvem a tabela como grafico, e coloquem alguns valores para o campo pontos, esses serão os pontos em que a linha passará no gráfico.
Agora vamos ao ASP.
dados.asp
<%
Set con = Server.CreateObject("ADODB.connection") 'criamos a conexão
con.open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.MapPath("grafico.mdb")) 'conectamos com a base de dados grafico.mdb
Function Encode_UTF8(astr) 'função encode_utf8 converte o valor do campo para UTF8 e assim ficar compativel com o XML
Encode_UTF8 = Server.HTMLEncode(astr)
End Function
set grafico = server.CreateObject("ADODB.recordset") 'criamos o recordset grafico
grafico.open "SELECT * FROM grafico ORDER BY cod DESC",con 'conectamos com a tabela grafico puxando os dados de trás para frente
Response.ContentType="text/xml" 'definimos o formato da função response
response.Write "<?xml version='1.0' encoding='UTF-8'?>"+chr(10) 'iniciamos o XML
response.Write "<grafico>"+chr(10) 'abrimos o nó grafico
if not grafico.eof and not grafico.bof 'se houver registros na tabela grafico
while not grafico.eof 'enquanto houver registros ele imprime os dados na tela
response.Write "<n>" 'abre a tag n
response.Write Encode_UTF8(grafico("ponto")) 'insere o valor do campo no caso a posição do nosso ponto
response.Write "</n>"+chr(10) 'fecha o nó n
grafico.movenext 'move para o proximo registro e começa de novo enquanto houver informações
wend
end if
response.Write "</grafico>" 'fecha o nó grafico
%>
Perfeito agora abra o grafico.fla e substitua dados.xml por dados.asp e pronto.
O que fizemos aqui foi apenas substituir a fonte de dados por uma fonte dinâmica e assim facilitarmos a atualização dos registros, esse projeto pode ser facilmente adaptado para SQL Server, MySQL, etc.
Obrigado e até a próxima
E para quem já viu aqui eu fiz um bônus muito legal, iremos utilizar o mesmo projeto porém iremos interagir com o Access usando ASP, agora sim o projeto se tornou viável.
OK galera mãos na massa
Abram o Access e criem um novo banco (Arquivo>Novo), salvem ele na mesma pasta do Grafico.fla, com o nome grafico.mdb
Criem uma nova tabela com dois campos:
Cod - Numeração automatica - Chave Primaria
Ponto - Texto
Salvem a tabela como grafico, e coloquem alguns valores para o campo pontos, esses serão os pontos em que a linha passará no gráfico.
Agora vamos ao ASP.
dados.asp
<%
Set con = Server.CreateObject("ADODB.connection") 'criamos a conexão
con.open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.MapPath("grafico.mdb")) 'conectamos com a base de dados grafico.mdb
Function Encode_UTF8(astr) 'função encode_utf8 converte o valor do campo para UTF8 e assim ficar compativel com o XML
Encode_UTF8 = Server.HTMLEncode(astr)
End Function
set grafico = server.CreateObject("ADODB.recordset") 'criamos o recordset grafico
grafico.open "SELECT * FROM grafico ORDER BY cod DESC",con 'conectamos com a tabela grafico puxando os dados de trás para frente
Response.ContentType="text/xml" 'definimos o formato da função response
response.Write "<?xml version='1.0' encoding='UTF-8'?>"+chr(10) 'iniciamos o XML
response.Write "<grafico>"+chr(10) 'abrimos o nó grafico
if not grafico.eof and not grafico.bof 'se houver registros na tabela grafico
while not grafico.eof 'enquanto houver registros ele imprime os dados na tela
response.Write "<n>" 'abre a tag n
response.Write Encode_UTF8(grafico("ponto")) 'insere o valor do campo no caso a posição do nosso ponto
response.Write "</n>"+chr(10) 'fecha o nó n
grafico.movenext 'move para o proximo registro e começa de novo enquanto houver informações
wend
end if
response.Write "</grafico>" 'fecha o nó grafico
%>
Perfeito agora abra o grafico.fla e substitua dados.xml por dados.asp e pronto.
O que fizemos aqui foi apenas substituir a fonte de dados por uma fonte dinâmica e assim facilitarmos a atualização dos registros, esse projeto pode ser facilmente adaptado para SQL Server, MySQL, etc.
Obrigado e até a próxima
Nenhum comentário:
Postar um comentário