Und das geht natürlich auch: Berichte

20
Uwe Habermann [email protected] Venelina Jordanova [email protected] Und das geht natürlich auch: Berichte

description

Und das geht natürlich auch: Berichte. Venelina Jordanova [email protected]. Uwe Habermann [email protected]. Silverlight Printing API. Ähnlich Reportbehavior 90 in VFP Ganze Seite wird als Bild gedruckt Auflösung grundsätzlich 600 dpi Seitenbeschreibung in XAML. Silverlight Printing API. - PowerPoint PPT Presentation

Transcript of Und das geht natürlich auch: Berichte

Page 1: Und das geht natürlich auch: Berichte

Uwe [email protected]

Venelina [email protected]

Und das geht natürlich auch: Berichte

Page 2: Und das geht natürlich auch: Berichte

Silverlight Printing API

* Ähnlich Reportbehavior 90 in VFP

* Ganze Seite wird als Bild gedruckt

* Auflösung grundsätzlich 600 dpi

* Seitenbeschreibung in XAML

Page 3: Und das geht natürlich auch: Berichte

Silverlight Printing API

* Button aus Toolbox

* Click Ereignishandler hinzufügen

Page 4: Und das geht natürlich auch: Berichte

Silverlight Printing API

* Klasse PrintDocument

using System.Windows.Printing;PrintDocument DruckObjekt = new PrintDocument();

DruckObjekt.Print( "mein Druckauftrag");

Page 5: Und das geht natürlich auch: Berichte

Silverlight Printing API

DruckObjekt.PrintPage += new System.EventHandler<PrintPageEventArgs>( DruckObjekt_PrintPage);

void DruckObjekt_PrintPage(object sender, PrintPageEventArgs e){ e.PageVisual = this.LayoutRoot;}

Page 6: Und das geht natürlich auch: Berichte

Silverlight Printing API

* Druckvorgang muss durch eine Benutzeraktion initiiert werden

* Druckerauswahl wird immer angezeigt* Also immer wie … TO PRINTER PROMPT

* Migration von VFP Berichten möglich

Page 7: Und das geht natürlich auch: Berichte

Silverswitch Berichte

* ProductsTemplate.xaml

* Migriert:

* ProductTemplate.xaml

* DataGrid Berichte

Page 8: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* Druckaufbereitung auf der Server Seite

* FRX Ausführung in VFP COM Server

* Erstellung von PDF Datei* Mit Reportlistener* PDF mit Freeware DLL Libhpdf.dll erstellen

Page 9: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* PDF Ausgabe auf der Client Seite

* Ausgabe im Textmodus wie Reportbehavior 80 oder als Bild wie Reportbehavior 90 möglich

Page 10: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* VFP COM Server muss Exe Datei sein

* DLL geht nicht!

Page 11: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* Registrierung auf Zielrechner* ComPdfCreator.exe /regserver

* Un-Registrierung auf Zielrechner* ComPdfCreator.exe /unregserver

Page 12: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* Bericht sollte autonom sein* Tabellen in Datenumgebung* Private Datensitzung

Page 13: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* Funktion liefert PDF Dateinamen zurück

Page 14: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* Aufruf aus ActionButton

Name="vfxCreatePDFActionButton" ProcedureName= "cexample.createpdf"ProcedureParameter="customers.frx"OperationName= "CreatePDFFromFRX"OperationResultLoaded=

"vfxCreatePDFActionButton_ OperationResultLoaded"

Page 15: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* URL der Anwendung ermitteln

private void vfxCreatePDFActionButton_OperationResultLoaded (object sender, EventArgs e)

{string applicationUrl = string.Format("{0}/", Application.Current.Host.Source.AbsoluteUri.Replace("/ClientBin/VfxLoader.xap", ""));

Page 16: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* URL für PDF erstellen

string pdfPageURL = applicationUrl + "UploadedFiles/" +

vfxCreatePDFActionButton.OperationResult.result;

Page 17: Und das geht natürlich auch: Berichte

FRX mit VFP COM Server

* PDF in neuem Browser Fenster öffnen

System.Windows.Browser.HtmlPage.Window.Navigate(

new Uri(pdfPageURL, UriKind.RelativeOrAbsolute),"_blank", "toolbar=no, location=no,status=no, menubar=no, resizable=yes");

}

Page 18: Und das geht natürlich auch: Berichte

VergleichSilverlight FRX

Grafik X X

Text X

* Silverlight* 600 DPI* Text kann nicht kopiert werden

* FRX* Ausgabe im Textmodus wie Reportbehavior 80

oder als Bild wie Reportbehavior 90 möglich

Page 19: Und das geht natürlich auch: Berichte

Fragen?

Page 20: Und das geht natürlich auch: Berichte

Vielen Dank undviel Spaß mit Silverlight

wünschenVenelina & Uwe