
10/06/2008, 13:46
|
 | Colaborador | | Fecha de Ingreso: febrero-2007 Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses Puntos: 88 | |
Respuesta: Problema con ASP, XML y FusionCharts Free hey Omega
ya viste los ejemplos que trae el ZIP de FreeChart.... uno de ellos es directo desde la base de datos
Ejemplo desde BD
Default.asp
Código:
<%@ Language=VBScript %>
<HTML>
<HEAD>
<TITLE>
FusionCharts Free - Ejemplo de URL y Base de Datos
</TITLE>
<%
'Necesitas incluir el archivo de Jscript, si intentas utilizar Javascript
'Utilizando Javascript, evitas el mensaje "Click para activar"
'de internet explorer de bloqueo
'Cuando realizas tu propia grafica, asegurate de la direccion virtual correcta del archivo
'JS, asi evitaras errores
%>
<SCRIPT LANGUAGE="Javascript" SRC="../../FusionCharts/FusionCharts.js"></SCRIPT>
<style type="text/css">
<!--
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}
.text{
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}
-->
</style>
</HEAD>
<%
'Incluiremos FusionCharts.asp, el cual contiene funciones que
'ayudara para incorporar la grafica facilmente
%>
<!-- #INCLUDE FILE="../Includes/FusionCharts.asp" -->
<BODY>
<CENTER>
<h2><a href="http://www.fusioncharts.com" target="_blank">FusionCharts Free</a> - dataURL and Database</h2>
<%
'Variable que contendra el querysting de datos
Dim strDataURL
'La pagina ASP contenida en piedata.asp; interactua con la base de datos,
'convirtiendo los datos en la manera apropiada de XML y finalmente
'delega el documento XML para la grafica
strDataURL = "PieData.asp"
'Creando la grafica - Pastel de 3D con Datos de querystring como strDataURL
Call renderChart("../../FusionCharts/FCF_Pie3D.swf", strDataURL, "", "FactorySum", 650, 450)
%>
<BR><BR>
<a href='../NoChart.html' target="_blank">No puedes mirar la grafica mostrada?</a>
</CENTER>
</BODY>
</HTML>
PieData.asp
Código:
<%@ Language=VBScript %>
<!-- #INCLUDE FILE="../Includes/DBConn.asp" -->
<%
'Esta pagina genera datos en XML para la Grafica de pastel, contenida en Default.asp
'Para la sencilles de uso, usamos la base de datos en acces provista en la Carpeta DB
'../DB/FactoryDB.mdb. Solo contiene 2 tablas, unidas por una relacion
'Inicializacion de objetos de Base de datos
Dim oRs, oRs2, strQuery
'Variable que contendra el XML resultante
Dim strXML
'creacion del Recordset que traera los datos
Set oRs = Server.CreateObject("ADODB.Recordset")
'Generando los elementos del grafico "LOS DATOS XML"
strXML = "<graph caption='Factory Output report' subCaption='By Quantity' decimalPrecision='0' showNames='1' numberSuffix=' Units' pieSliceDepth='30' formatNumberScale='0'>"
'interactiando en los registro de fabrica
strQuery = "select * from Factory_Master"
Set oRs = oConn.Execute(strQuery)
While Not oRs.Eof
'Creando el segundo recordset para los detalles por fabrica
Set oRs2 = Server.CreateObject("ADODB.Recordset")
strQuery = "select sum(Quantity) as TotOutput from Factory_Output where FactoryId=" & ors("FactoryId")
Set oRs2 = oConn.Execute(strQuery)
'Generando los "child objetcs" del XML.... CADA BARRA o PEDAZO de la grafica
'<set name='..' value='..'/>
strXML = strXML & "<set name='" & ors("FactoryName") & "' value='" & ors2("TotOutput") & "' />"
'Close recordset
Set oRs2 = Nothing
oRs.MoveNext
Wend
'finalmente, cerramos el elemento <graph>
strXML = strXML & "</graph>"
Set oRs = nothing
'Esta es la parte importante, seteamos que tipo de datos mandara la pagina
'en este caso TEXT/XML <---- lo que usa el elemento para la creacion
Response.ContentType = "text/xml"
'Solo escribimos el resultado
'NOTA, ESTA PAGINA NO CONTIENE NINGUN ELEMENTO DE HTML
Response.Write(strXML)
%>
La ponemos aki, asi cualquiera que intente lo mismo, podra ver como es la formacion de dicha grafica con el ejemplo proporcionado por la misma empreza, asi evitamos atormentarnos con crear el XML, logicamente para aquellos que saben, no existira ningun problema
__________________ "Eres parte del problema, parte de la solucion o parte del paisaje" Un Saludo desde Desierto de Altar, Sonora, MX. Shiryu_libra |