Inhaltsverzeichnis FoxX Professional 31.0 Allgemeines (00) (00-115) Inhaltsverzeichnis Rainer Becker 6 Seiten Das Inhaltsverzeichnis der 31. Ausgabe von FoxX Professional, nach Rubriken sortiert. Objektorientierung Allgemein (01) (01-23) Klassen mit einer Factory erstellen Andy Kramek 4 Seiten Die Implementierung des Factory-Musters, das ich Ihnen in diesem Artikel vorstellen werde, bietet zwei wichtige Vorteile. Zunächst verhindert es Probleme, die auftauchen, wenn die Namen der Klasse und der Bibliothek direkt in den Code eingebettet sind. Außerdem haben die Entwickler die Möglichkeit, in der Produktionsumgebung zu arbeiten und zu testen, während der Code „work-in-process“ ist, ohne dass dadurch eine andere Version der Anwendung beeinflusst wird. Grundlagen der Programmierung (02) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Schicht Datenhaltung (03) (03-49) Das Designen einer Datenbank Andy Kramek 20 Seiten In diesem Artikel werden wir uns einige einfache Richtlinien ansehen, die Ihnen, wenn Sie ihnen folgen, helfen werden Ihren Job zu erledigen, wenn Sie wieder eine neue Datenbank entwerfen. (03-50) Lookup-Tabellen modellieren Andy Kramek 4 Seiten Kürzlich bin ich im Foxite-Forum auf eine Diskussion gestoßen, in der es um die Implementierung von Lookup-Tabellen ging. Die Diskussion spitzte sich an der Frage zu, ob es besser ist, eine einzige Tabelle für alle Lookup-Daten (die sogenannte „One True Lookup Table [OTLT]Lösung) zu erstellen oder ob es sinnvoller ist, für jede Art der Lookup-Daten eine eigene Tabelle einzusetzen. Dieser Artikel kann Ihnen vielleicht bei Ihrer Entscheidung helfen. (03-51) Metadaten ausgereizt Andy Kramek 15 Seiten Wie ich in meinem Artikel „Das Designen einer Datenbank“ ausgeführt habe, gibt es grundsätzlich betrachtet drei Datenkategorien: Roh-, Verarbeitungs- und Metadaten. Kommen wir nun zu den Metadaten – dem Thema dieses Artikels. Metadaten werden häufig als „Daten über die Daten“ bezeichnet, was nicht in jedem Fall erleuchtend ist. Vielleicht wäre es hilfreicher, die Metadaten als „Daten, die keine Geschäftsinformation enthalten“ zu bezeichnen. (03-52) Klassenbasiertes Datenmanagement Andy Kramek 13 Seiten In modernen Geschäftsumgebungen ist der Zugriff auf die Daten für jede Anwendung entscheidend. Allerdings werden häufig unterschiedliche Datenbanken verwendet und das Problem ist, die verschiedenen Datenquellen wie SQL Server, Oracle und Visual FoxPro zu integrieren. In diesem Artikel beschäftigen wir uns mit dem Design und der Implementierung verschiedener Klassen, die genau dieses Problem behandeln und die falls erforderlich auch als COM-Objekte implementiert werden können. (03-53) DataSessions in Visual FoxPro Andy Kramek 5 Seiten In letzter Zeit habe ich in verschiedenen Foren eine Vielzahl Fragen zum Zweck und der Verwendung von Datensitzungen gefunden. Obwohl das Konzept in Visual FoxPro bereits seit der Version 3.0 (die im Jahr 1995 erschien) enthalten ist, werden die Datensitzungen häufig nicht richtig verstanden. Dieser Artikel soll Ihnen dabei helfen. (03-54) SQL ausgereizt Andy Kramek 13 Seiten Bevor wir beginnen, uns mit den Details des erweiterten SQL zu befassen, möchte ich sicherstellen, dass wir einige der Basisterminologien verstehen, die dabei zum Einsatz kommen. Bei der Arbeit mit SQL verwenden wir verschiedene Begriffe. In diesem Artikel werde ich näher auf diese eingehen. (03-55) Was ist die Normalisierung der Daten? Andy Kramek 6 Seiten Die Normalisierung dient der Verbesserung der Effizienz der Speicherung der Daten in einer Datenbank. Eine korrekt normalisierte Datenbank ist schnell und einfach wartbar, während eine schlecht normalisierte Struktur träge und schwierig zu verwalten ist. In der Datenbanktheorie gibt es fünf Normalformen auf die ich in diesem Artikel näher eingehen werde. (03-56) Was ist ein Schlüssel? Andy Kramek 4 Seiten Das Wort Schlüssel hat im relationalen Datenbankdesign eine sehr spezielle Bedeutung. Es bezieht sich auf ein Feld, dessen Wert in mehreren Tabellen vorhanden ist. Der Sinn dieser Duplizierung der Daten besteht darin, einen Datensatz in einer Tabelle mit einem Datensatz in einer anderen Tabelle zu verbinden und auf diese Weise die Extrahierung von Informationen zu ermöglichen, die auf die beiden Tabellen aufgeteilt sind. Eine solche Zuordnung wird als „Relation“ bezeichnet. Die Relationen unterscheiden relationale Datenbanken von flachen Datenbanken. Schicht Geschäftsobjekte (04) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Schicht Benutzeroberfläche (05) (05-47) Behalten Sie die Grafik-Dateien Ihrer Anwendung im Auge aus FoxStuff 4 Seiten Eine der schwierigeren Aufgaben bei der Entwicklung eines Visual FoxPro-Projekts ist die Verwaltung der vielen Icons, Bitmaps und anderen Grafikdateien, die Sie in der Anwendung benötigen. Die Verwaltung dieser Dateien ist ein Problem. In unseren eigenen Projekten testen wir in der Regel verschiedene Icons für eine bestimmte Funktion und vergessen anschließend, diejenigen zu löschen, die wir verworfen haben, was zu vielen unnötigen Dateien im Verzeichnis führt. Bei der Arbeit mit mehreren Programmierern kommt es häufig vor, dass jeder Programmierer seine eigenen Grafiken verwendet, so dass am Ende unterschiedliche Grafiken für den gleichen Zweck eingesetzt werden. Um dieses sowie andere damit zusammenhängende Probleme zu lösen, haben wir ein einfaches Hilfsprogramm erstellt, das wie alle Hilfsprogramme und Komponenten in Foxstuff, vollständig freigegeben ist. Laden Sie es einfach herunter aber beachten Sie, dass Review Bitmaps VFP 8.0 oder höher benötigt. (05-48) Erstellen datengesteuerter Popup-Menüs in VFP Andy Kramek 4 Seiten Eines der kleinen Werkzeuge, die Marcia und ich bei der Arbeit mit VFP immer verwenden, ist ein Popup-Menügenerator, der es uns ermöglicht, schnell und einfach eine Entwicklungsumgebung auszuwählen. Als uns klar wurde, dass es viele Situationen gibt, in denen es hilfreich wäre, ein Popup-Menü zur Verfügung zu haben (wie die Rechtsklick-Optionen auf Formularen und Steuerelementen), haben wir einen einfachen Menügenerator erstellt, um „on the Fly“ ein PopupMenü aus einfachen Tabellen heraus zu erstellen. Die Definition der Klasse, den DBC, die Tabellen sowie das Generierungsprogramm für die Beispieldaten finden Sie im Download zu diesem Artikel. Ich hoffe, Sie finden ihn genauso hilfreich wie wir. (05-49) Das Berichtsvorschaufenster von VFP zähmen aus FoxStuff 7 Seiten In diesem Artikel empfehlen wir Ihnen verschiedene Vorgehensweisen, mit denen Sie das standardmäßige Vorschaufenster verbessern oder es durch eine eigene Berichtsvorschau ersetzen können. Die meisten beschriebenen Techniken stehen nur in VFP 9.0 zur Verfügung, aber am Anfang stellen wir Ihnen eine Möglichkeit vor, die sich seit der Version 5.0 verwenden lässt. (05-50) Die Länge eines Strings in einem angegebenen Font herausfinden Andy Kramek 3 Seiten Bei der Arbeit mit VFP stand ich häufig vor dem Problem, dass ich versuchte, zu entscheiden, wie groß eine Textbox sein muss, um eine bestimmte Schrift mit einem bestimmten Schriftgrad der maximalen Länge der Daten aufzunehmen, die die darunter liegende Datenquelle aufnimmt. Obwohl es relativ einfach ist, festzulegen, wie viele Zeichen wir anzeigen wollen, ist die benötigte Größe der Textbox auch von der gewählten Schrift abhängig. Die Lösung ist eine einfache Wrapperfunktion die ich Ihnen in diesem Artikel vorstellen will. Schicht Kommunikation/Umgebung (06) (06-51) Wie VFP Daten übermittelt Christof Wollenhaupt 3 Seiten Was geschieht eigentlich, wenn Visual FoxPro eine Abfrage ausführt? Das kann Ihnen niemand sagen, da nur Microsoft die genauen Details kennt und diese vermutlich niemandem verraten will. Aber aus Beobachtungen, durch Informationen, die veröffentlicht wurden, sowie durch Mitschreiben allen Netzwerkverkehrs mit einem Werkzeug wie dem Netzwerk Monitor, der mit einigen Versionen von Windows ausgeliefert wird, können wir unsere Schlüsse ziehen. Dieser Artikel gibt das wieder, was ich bislang beobachtet habe, sie beschreiben jedoch nicht notwendigerweise die genauen Vorgänge. Frameworks, Werkzeuge und Tools (07) (07-48) Silverlight Business Application Venelina Jordanova, Uwe Habermann 12 Seiten Im letzten Artikel haben wir Silverlight kennengelernt. In diesem Artikel wollen wir nun die erste Silverlight Geschäftsanwendung erstellen. Der Einstieg in Visual Studio und Silverlight gelingt ganz ohne Programmierung. (07-49) Microsoft Lightswitch – ein erster Blick auf die Beta des neuen RAD-Tools Michael Niethammer 12 Seiten Ende August hat Microsoft die erste Betaversion seiner neuen Lightswitch-Anwendung (bisheriger interner Projektname „KittyHawk“) veröffentlicht. Dieses Produkt soll im Microsoft Portfolie eine Lücke, sowohl für professionelle Entwickler als auch für Heim-Anwender schließen, die Datenbankanwendungen programmieren. In diesem Artikel gebe ich einen kurzen Überblick über Lightswitch und die damit erstellten Anwendungen. (07-50) Video Tutorials zur Migration von VFP Anwendungen nach Silverlight und zur Nutzung in der Cloud erschienen Uwe Habermann 3 Seiten Der Einstieg in die Migration nach Silverlight stellt viele VFP Entwickler vor besondere Herausforderungen. Schließlich geht es nicht nur um eine neue Technologie, auch die Entwicklungswerkzeuge sind neu und die Bereitstellung von Internetanwendungen auf einem Server haben auch noch nicht viele VFP Entwickler gemacht. In den Videos wird in einfach nachzuvollziehenden Schritten gezeigt, wie es geht. Dokumentation, Test und Installation (08) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Softwareentwicklung Allgemein (09) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Ausbildung und Fortbildung (10) (10-08) Erleichtern Sie Ihr Leben mit Vorlagen und Dokumentvorlagen Tamar E. Granor 10 Seiten Für die meisten Anwender ist das gleichmäßige Aussehen innerhalb von Dokumenten wie auch von Dokumenten untereinander wichtig. OpenOffice.org unterstützt diese Anforderung mit Vorlagen, die eine Gruppe von Formatcharakteristika definieren sowie mit Vorlagen, in denen die Vorlagen mit vorformulierten Texten kombiniert werden, um die Basis für neue Dokumente zu bilden. (10-09) Arbeiten mit Grafiken und Diagrammen Tamar E. Granor 16 Seiten Aus irgendeinem Grund neigen Tabellenkalkulationen dazu, den Begriff „Diagramm“ für etwas einzusetzen, was die meisten Menschen als „Grafik“ bezeichnen, die grafische Repräsentation von Daten. In diesem Kapitel verwenden wir die beiden Begriffe synonym. Allgemeine Rubriken (11) In dieser Ausgabe der Loseblattsammlung gibt es Artikel zu folgenden allgemeinen Rubriken: Tipps & Tricks (11-01) (11-01-15) Blenden Sie Ihre Formulare ein und aus aus FoxStuff 3 Seiten Eventuell haben Sie in Ihrer Lieblings-Windowsanwendung schon einmal bemerkt, dass einige Fenster graduell geöffnet werden und nicht sofort in voller Größe an ihrer Stelle stehen. Genauso kann es, wenn ein Fenster geschlossen wird, etwa eine Sekunde dauern, während der das Fenster ausgeblendet wird, statt plötzlich zu verschwinden. In diesem Artikel erklären wir, wie Sie dieses Fading Ihren Visual FoxPro-Formularen hinzufügen. Wir beschreiben auch eine einfache Formularklasse namens FadeForm, die diese Technik enthält. Sie können sich diese Klasse herunterladen und verwenden, um Ihre eigenen Formulare ein- und auszublenden. (11-01-16) Konstanten für Messageboxen Franz Heinbach 2 Seiten Im Laufe der Entwicklungsarbeit kommt es schon mal vor, dass im Programmcode eine Messagebox schlummert, deren Text in einer Konstante definiert wurde, die aber dummerweise nicht mehr vorhanden ist. Mit einem kleinen Programm lässt sich ein Vergleich bequem durchführen was ich Ihnen hier mit einem Beispiel zeigen will. Rezensionen (11-02) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Personalia (11-03) (11-03-45) Personalia Dr. Hans-Otto Lochmann Die Personalia von Dr. Hans-Otto Lochmann in einer aktualisierten Fassung. 5 Seiten (11-03-46) Nachruf Gabi Lochmann 2 Seiten diverse Autoren Anzeigen (11-04) (11-04-116) Bestellformular (nach 06-51) 1 Seite (11-04-117) Buchbestellformular (nach 11-01-115) 1 Seite News (11-05) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Fallstudien (11-06) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Resource Guide (11-07) Es liegen zu dieser Rubrik in dieser Ausgabe keine Artikel vor. Schulungskalender (11-08) (11-08-30) Visual Extend Workshop 2011 Uwe Habermann 2 Seiten Wir möchten Sie herzlich einladen zum VFX-Workshop am 19. und 20.5.2011 im Lindner Congress Hotel in Frankfurt. (11-08-31) Visual Extend Anwendertreffen 2011 Rainer Becker 2 Seiten Wir möchten Sie herzlich einladen zum VFX-Anwendertreffen am 21.05.2011 im Lindner Congress Hotel in Frankfurt. Veranstaltungskalender (11-09) (11-09-47) CeBIT-Regionaltreffen 2011 Rainer Becker 1 Seite (11-09-48) CeBIT-Stammtisch 2011 Rainer Becker 2 Seiten (11-09-49) Roadshow 2011 Rainer Becker 5 Seiten Beilagen: Dieser Aussendung von FoxX Professional liegen folgende Beilagen bei: • Ausgabe November/Dezember 2010 der Fachzeitschrift „CoDe Magazin“ • Ausgabe Januar/Februar 2011 der Fachzeitschrift „CoDe Magazin“ Impressum Herausgeber ISYS Softwareentwicklungs- und Verlagsgesellschaft mbH Frankfurter Straße 21b, D-61476 Kronberg, Deutschland Telefon 06173-950903 Telefax: 06173-050904 Hotline 06173-950905 eMail [email protected] WebSite http://www.dFPUG.de Portal http://portal.dFPUG.de Forum http://forum.dFPUG.de Wiki http://wiki.dFPUG.de Newsletter http://newsletter.dFPUG.de Newsgroup news://news.dFPUG.de VFX http://www.visualextend.de Webring http://webring.dFPUG.de Shop http://shop.dfpug.de FoxRockX http://www.foxrockx.com Redaktion Rainer Becker Übersetzungen Mathias Gronau Gestaltung, Satz Tina Flieher-Ojen Copyright Copyright 2010 by dFPUG c/o ISYS GmbH. Alle Rechte vorbehalten. Für die namentlich gekennzeichneten Beiträge übernimmt der Herausgeber nur die presserechtliche Verantwortung. Microsoft, Windows, FoxPro und Visual FoxPro sind registrierte Warenzeichen der Microsoft Corporation in den USA und anderen Ländern. Andere in der Loseblattsammlung vorkommenden Produkt- und Firmennamen können Warenzeichen der jeweiligen Eigentümer sein. ISSN 0946-8307 Übersicht eMail-Adressen/Verteilerlisten der dFPUG Die wichtigsten eMail-Adressen der dFPUG in einer Übersicht: Anforderung Informationsmaterial Mitgliedschaftsanmeldung/Änderung Bestellungen aller Art Konferenzanmeldungen Workshop Anmeldungen Redaktion von FoxX Professional Artikeleinreichungen Hotline-Fragen SharePoint PortalServer VisualExtend (Framework) mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected]