vfp code in silverlight anwendungen ausführen
DESCRIPTION
VFP Code in Silverlight Anwendungen ausführen. Venelina Jordanova [email protected]. Uwe Habermann [email protected]. VFP Code ausführen. Jeder Client GUINEU Server VFP COM Server OOB Client VFP COM Server. GUINEU. GUINEU. Von Christof Wollenhaupt www.GUINEU.net - PowerPoint PPT PresentationTRANSCRIPT
![Page 2: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/2.jpg)
VFP Code ausführen
* Jeder Client* GUINEU
* Server* VFP COM Server
* OOB Client* VFP COM Server
![Page 3: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/3.jpg)
GUINEU
![Page 4: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/4.jpg)
GUINEU
* Von Christof Wollenhaupt
* www.GUINEU.net
* VFP Laufzeitumgebung in C# entwickelt
* Angepasste Version für VFX für Silverlight Client Anwendungen
* Ausführung von VFP Code aus FXP Datei
* 1 DLL
![Page 5: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/5.jpg)
GUINEU
* Eigenes Projekt
* FXP Datei* Buildvorgang: Eingebettete Resource
* PRG Datei (zur Bearbeitung mit VFP)* Buildvorgang: keine
* Demo
![Page 6: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/6.jpg)
GUINEU
* Viele VFP Funktionen
* Viele VFP Befehle
* Parameterübergabe* auch Objekte!
* Aber:* Keine Benutzeroberfläche* Kein Dateizugriff
![Page 7: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/7.jpg)
VFP COM Server
![Page 8: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/8.jpg)
VFP COM Server
* Datenzugriff* Cursoradapter
* VFP Datenbank* SQL Datenbank
* Geschäftslogik* Alles, was nicht visuell ist
![Page 9: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/9.jpg)
VFP COM Server auf derServer Seite verwenden
* Datenzugriff mit Cursoradapter
* Verwendete Datenbank konfigurierbar* Native DBC* Alle ODBC Datenquellen
* Microsoft SQL Server* MySQL* Oracle* DB2* …
![Page 10: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/10.jpg)
VFP COM Server auf derServer Seite verwenden
* „early binding“ in Visual Studio
* COM Server muss zur Entwicklungszeit funktionsfähig sein
* Verweis auf COM Server muss dem Server Projekt hinzugefügt werden
![Page 11: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/11.jpg)
VFP COM Server
* DEFINE CLASS COMTastrade AS SESSION OLEPUBLIC
* Erstellen als „Multi-Thread COM Server (DLL)“
* VFP9.exe muss explizit mit Administratorrechten ausgeführt werden!
![Page 12: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/12.jpg)
VFP COM Server
DEFINE CLASS COMTastrade AS SESSION OLEPUBLIC
PROCEDURE GetCustomers()USE Customer IN 0 SHARED CURSORTOXML("Customer", "lcXML", 1, 2, 0, "1")USE IN CustomerRETURN lcXML
![Page 13: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/13.jpg)
VFP COM Server auf derServer Seite verwenden
* Verweis auf „Microsoft CSharp“ hinzufügen
![Page 14: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/14.jpg)
Umgang mit Daten in C#
* Kein USE, keine Cursor
* Nur Speicherstrukturen
* Datenklassen* 1. Beschreibung der Struktur: Kunden
* Entspricht 1 Datensatz
* 2. „Liste“: Kundenliste* Entspricht Tabelle oder Cursor
* VfpCustomers.cs hinzufügen
![Page 15: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/15.jpg)
COM Server Zugriff
* Verwendung
* Daten holen
* De-serialisieren von XML zu „List“
* VfpDataHandler.cs hinzufügen
![Page 16: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/16.jpg)
Domain Service erweitern
public IQueryable<customer> GetVfpCustomers(){ VfpDataHandler vfpDataHandler = new VfpDataHandler(); return vfpDataHandler.VfpCustomers.Items. AsQueryable<customer>();}
![Page 17: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/17.jpg)
Noch ein DataGrid
* Beispiel: About.xaml
* Drag&Drop aus „Datenquellen“* customer
* Test
![Page 18: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/18.jpg)
VFP COM Server inOOB Client AnwendungenVerweis zu Microsoft.CSharp hinzufügen
using System.Runtime.InteropServices.Automation;
dynamic comvfp = AutomationFactory.CreateObject( "comvfptest.comvfptest");txt1.Text = comvfp.gibsys0();
![Page 19: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/19.jpg)
VFP COM Server inOOB Client Anwendungen* nur in Silverlight 4 Anwendungen mit
höherer Vertrauensstellung möglich
if (App.Current.IsRunningOutOfBrowser)
if (App.Current.HasElevatedPermissions)
* Demo
![Page 20: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/20.jpg)
VFX für SilverlightAction Button
* Silverlight Client führt Methode in VFP COM Server aus
* In jeder Silverlight Anwendung verfügbar* Browser
* auf der Server Seite
* OOB mit höherer Vertrauensstellung* auf der Server Seite* auf der Client Seite
![Page 21: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/21.jpg)
Der VFP COM Server in VFX für Silverlight
* Ausführung von VFP Funktionen
* Ausführung von FXP Dateien
* Ausführung von APP Dateien
![Page 22: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/22.jpg)
Weitere Veranstaltungen
* VFP 9 und Silverlight 4 Roadshow* 09.05. Frankfurt – Lindner Congress Hotel* 11.05. Stuttgart – Mercure City Center* 14.05. München – Mercure City Center* 16.05. Hannover – InterCity Hotel
![Page 23: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/23.jpg)
Weitere Veranstaltungen
* VFX für Silverlight Workshop* 19.05.-20.05. Frankfurt – Lindner Congress Hotel
* VFX Anwendertreffen* 21.05. Frankfurt – Lindner Congress Hotel
![Page 24: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/24.jpg)
Weitere Veranstaltungen
* Southwest Fox* 26.10.-29.10. Phoenix – Legado Hotel
* Silverlight Workshop* 29.10.-30.10. Phoenix – Legado Hotel
* FoxPro Entwicklerkonferenz* 10.11.-12.11. Frankfurt – Lindner Congress Hotel
![Page 25: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/25.jpg)
Fragen?
![Page 26: VFP Code in Silverlight Anwendungen ausführen](https://reader035.vdocuments.net/reader035/viewer/2022062422/56812faf550346895d953642/html5/thumbnails/26.jpg)
Vielen Dank undviel Spaß mit Silverlight
wünschenVenelina & Uwe