[AccessD] Web based Project

Martin Reid mwp.reid at qub.ac.uk
Tue Oct 28 13:58:51 CST 2003


I would think if you can print one report there must be a way to print them
all. Interesting problem. Have several of them at the moment so this one is
at bottom of list. But it has to be doable.

You could also try the Office Web Componets which do a fair job of graphing.
And can do line charts. Need to install them on the web server but they do a
good job once there. Can use them to produce a GIF of the chart and then
embed that in the page.

The code is at the bottom of this email.


Martin

Code to create a line chart using ASP and the Office Web Components. Not my
code but I had it here.

<% Option Explicit %>
<HTML>
<HEAD>
<TITLE>Chart Example</TITLE>
<!-- #include virtual="/include/adovbs.inc" -->
<%
Function ExportChartToGIF(objCSpace, strAbsFilePath, strRelFilePath)
	Dim strFileName
	Randomize
	strFileName = Timer & Rnd & ".gif"
	objCSpace.ExportPicture strAbsFilePath & "\" & strFileName, "gif", 600, 350
	ExportChartToGIF = strRelFilePath & "/" & strFileName
End Function

Sub CleanUpGIF(GIFpath)
	Dim objFS
	Dim objFolder
	Dim gif
	set objFS = Server.CreateObject("Scripting.FileSystemObject")
	set objFolder = objFS.GetFolder(GIFpath)
	for each gif in objFolder.Files
		if instr(gif.Name, ".gif") > 0 and DateDiff("n", gif.DateLastModified,
now) > 10 then
			objFS.DeleteFile GIFpath & "\" & gif.Name, True
		end if
	next
	set objFolder = nothing
	set objFS = nothing
End Sub

%>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<%
dim objChartSpace
dim objChart
dim objSeries
dim objConn
dim objRS
dim c
dim series
dim strChartAbsPath
dim strChartRelPath
dim strChartFile
strChartAbsPath = Server.MapPath("/mypath/temp")
strChartRelPath = "temp"

set objChartSpace = Server.CreateObject("OWC.Chart")
set objChart = objChartSpace.Charts.Add()
set c = objChartSpace.Constants

objChart.Type = c.chChartTypeLineMarkers
objChart.HasLegend = True

set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "provider=sqloledb;data source=myserver;initial
catalog=testdb;user id=myuid;password=mypswd;"
set objRS = Server.CreateObject("ADODB.Recordset")
set objRS.ActiveConnection = objConn
objRS.CursorType = adOpenStatic
objRS.CursorLocation = adUseClient
objRS.Open "select * from testscore order by test"
set objChartSpace.DataSource = objRS
objChart.SetData c.chDimSeriesNames, 0, "student"
for each objSeries in objChart.SeriesCollection
	objSeries.SetData c.chDimCategories, 0, "test"
	objSeries.SetData c.chDimValues, 0, "score"
next

for each axis in objChart.Axes
    axis.HasTitle = True
    if axis.Type = c.chCategoryAxis then
        axis.Title.Caption = "Test"
    else
        axis.Title.Caption = "Score"
    end if
next

objChart.SeriesCollection(2).Interior.Color = "red"
objChart.SeriesCollection(2).Line.Color = "red"

strChartFile = ExportChartToGIF(objChartSpace, strChartAbsPath,
strChartRelPath)
Response.Write "<IMG SRC=""" & strChartFile & """>" & "<P>"
CleanUpGIF strChartAbsPath

objRS.Close
set objRS = nothing
set objConn = nothing
set objSeries = nothing
set objChart = nothing
set objChartSpace = nothing
%>
</BODY>
</HTML>



More information about the AccessD mailing list