ODBC Anleitung - ACP Computer Aschersleben
Transcription
ODBC Anleitung - ACP Computer Aschersleben
CAO Faktura und mySQL - ODBC Anbindung Anbindung der mySQL Datenbank über ODBC Treiber an die klassischen Büroanwendungen MS Word und OpenOffice.org bzw. StarOffice Inhaltsverzeichnis EINLEITUNG............................................................................................................................................................ 1 DIE IDEE..................................................................................................................................................................... 1 SYSTEMVORAUSSETZUNGEN............................................................................................................................................. 2 STAND DER DOKUMENTATION......................................................................................................................................... 2 DAS KLEINGEDRUCKTE.................................................................................................................................................. 2 Lizenz................................................................................................................................................................... 2 Warenzeichen....................................................................................................................................................... 2 Nutzungsbedingungen und Haftungsausschluß................................................................................................... 2 Autoren und Kontakte.......................................................................................................................................... 2 EINRICHTEN DER ODBC DATENQUELLE.......................................................................................................3 ODBC TREIBER BESORGEN UND INSTALLIEREN..................................................................................................................3 NEUE ODBC DATENQUELLE ERSTELLEN (SYSTEM-DSN ODER BENUTZER-DSN).................................................................4 MYSQL DATENBANK WÄHLEN UND KONFIGURIEREN............................................................................................................6 DIE DATENQUELLE IN ODBC FÄHIGEN PROGRAMMEN VERWENDEN...............................................8 MS WORD 2000.........................................................................................................................................................8 MS WORD 2002 (OFFICE XP) UND WORD 2003........................................................................................................... 8 OPENOFFICE.ORG 1.X UND SUN STAROFFICE 6............................................................................................................... 14 STAROFFICE 5.2.........................................................................................................................................................17 SCHLUSSWORT..................................................................................................................................................... 17 NACHTRAG:................................................................................................................................................................17 Einleitung Die Idee Das freie Warenwirtschaftsprogramm CAO-Faktura von JP-Soft, hält jede Art von Daten in einer mySQL Datenbank vor. Solche Datenbanken können unter Linux und Windows über ODBC Treiber angesprochen werden. Ein ODBC Treiber dient quasi als Übersetzungsprogramm zwischen einer Datenbank und einer anderen Software, die ohne dieses Werkzeug nicht miteinander kommunizieren könnten. Das hört sich komplizierter an, als es ist. Wir werden in dieser Anleitung Schritt für Schritt vorgehen und beschränken uns auf allgemeine Umgangssprache ohne Fach-Chinesisch. Wir kommen aber nicht daran vorbei, uns diesen „ominösen“ ODBC Treiber zu besorgen und zu installieren und mit diesem eine Datenbankanbindung zu erstellen. Wenn das geschafft ist, braucht es nur noch etwas Experimentierfreude. Der Rest geht wie von selbst Wir gehen in unserem Fall davon aus, dass auf der einen Seite eine Büro-Applikation steht, z.B. OpenOffice Writer oder MS Word und auf der anderen Seite die mySQL Datenbank von CAO-Faktura, in der unter anderem der Adress- und Artikelstamm abgelegt sind. Es ist also wünschenswert, dass die Daten, die bei der täglichen Arbeit mit CAO-Faktura anfallen und dort gepflegt werden, für andere Programme nutzbar sind und nicht in einem weiteren Adressbuch gepflegt werden oder gar von Hand in jeden Brief erneut eingetippt werden müssen. Diese Arbeit läßt sich somit automatisieren, © 2004 ACP Computer Aschersleben Seite 1 von 17 beginnend bei einfachen Sachen wie Paketaufklebern, persönlichen Anschreiben, Serienbriefen. Mit etwas Phantasie sind der Verwendung der ODBC-Datenbankanbindung kaum Grenzen gesetzt, das endet längst nicht bei Umsatzanalysen mit OpenOffice Calc oder MS Excel inkl. Tendenzen und Diagrammen. Diese Anleitung soll die Grundlage schaffen, um mySQL Daten verschiedenen ODBC-fähigen Anwendungen zur Verfügung zu stellen. Systemvoraussetzungen • Ein funktionaler mySQL Server im Netzwerk oder lokal auf dem PC • Ein bestehender Adressdatenstamm in einer mySQL Datenbank, vorzugsweise die Datenbank, die von CAO-Faktura angelegt und gepflegt wird, da wir uns auf Tabellennamen beziehen, die dort vorhanden sind. CAO Faktura kann unter http://www.jp-soft.de bezogen werden • CAO-Faktura ist für Windows 2000 und Windows XP konzipiert, deshalb sollte als Plattform eines dieser Betriebssysteme vorhanden sein. • CAO-Faktura läuft auch unter Windows NT, die ODBC Anbindung weicht jedoch sehr von der hier vorliegenden Beschreibung ab. Da Windows NT ein „Auslaufmodell“ ist, gehen wir hier nicht darauf ein. Nachfragen zur diesbezüglichen Vervollständigung der Anleitung sind sinnlos. • Prinzipiell ist die Anbindung über ODBC auch unter Windows 9x oder Linux möglich, es wird jedoch nicht explizit darauf eingegangen, da wir uns auf CAO beziehen. Der grundlegende Verfahrensweg ist jedoch ähnlich. • Ein Office-Paket wie StarOffice 5.x, OpenOffice.org 1.x oder MS Office ab Version 2000 • Ein Internetzugang zum Download der mySQL ODBC Treiber (myODBC) Stand der Dokumentation Intitial Version 1.0: Release Version 1.1: 13. April 2004 30. April 2004 (Ergänzung OpenOffice.org) Das Kleingedruckte Lizenz Diese Dokumentation steht unter der GNU GPL, General Public License. Sie dürfen dieses Dokument kostenfrei nutzen und weitergeben. Änderungen sind nicht gestattet. Eine kostenpflichtige Weitergabe ist nicht gestattet, davon ausgeschlossen sind Aufwandskosten, die durch die Vervielfältigung im Rahmen der Weitergabe entstehen (Druckkosten, Datenträger u.ä.). Sie dürfen dieses Dokument interessierten Nutzern jederzeit über das World Wide Web (Internet) und in jeder anderen geeigneten Weise (Newsgroups, Homepage, Foren etc.) zur Verfügung stellen. In diesem Fall bitten wir um eine kurze Information per E-Mail, siehe Kontakt. Es ist jedoch nicht gestattet, den Dateinamen zu verändern. Warenzeichen Die in diesem Dokument erwähnten Produktnamen sind geschützte Marken oder eingetragene Markenzeichen des jeweiligen Eigentümers. OpenOffice.org ist ein freies Büro-Komplettpaket (GPL) www.openoffice.org CAO Faktura ist ein freies Warenwirtschaftssystem von JP-Soft (Jan Pokrandt) www.jp-soft.de Nutzungsbedingungen und Haftungsausschluß Alle Angaben erfolgen ohne Gewähr. Nutzung auf eigene Gefahr. Dieses Dokument entstand auf Wunsch von Mitgliedern des CAO-Faktura Forums. Autoren und Kontakte Detlef Karau (Initiator), Axel Frankenberg (Korrekturen, Ergänzungen) E-Mail: [email protected] © 2004 ACP Computer Aschersleben Seite 2 von 17 Einrichten der ODBC Datenquelle ODBC Treiber besorgen und installieren Zur Installation benötigen Sie Administrator-Rechte, melden Sie sich entsprechend an Windows an. Die MyODBC-Treiber für Windows (und Linux, jeweils GPL Lizenz) werden vom Hersteller mySQL AB unter http://www.mysql.com/downloads/api-myodbc-3.51.html zur Verfügung gestellt. Laden Sie den Treiber herunter, der sich hinter Windows Downloads ... Driver Installer ... 3.51.06 731.2K verbirgt. Die Datei heißt „MyODBC-3.51.06.exe“. Nach erfolgreichem Download starten Sie die Installation durch den üblichen Doppelklick auf diese Datei. Ein WindowsNeustart ist nach erfolgreicher Installation ausnahmsweise mal nicht nötig. © 2004 ACP Computer Aschersleben Seite 3 von 17 Neue ODBC Datenquelle erstellen (System-DSN oder Benutzer-DSN) Voraussetzung für die Nutzung einer Datenquelle ist, das diese im System eingerichtet und konfiguriert wird. Unter Windows XP / 2000 starten den „ODBC-Datenquellen Administrator“ aus der Systemsteuerung: Start -> Einstellungen -> Verwaltung -> Datenquellen (ODBC) Daraufhin öffnet sich der Dialog Dialog des ODBC Verwaltungstools. Sie fügen einen neuen „System-DSN“ hinzu. Ein System-DSN hat im Gegensatz zum „Benutzer-DSN“ den Vorteil, dass die Datenquelle, die Sie nun anlegen, für alle Benutzer des Systems zur Verfügung steht. Ein „Benutzer-DSN“ ist im Gegensatz dazu nur für den Benutzer sichtbar, der den Eintrag erstellt hat. © 2004 ACP Computer Aschersleben Seite 4 von 17 Nach Klick auf „Hinzufügen“ erhalten Sie den folgenden Dialog, in welchem Sie die Art der neuen Datenquelle festlegen, in unserem Fall ist das „MySQL ODBC“: Klicken Sie auf „Fertigstellen“, es folgt die Konfiguration der neuen Datenquelle. © 2004 ACP Computer Aschersleben Seite 5 von 17 mySQL Datenbank wählen und konfigurieren Folgende Angaben sind notwendig und werden hier kurz erläutert: Data Source Name Der Name der Verbindung (Datenquelle), so wird er später in der Zielanwendung sichtbar sein Description Eine kurze Beschreibung - zur Wiedererkennung in einem halben Jahr Host/Server Name or IP Name oder IP Adresse des Computers, auf dem der mySQL-Server läuft, der unsere Datenbank verwaltet, z.B. „localhost“ oder 127.0.0.1 für einen lokal installierten mySQL Server Database Name Der Name der Datenbank, hier also Ihre CAO-Datenbank User Der Name eines Benutzers, der mit CAO arbeitet und demzufolge berechtigt ist, Daten aus der MySQL Datenbank zu lesen Password Das Passwort dieses Benutzers. Sie tragen das Passwort und den Benutzer lediglich für einen Test der Erreichbarkeit des mySQL Servers ein. Mindestens das Passwort werden Sie anschließend löschen , denn mit einem System-DSN kann sich jeder Benutzer mit den Rechten anmelden, wie er Zugriff auf die mySQL Datenbank hat. Wenn wir hier die Benutzerdaten stehen lassen, wird jeder Windows-Benutzer diesen Datenbankzugriff auf den mySQL Server ohne Anmeldung erhalten. Dies ist generell ein Sicherheitsrisiko auf Mehrbenutzer Betriebssystemen! Ausnahmen bestätigen die Regel: Für einen „Benutzer-DSN“ kann man an dieser Stelle die Benutzer und Passwort Angaben mit Klick auf OK abspeichern, denn den unbefugten Zugriff auf die Datenbank haben Sie anderweitig ausgeschlossen (siehe oben!). © 2004 ACP Computer Aschersleben Seite 6 von 17 Mit Klick auf den Button „Test Data Source“ wird die eben erstellte Verbindung getestet. Im Erfolgsfall erscheint eine entsprechende Meldung. Wenn ein Fehler auftritt, müssen Sie die eben gemachten Einstellungen überprüfen und entsprechend korrigieren. Stellen Sie außerdem sicher, dass der Dienst des mySQL Servers tatsächlich gestartet und die Datenbank mitsamt Benutzereinstellungen korrekt konfiguriert sind. Nach Abnicken der Erfolgsmeldung ... ... löschen Sie die Angaben zu „User“ und „Passwort“ und bestätigen den Dialog mit „OK“. Nun ist die Datenquelle eingerichtet, wie anschließend im ODBC-Datenquellen-Administrator sichtbar: Der Button „Konfigurieren“ dient dazu, jederzeit Einstellungen an dieser Datenquelle zu ändern. Sie gelangen wieder zurück zu dem eben kennengelernten myODBC Konfigurationsdialog. Voila, die erste kleine Hürde ist geschafft! Sie haben soeben eine neue ODBC-Datenquelle eingerichtet, die jedem ODBC-fähigen Programm zur Verfügung stehen wird. © 2004 ACP Computer Aschersleben Seite 7 von 17 Die Datenquelle in ODBC fähigen Programmen verwenden MS Word 2000 Wird wegen MS-Query und weiterem, großem Aufwand hier nicht weiter beschrieben. Als Alternative bietet sich das kostenlose OpenOffice Paket an, an Hand dessen die ODBC Anbindung einfach ist und der hier ein eigenes Kapitel gewidmet ist. MS Word 2002 (Office XP) und Word 2003 Starten Sie Word, klicken Sie auf „Extras“, dann auf „Briefe und Sendungen“. Dort wählen Sie „Seriendruck Assistent“ bzw. „Serienbrieferstellung“ (Office 2003). Auf diese kleinen Unterschiede in den Bezeichnungen gehen wir im weiteren Verlauf nicht näher ein. Es erscheint der Assistent zum Einrichten des Seriendokumente. Sie stellen den Dokumententyp ein und bestätigen rechts mit „Weiter“. Wenn Sie irgendwann schon einmal eine Vorlage für ein Serienbrief erstellt haben, können Sie diese verwenden (Mit Vorlage beginnen bzw. Aktuelles Dokument verwenden). Nach Klick auf „Weiter“ gelangen Sie zur Auswahl der Adressen, die über die ODBC Datenquelle bereitgestellt wird. Im Assistenten wählen Sie den Menüpunkt „Durchsuchen“ („Vorhandene Liste verwenden wählen“, dann „Durchsuchen ...“). Es öffnet sich ein Fenster zur Auswahl der Datenquelle: © 2004 ACP Computer Aschersleben Seite 8 von 17 Sie legen eine neue Datenquelle an (Schaltfläche „Neue Quelle...“) und wählen diese Quelle im nächsten Fenster aus. Der passende Typ ist „ODBC DSN“. Die Schaltfläche „Weiter“ führt Sie zum Dialog für die Wahl der Datenquelle. Sie sehen hier die vorhin angelegte System-DSN und wählen diesen Eintrag. Nach Bestätigung mit „Weiter“ geben Sie Ihren mySQL Benutzernamen und das Passwort an und gelangen zum Auswahldialog mit einer Auflistung der mySQL Datenbanken und den darin enthaltenen Feldern. Für Sie ist die produktive CAODatenbank die richtige Wahl. Da Sie Adressdaten benötigen, wählen Sie „Mit einer ausgewählten Tabelle verbinden“ und selektieren die Tabelle „Adressen“ in der darunter erscheinenden Liste. © 2004 ACP Computer Aschersleben Seite 9 von 17 Nach einem Klick auf „Weiter“ werden Sie aufgefortert, einen Namen für die Datenquelle einzugeben. Word macht dazu einen Vorschlag, der aus dem Namen der Datenbank und der selektierten Tabelle besteht, z.B. „cao ADRESSEN“. Diese Verbindung wird nun gespeichert und bei späteren Vorgängen können Sie diese direkt öffnen und nutzen und brauchen nicht mehr den eben beschriebenen Weg zu gehen. Sie wird standardmäßig unter „...\Eigene Dateien\Eigene Datenquellen“ abgelegt, es kann jedoch jeder beliebige Speicherort angegeben werden. Es gibt zudem die Möglichkeit, das Passwort (Kennwort) in dieser Datei zu speichern. Das erspart die Eingabe bei späterer Verwendung der Verbindung und sollte, wie schon erwähnt, mit entsprechender Vorsicht behandelt werden, da jeder Benutzer, der Zugriff auf diese Datei hat, damit auch Zugriff auf die mySQL Datenbank erhält. © 2004 ACP Computer Aschersleben Seite 10 von 17 Die eben angelegte Datenbankverbindung läßt sich nun über die Datei mit den Einstellungsdaten direkt öffnen: Nach Öffnen der Verbindung und - je nach Einstellung „Passwort speichern“ folgendem Anmelden an die Datenbank - können Sie hier eine Vorauswahl der Empfänger tätigen. Sie tun das jetzt nicht und bestätigen mit „OK“: © 2004 ACP Computer Aschersleben Seite 11 von 17 Nun können Sie im Assistenten die gewählte Datenbankverbindung prüfen ... ... und setzen den Assistenten für Seriendokumente fort indem wir auf „Weiter: Schreiben Sie Ihren Brief...“ klicken. Der Rest ist eine Frage der Formatierung und des Einfügens der passenden Datenbankfelder in das Seriendokument. Sie können beispielsweise im Assistenten den Punkt „Weitere Elemente“ wählen und erhalten daraufhin eine Auswahlmaske mit den in der Tabelle enthaltenen Feldern. Dort wählen Sie die benötigten Felder aus. © 2004 ACP Computer Aschersleben Seite 12 von 17 Leider ist das in MSWord nicht so komfortabel gelöst wie in OpenOffice: Nach Auswahl eines Feldes, z.B. „NAME“, wird dieses in das Seriendokument übernommen. Die „STRASSE“ müßte nun in die nächste Zeile, aber Word läßt momentan keinen Zeilenumbruch zu. Man müßte den Dialog nun schließen, einmal ENTER für den Umbruch drücken, dann wieder rein in den Dialog etc. Aus diesem Grunde fügen wir die benötigten Felder einfach hintereinander ein und nach Fertigstellung navigieren wir den Cursor zwischen die Felder und fügen so den Umbruch usw. ein, bis es paßt. Für oft benötigte Dokumente bereiten Sie sich eine entsprechende Vorlage vor, wie beispielsweise im Bild „Nachher“ zu erkennen ist. Vorher: Nachher: Die nötigen Datenbankfelder sind nun im Dokument. Sie können sich vorab schon mal anschauen, was Sie erreicht haben: Dazu bestätigen Sie den Assistenten mit „Weiter: Vorschau auf Ihre Briefe“. Hier erhalten Sie eine Vorschau des eben produzierten. Die Platzhalter für die Datenbankfelder werden schon mit echten Daten gefüllt. Standardmäßig würde nun für jede CAO-Adresse ein Dokument gedruckt. Sie sollten aber die gewünschten Empfänger gezielt selektieren. Dies geschieht recht einfach über den Assistenten, so dass es keiner weiteren Erklärung bedarf. © 2004 ACP Computer Aschersleben Seite 13 von 17 OpenOffice.org 1.x und Sun StarOffice 6 Sie erstellen ein neues Seriendokument wie folgt: Wählen Sie im Menü unter „Extras“ den Punkt „Seriendruck“. Im folgenden Dialog wählen Sie aus, ob ein neues Dokument erstellt werden soll oder Sie ob das Dokument aus einer vorhandenen Vorlage erstellen möchten. Für die Übungszwecke reicht ein leeres Textdokument, ansonsten wählen Sie aus Ihrer Sammlung eine passende Vorlage. Die Datenquelle CAO-Adressen ist im System bereits bekannt, wir können sie ohne den bei Word üblichen Umweg direkt nutzen: © 2004 ACP Computer Aschersleben Seite 14 von 17 Im folgenden Dialog erscheint die bekannte Datenbankverbindung „CAO-Adressen“. Machen Sie die enthaltenen Tabellen mit einem Klick auf [+] sichtbar und selektieren Sie die Tabelle „ADRESSEN“. Markieren Sie nun nacheinander den benötigten Feldnamen und klicken Sie auf „Einfügen“. Im Unterschied zu MSWord haben Sie hier die Möglichkeit, die Datenfelder „on-the-fly“ zu formatieren. Klicken Sie dazu in das Dokument und formatieren Sie nach Wunsch. Wenn Sie damit fertig sind, fügen Sie das nächste Feld ein usw. © 2004 ACP Computer Aschersleben Seite 15 von 17 Im folgenden Dialog „Seriendruck“ können Sie die Arbeit mit der Auswahl der Empfänger fortsetzen und den Druck beginnen - vorausgesetzt, Sie haben eine passende Vorlage gewählt und den Brief mit entsprechendem Inhalt gefüllt. Andererseits brechen Sie den Dialog an dieser Stelle ab und rufen ihn später über den beschriebenen Weg erneut auf (Extras -> Seriendruck –> aus diesem Dokument). In diesem Dialog haben Sie über verschiedene Filter umfangreiche Möglichkeiten, bestimmte Adressen zu selektieren, beispielsweise nach PLZ-Gebiet. Auch das Sortieren nach Feldern zum besseren Auffinden ist problemlos möglich. Wenn Sie einzelne Adressen heraussuchen wollen, die sich nicht über ein Filterkriterium ansprechen lassen, so halten Sie bei der Auswahl die STRG-Taste gedrückt während Sie nach und nach in der Adresstabelle die Zeile anklicken: © 2004 ACP Computer Aschersleben Seite 16 von 17 StarOffice 5.2 Eine eigenen Anleitung ist hierfür nicht nötig. Die Vorgehensweise entspricht weitgehend der für OpenOffice beschriebenen Prozedur. Und ja, obwohl StarOffice mittlerweile ein paar Jährchen auf dem Buckel hat, läuft es immer noch sehr gut und war in Sachen Datenbankanbindung schon damals den Microsoft Produkten um Längen voraus. Schade nur, dass es mit der Übernahme von Sun viel von seiner Funktionalität (Terminplaner, Mail-Client, Newsreader) verloren hat. Vielleicht kommt's ja irgendwann wieder. Schlusswort Wir hoffen, diese Anleitung konnte Ihnen die Verwendung von ODBC Datenquellen etwas näher bringen. Die Grenze des Machbaren ist mit dieser Kurzanleitung natürlich längst nicht erreicht. Ebenso einfach lassen sich Daten in OpenOffice Calc oder MS Excel einfügen. Sie können kalkulieren, Statistiken, Diagramme erzeugen usw. Unter Verwendung der in beiden OfficePaketen integrierten Makro-Sprache scheint fast nichts unmöglich zu sein. Wir wünschen jedenfalls viel Erfolg und freuen uns über Feedback jeder Art. Danke! Nachtrag: Dieses Dokument wurde mit MS Word begonnen und mit OpenOffice Writer fertiggestellt, da sich MS Word, trotz gegenteiliger Beteuerungen und Presseberichte, permanent an Absatzformaten und Grafiken verschluckt. © 2004 ACP Computer Aschersleben Seite 17 von 17