Session D-SHOW

Internetprogrammierung mit Coldfusion

Michael Lackner


Cold Fusion

Cold Fusion ist ein Web Application Server, der mit ASP oder auch AFP zu vergleichen ist. Cold Fusion ist in den USA sehr verbreitet, wird mittlerweile aber auch in Deutschland verstärkt eingesetzt. Unter Windows 95/98 läuft Cold Fusion als Task/Exe im Hintergrund(CFSERVER.EXE), während es unter NT als Dienst installiert wird. Cold Fusion ist für Windows 95/98/NT sowie für SUN Solaris verfügbar. Cold Fusion erweitert HTML um CFML (Cold Fusion Markup Language), einer von der Syntax an HTML angepaßten Sprache, die sehr schnell zu erlernen ist.

Die Features von Cold Fusion bzw. CFML

Erweiterbarkeit

Programmierung:

Sonstige Unterstützung

DieListe der Cold Fusion Features ist bei weitem nicht vollständig und soll nur einen Überblick über die Möglichkeiten beim Einsatz dieses Tools geben.

Vorgehensweisen:

Da die Gestaltung von aufwendigen Internetseiten mit einen puren HTML-Editor sehr mühsam werden kann, empfiehlt sich der Einsatz eines Layout-Tools wie z.B. Frontpage oder Macromedia Dreamweaver. Dreamweaver erzeugt für ein WYSIWYG-Tool einen sehr sauberen HTML-Code und hat ein Coldfusion-Interface, daß es ermöglicht, Coldfusion Objekte (CFML-Tags) zur Desginzeit einzufügen. Als reine Entwicklungsumgebung kann man durchaus mit Windows 95/98 und dem Personal Web Server arbeiten, das Testen sollte aber auf jeden Fall in eine Real-Life-Umgebung stattfinden.

Applikationen im Web mit Coldfusion:

Internetreports mit Crystal Reports: der Crystal Web Report Server

Crystal Reports ist wohl der am weitesten verbreitete Third-Party-Reportgenerator. In VFP läßt er sich als ActiveX-Steuerelement, als OLE-Server oder direkt über die DLL´s einbinden.

Einbindung in VFP als OCX:

with thisform.crw1
   .ReportFileName = getfile()
   .Destination = 0
   .Action= 1
endwith

Der Datenzugriff erfolgt über ODBC. Crystal Reports unterstützt nicht nur die Ausgabe nach HTML, sondern bietet auch verschiedene Möglichkeiten an, Reports in Internet zu verteilen und auszuführen.

Neben der Unterstützung durch Cold Fusion wird mit Crystal Reports Professional und Crystal Info der Crystal Web Report Server mit ausgeliefert. Dieser ermöglicht es, Reports über das Internet auszuführen. Dabei wird der Report als URL angesprochen

http://www.MyWebServer/Reports/Report.rpt?parameter1={customer.sales}>10000

Der so aufgerufene Report wird am Server ausgeführt und in einem der mitgelieferten Viewer im Browser dargestellt. Es gibt Viewer für ActiveX, Java und HTML.

Crystal Reports Automation Server

Nebendem Crystal Web Report Server, besteht die Möglichkeit, dieCrystal Report Engine als Automation Server Objekt z.B. aus einer ASP-Anwendung heraus anzusprechen und so Reports über das Internet auszuführen.

' CREATE THE APPLICATION OBJECT
<%
If Not IsObject ( session ("oApp")) Then
Set session ("oApp") = Server.CreateObject("Crystal.CRPE.Application")
End If
 
' CREATE THE REPORT OBJECT
Path = Request.ServerVariables("PATH_TRANSLATED")
While (Right(Path, 1) <> "\" And Len(Path) <> 0)
iLen = Len(Path) - 1
Path = Left(Path, iLen)
Wend
 
' OPEN THE REPORT
Set session("oRpt") = session("oApp").OpenReport(path & ReportName, 1)
' Turn off sepecific report error messages
Set oRptOptions = Session("oRpt").Options
oRptOptions.MorePrintEngineErrorMessages = 0
.....
%>

Literatur:

Adressen:

Über den Autor

Michael Lackner ist seit 1984 in den Bereichen Programmierung und Netzwerke tätig. Die ersten Kontakte mit FoxPro hatte er 1992 mit der Version 2.0. Der richtige Einstieg erfolgte mit Foxpro 2.5 für Windows. Trotzdem er sich auch mit anderen Programmiersprachen und Datenbanksystemen beschäftigt, bildet seitdem die Arbeit mit Visual Foxpro den Schwerpunkt seiner Tätigkeit.

Michael Lackner entwickelt als Projektleiter für die CAL Computer Aided Logistics GmbH in München internationale Logistikanwendungen . In diesem Zusammenhang sind auch einige Inter-/Intranetanwendungen entstanden, wie z.B. weltweite Frachtenverfolgung über das Internet. Sie erreichen ihn unter Michael.Lackner@s-l-s.com