Wizards & Builders GmbH Erstellen von Applikationen Erstellen von Datenbank- Applikationen unter...
-
Upload
theudobald-bolten -
Category
Documents
-
view
114 -
download
1
Embed Size (px)
Transcript of Wizards & Builders GmbH Erstellen von Applikationen Erstellen von Datenbank- Applikationen unter...

Wizards & Wizards & Builders GmbH Builders GmbH
Erstellen von ApplikationenErstellen von Applikationen
Erstellen von Datenbank-Erstellen von Datenbank-Applikationen unterApplikationen unter
Microsoft Visual FoxProMicrosoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
Diese Schulung dient der Einführung in das Erstellen von
vollständigen Datenbank-Applikationen unter
Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
ThemenübersichtThemenübersicht
VorbereitungenVorbereitungen Basis- und ManagerklassenBasis- und Managerklassen Programme, Menüs, ToolbarsProgramme, Menüs, Toolbars Definition der MaskenDefinition der Masken DatennavigationDatennavigation Weitere MöglichkeitenWeitere Möglichkeiten

Wizards & Wizards & Builders GmbH Builders GmbH
VorbereitungenVorbereitungen
Projektdatei, Projektdatei, Verzeichnisse, Datenbank Verzeichnisse, Datenbank anlegen unter Microsoft anlegen unter Microsoft
Visual FoxProVisual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
FoxPro konfigurierenFoxPro konfigurieren
CONFIG.FPW-Datei anlegenCONFIG.FPW-Datei anlegen FOXUSER.DBF setzenFOXUSER.DBF setzen ActiveX-Controls registrierenActiveX-Controls registrieren Optionen einstellen:Optionen einstellen:
Regional, View, GeneralRegional, View, General Data, Syntax ColoringData, Syntax Coloring Forms, Projects, Controls (ActiveX)Forms, Projects, Controls (ActiveX)

Wizards & Wizards & Builders GmbH Builders GmbH
Projektdatei anlegenProjektdatei anlegen
Allgemeines Verzeichnis anlegen Allgemeines Verzeichnis anlegen (COMMON)(COMMON)
Projektverzeichnis anlegenProjektverzeichnis anlegen Projektdatei anlegenProjektdatei anlegen Projekteigenschaften eintragenProjekteigenschaften eintragen ggf. Unterverzeichnisse anlegenggf. Unterverzeichnisse anlegen

Wizards & Wizards & Builders GmbH Builders GmbH
Verzeichnisse anlegenVerzeichnisse anlegen
BitmapsBitmaps (BITMAP,BMP)(BITMAP,BMP) KlassenKlassen (CLASS)(CLASS) DatenDaten (DATA)(dbf+dbc!)(DATA)(dbf+dbc!) MaskenMasken (FORM)(FORM) HeaderHeader (INCLUDE)(INCLUDE) LibrariesLibraries (LIBS)(LIBS) MenüsMenüs (MENU)(MENU) ProgrammeProgramme (PROG)(PROG) BerichteBerichte (REPORT)(REPORT) ggf. WinWordggf. WinWord (WINWORD, OLE)(WINWORD, OLE)

Wizards & Wizards & Builders GmbH Builders GmbH
Anlegen DatenbankAnlegen Datenbank
Primärschlüssel (Char binary)Primärschlüssel (Char binary) Fremdschlüssel (dito)Fremdschlüssel (dito) Defaultfunktion für Schlüssel Defaultfunktion für Schlüssel
in Stored Procedure des DBCin Stored Procedure des DBC Sonstige FeldeigenschaftenSonstige Feldeigenschaften Persistente Relationen, ggf. RIPersistente Relationen, ggf. RI
bei RI dann auch Fehlerabfangen!bei RI dann auch Fehlerabfangen!

Wizards & Wizards & Builders GmbH Builders GmbH
Basis- und Basis- und ManagerklassenManagerklassen
Anlegen von Basisklassen Anlegen von Basisklassen und Managerklassen unter und Managerklassen unter
Microsoft Visual FoxProMicrosoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
Basisklassen anlegenBasisklassen anlegen
Eigene Klassenbibliothek dafürEigene Klassenbibliothek dafür Subklasse aller FoxPro-KlassenSubklasse aller FoxPro-Klassen
Textbox, Label, Commandbutton, Grid Textbox, Label, Commandbutton, Grid sowie Pageframe, Container, Toolbarsowie Pageframe, Container, Toolbar
Eintragen unter Field-MappingEintragen unter Field-Mapping Bibliothek eintragen bei Ctrls.Bibliothek eintragen bei Ctrls.
Ggf. Superbasisklasse erzeugenGgf. Superbasisklasse erzeugen Verweis in Methoden, LademethodeVerweis in Methoden, Lademethode

Wizards & Wizards & Builders GmbH Builders GmbH
Managerklassen anlegenManagerklassen anlegen
Eigene Klassenbibliothek dafürEigene Klassenbibliothek dafür Ggf. Bibliothek eintragenGgf. Bibliothek eintragen Managerbasisklasse anlegenManagerbasisklasse anlegen
Subklasse für NavigationSubklasse für Navigation Ggf. SubSubklasse für Treeview u.ä.Ggf. SubSubklasse für Treeview u.ä.
Subklasse für ApplikationSubklasse für Applikation SubSubklasse für LoaderSubSubklasse für Loader
Subklasse für ServicesSubklasse für Services

Wizards & Wizards & Builders GmbH Builders GmbH
Optional: BuilderOptional: Builder
Builder für Loader:Builder für Loader: HauptprogrammnameHauptprogrammname Copyright und ähnliche InformationenCopyright und ähnliche Informationen Bibliotheken und ähnlichesBibliotheken und ähnliches
Builder für Navigator:Builder für Navigator: Name und Order HaupttabelleName und Order Haupttabelle ggf. Buffermode, Transaktionenggf. Buffermode, Transaktionen ggf. Childtabelle(n)ggf. Childtabelle(n)

Wizards & Wizards & Builders GmbH Builders GmbH
Businessklassen anlegenBusinessklassen anlegen
Geschäftsprozesse mit Geschäftsprozesse mit Subklassen des Navigators oder Subklassen des Navigators oder Basismanagers realisierenBasismanagers realisieren
Objektreferenz auf Datensatz Objektreferenz auf Datensatz gelegentlich sinnvollgelegentlich sinnvoll
Reaktion auf Assign/Access-Reaktion auf Assign/Access-Methoden für BerechnungenMethoden für Berechnungen

Wizards & Wizards & Builders GmbH Builders GmbH
Programme, Menüs, ToolbarsProgramme, Menüs, Toolbars
Definition von Definition von Programmen, Menüs, Programmen, Menüs,
Toolbars mit Toolbars mit Microsoft Visual FoxProMicrosoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
Anlegen HauptprogrammAnlegen Hauptprogramm
Pfade setzenPfade setzen Setzen von BibliothekenSetzen von Bibliotheken Erzeugen Loader-KlasseErzeugen Loader-Klasse Starten LoaderklasseStarten Loaderklasse
ggf. OnShutdown-Funktionggf. OnShutdown-Funktion
Einfügen und markierenEinfügen und markieren Hauptprogramme „fett“Hauptprogramme „fett“

Wizards & Wizards & Builders GmbH Builders GmbH
Anlegen HilfsprogrammeAnlegen Hilfsprogramme
IsObjectIsObject IsTagIsTag NewIDNewID DeclareDeclare DatenbankfunktionenDatenbankfunktionen CSV-Listen (für Eigenschaften)CSV-Listen (für Eigenschaften)

Wizards & Wizards & Builders GmbH Builders GmbH
Definition MenüsDefinition Menüs
Menüs einzeln als Popups (!)Menüs einzeln als Popups (!) Datei-Menü bekommt Punkt Datei-Menü bekommt Punkt
Programmende (Clear Events)Programmende (Clear Events) Bearbeiten-Menü für EditorBearbeiten-Menü für Editor NavigationsmenüNavigationsmenü ggf. Funktionen, Berichtsmenüggf. Funktionen, Berichtsmenü Hilfe-Menü bekommt AboutboxHilfe-Menü bekommt Aboutbox

Wizards & Wizards & Builders GmbH Builders GmbH
Toolbar anlegenToolbar anlegen
Containerklassen für Containerklassen für Buttongruppen (Navig, Record)Buttongruppen (Navig, Record)
Buttoncontainer zur Design- Buttoncontainer zur Design- oder Laufzeit zu Toolbaroder Laufzeit zu Toolbar
Abfrage auf _screen.activeformAbfrage auf _screen.activeform Ansprechen von goData (global) Ansprechen von goData (global)
oder Referenz an der Maskeoder Referenz an der Maske

Wizards & Wizards & Builders GmbH Builders GmbH
Definition der MaskenDefinition der Masken
Definition der Definition der MaskenklassenMaskenklassen
und Masken unter und Masken unter Microsoft Visual FoxProMicrosoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
Maskenklasse anlegenMaskenklasse anlegen
Hauptmaskenklasse ohne Hauptmaskenklasse ohne DatenbezugDatenbezug
Subklasse für Datenmasken Subklasse für Datenmasken - aber ohne Datenbezogene - aber ohne Datenbezogene Methoden / Eigenschaften (!)Methoden / Eigenschaften (!)
Keine Subklasse für modale Keine Subklasse für modale Masken notwendig (aber SDI)Masken notwendig (aber SDI)

Wizards & Wizards & Builders GmbH Builders GmbH
Hilfsmasken anlegenHilfsmasken anlegen
Aboutbox-Maske (mit MSINFO)Aboutbox-Maske (mit MSINFO) Login-Maske (mit Passwort)Login-Maske (mit Passwort) Thermometer-MaskeThermometer-Maske Moverbox-MaskeMoverbox-Maske Messagebox-Funktion oder Messagebox-Funktion oder
Anzeigemaske für NachrichtenAnzeigemaske für Nachrichten

Wizards & Wizards & Builders GmbH Builders GmbH
Masken für AnwendungMasken für Anwendung
Stammdatenmaske mit ReiternStammdatenmaske mit Reitern Reiter mit Auswahl-Grid (inkrementell)Reiter mit Auswahl-Grid (inkrementell) Reiter mit Stammdaten (ggf. mehrere)Reiter mit Stammdaten (ggf. mehrere) Reiter mit Childdaten (abhängig)Reiter mit Childdaten (abhängig)
Child-StammdatenmaskeChild-Stammdatenmaske Später: Masken für Suchen, Später: Masken für Suchen,
Sortieren, Filtern/EingrenzenSortieren, Filtern/Eingrenzen

Wizards & Wizards & Builders GmbH Builders GmbH
Probleme mit GridsProbleme mit Grids
Inkrementelle Suchmaske mit Inkrementelle Suchmaske mit Readonly-Textboxen und Timer-Readonly-Textboxen und Timer-Control für Refresh sowie Control für Refresh sowie eigene Header-Klasse (!)eigene Header-Klasse (!)
Markierung aktive ZeileMarkierung aktive Zeile Container in Gridspalte für Container in Gridspalte für
mehrzeilige Einträge (+Editbox)mehrzeilige Einträge (+Editbox)

Wizards & Wizards & Builders GmbH Builders GmbH
Modale ZusatzmaskeModale Zusatzmaske
Modale Maske mit Übergabe Modale Maske mit Übergabe Datensatz als ReferenzDatensatz als Referenz
Geschäftsobjekt auf Basis von Geschäftsobjekt auf Basis von Navigator-KlasseNavigator-Klasse
Berechnungsfunktion aufgrund Berechnungsfunktion aufgrund von Assign/Access-Methodenvon Assign/Access-Methoden
Rückspeichern der DatenRückspeichern der Daten

Wizards & Wizards & Builders GmbH Builders GmbH
DatennavigationDatennavigation
Navigation in der Navigation in der Datenbank Datenbank
und Refresh mit und Refresh mit Microsoft Visual FoxProMicrosoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
Datennavigation (1)Datennavigation (1)
Navigator-Klassen auf allen Navigator-Klassen auf allen Reitern plazierenReitern plazieren
Grid anbinden mit Click-Grid anbinden mit Click-Methode für RefreshMethode für Refresh Click-Methode weiterleiten im GridClick-Methode weiterleiten im Grid Navigator auf Zusatzmaske refreshen Navigator auf Zusatzmaske refreshen
(ggf. im AfterRowColumnChange-Event)(ggf. im AfterRowColumnChange-Event) Ggf. gewünschten Reiter aktivierenGgf. gewünschten Reiter aktivieren

Wizards & Wizards & Builders GmbH Builders GmbH
Datennavigation (2)Datennavigation (2)
Anzeige Stammdatensatz aus Anzeige Stammdatensatz aus View oder mit PositionierungView oder mit Positionierung
Anzeige Childdaten mit View Anzeige Childdaten mit View oder Relation oder SET KEYoder Relation oder SET KEY
Refresh bei Neuanlage ChildsRefresh bei Neuanlage Childs Neupositionierung bei Neupositionierung bei
Löschung von StammdatenLöschung von Stammdaten

Wizards & Wizards & Builders GmbH Builders GmbH
Datennavigation (3)Datennavigation (3)
Refresh der abhängigen Reiter:Refresh der abhängigen Reiter: Gesampositionierung durch Auswahl-Gesampositionierung durch Auswahl-
grid bzw. Toolbargrid bzw. Toolbar durch Gesamt-Refresh-Methode in durch Gesamt-Refresh-Methode in
Pageframe-KlassePageframe-Klasse durch Aufrufen aller Manager in Page-durch Aufrufen aller Manager in Page-
Reihenfolge (dadurch Child-Reihenfolge Reihenfolge (dadurch Child-Reihenfolge auf Reitern festgelegt)auf Reitern festgelegt)
Verketten von ManagernVerketten von Managern

Wizards & Wizards & Builders GmbH Builders GmbH
Datennavigation (4)Datennavigation (4)
Verbindung Toolbar, Menü und Verbindung Toolbar, Menü und Navigationsklasse:Navigationsklasse: durch Referenz an der Formdurch Referenz an der Form Austauschen der Referenz im Activate Austauschen der Referenz im Activate
der jeweiligen Pageder jeweiligen Page Refreshen des Toolbars durch Refreshen des Toolbars durch
NavigatorNavigator Skipfor-Klausel mit Bezug auf aktive Skipfor-Klausel mit Bezug auf aktive
Maske und dort auf den NavigatorMaske und dort auf den Navigator

Wizards & Wizards & Builders GmbH Builders GmbH
Weitere MöglichkeitenWeitere Möglichkeiten
ErweiterungsmöglichkeiteErweiterungsmöglichkeiten n
für Applikationen in für Applikationen in Microsoft Visual FoxProMicrosoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH
StandardmaskenStandardmasken
Aboutbox mit MSINFO.EXEAboutbox mit MSINFO.EXE Login mit Benutzer/PasswortLogin mit Benutzer/Passwort Registry-Klasse für Registry-Klasse für
Lesen/Schreiben von Registry-Lesen/Schreiben von Registry-EinstellungenEinstellungen
Inkrementelles Grid für Suche Inkrementelles Grid für Suche sowie Anzeige aktive Zeilesowie Anzeige aktive Zeile

Wizards & Wizards & Builders GmbH Builders GmbH
ActiveX-ControlsActiveX-Controls
SYSINFO-Control für SYSINFO-Control für SysteminformationenSysteminformationen
Listview/Imagelist für ListeListview/Imagelist für Liste Treeview/Imagelist für Treeview/Imagelist für
hierarchische Datenhierarchische Daten RTF-Control für Notizen mit RTF-Control für Notizen mit
FormatierfunktionenFormatierfunktionen

Wizards & Wizards & Builders GmbH Builders GmbH
Sonderproblem mit Sonderproblem mit ActiveXActiveX
ActiveX-Control neben ActiveX-Control neben Pageframe verhindert Pageframe verhindert „Activate“-Event der Page„Activate“-Event der Page
Page hat kein Gotfocus!Page hat kein Gotfocus! Eigene Pageklasse mit Eigene Pageklasse mit
Weiterleitung des Gotfocus an Weiterleitung des Gotfocus an PagePage
Geht nicht falls disabled!Geht nicht falls disabled!

Wizards & Wizards & Builders GmbH Builders GmbH
Was ist zu beachten?Was ist zu beachten?
Strukturiertes Strukturiertes KlassenkonzeptKlassenkonzept
Anbindung von Anbindung von Menüs+ToolbarMenüs+Toolbars mit Navigators mit Navigator
SonderproblemSonderprobleme bei Grid und e bei Grid und ActiveX-ControlActiveX-Control

Wizards & Wizards & Builders GmbH Builders GmbH
Vielen Dank!Vielen Dank!
Das waren die Themen:Das waren die Themen: VorbereitungenVorbereitungen Basis- und Basis- und
ManagerklassenManagerklassen Programme, Programme,
Menüs, ToolbarsMenüs, Toolbars Definition der Definition der
MaskenMasken DatennavigationDatennavigation Weitere Weitere
MöglichkeitenMöglichkeiten

Wizards & Wizards & Builders GmbH Builders GmbH
Wenn Fragen bestehen:Wenn Fragen bestehen:
Wizards & BuildersWizards & BuildersMethodische Software-Methodische Software-
Entwicklung GmbHEntwicklung GmbH
Frankfurter Str. 21bFrankfurter Str. 21b
61476 Kronberg61476 Kronberg
Tel.: 06173-950906Tel.: 06173-950906
Fax: 06173-950907Fax: 06173-950907
CIS: 101605,175CIS: 101605,175