Und das geht natürlich auch: Berichte Venelina Jordanova Venelina@VandU.eu Uwe Habermann Uwe@VandU.eu
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 Button aus Toolbox Click Ereignishandler hinzufügen
Silverlight Printing API Klasse PrintDocument using System.Windows.Printing; PrintDocument DruckObjekt = new PrintDocument(); DruckObjekt.Print( "mein Druckauftrag");
Silverlight Printing API DruckObjekt.PrintPage += new System.EventHandler<PrintPageEventArgs>( DruckObjekt_PrintPage); void DruckObjekt_PrintPage(object sender, PrintPageEventArgs e) { e.PageVisual = this.LayoutRoot; }
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
Silverswitch Berichte ProductsTemplate.xaml Migriert: ProductTemplate.xaml DataGrid 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
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
FRX mit VFP COM Server VFP COM Server muss Exe Datei sein DLL geht nicht!
FRX mit VFP COM Server Registrierung auf Zielrechner ComPdfCreator.exe /regserver Un-Registrierung auf Zielrechner ComPdfCreator.exe /unregserver
FRX mit VFP COM Server Bericht sollte autonom sein Tabellen in Datenumgebung Private Datensitzung
FRX mit VFP COM Server Funktion liefert PDF Dateinamen zurück
FRX mit VFP COM Server Aufruf aus ActionButton Name="vfxCreatePDFActionButton" ProcedureName= "cexample.createpdf" ProcedureParameter="customers.frx" OperationName= "CreatePDFFromFRX" OperationResultLoaded= "vfxCreatePDFActionButton_ OperationResultLoaded"
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", ""));
FRX mit VFP COM Server URL für PDF erstellen string pdfPageURL = applicationUrl + "UploadedFiles/" + vfxCreatePDFActionButton.OperationResult.result;
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"); }
Vergleich Silverlight FRX 600 DPI Text kann nicht kopiert werden Grafik X Text Silverlight 600 DPI Text kann nicht kopiert werden FRX Ausgabe im Textmodus wie Reportbehavior 80 oder als Bild wie Reportbehavior 90 möglich
Fragen?
Vielen Dank und viel Spaß mit Silverlight wünschen Venelina & Uwe