Flat File aus MS SQL Server exportieren
Das Beispiel zeigt wie mit Hilfe der beiden Adapter SqlServer Adapter und TextFile Adapter eine Textdatei (Flat File) aus einer MS SQL Server Datenbank exportiert wird.
Hinweis: Nach dem gleichen Prinzip funktioniert auch der CSV Import bzw. Export. Dazu müssen lediglich die Adapter der READ und WRITE Seite vertauscht werden.
Bitte führen Sie zuerst das Beispiel CSV Import MS SQL Server aus. Hier wird beschrieben wie eine Tabelle "Import" mittels einer CSV Textdatei befüllt wird. Diese Tabelle verwenden wir in diesem Beispiel um die Daten aus dem SQL Server in eine Textdatei (Flat File) formatiert mit festen Längen bzw. festen Breiten zu exportieren.
Die fertige Definition "export-sql-server.fhd" können Sie sich im Verzeichnis Examples\DE\SqlServerAdapter ansehen. Alle Beispiele sind im ZIP Archiv zum FlowHeater enthalten. Dieses Beispiel kann für die SQL Server Versionen 7.0 bis 2016 sowie den SQL Server Express Edition verwendet werden.
Import/Export Adapter auswählen
SqlServer Adapter" und für den WRITE Adapter "TextFile Adapter" ein.
Fangen wir an. Öffnen Sie den FlowHeater und klicken den Menübefehl "Neu" an um eine neue Definition zu erzeugen. Stellen Sie im folgenden Dialog für den READ Adapter "
SQL Server Export Datenquelle konfigurieren
Configurator für den READ Adapter und geben Sie den Servernamen für Ihre SQL Server Installation an, z.B. localhost. Es kann sein, dass Sie zusätzlich noch einen Instanznamen angeben müssen, dies ist aber von Ihrer SQL Server Installation abhängig. Nachdem der Servername angegeben wurde können Sie das Kombinationsfeld Datenbank aufklappen, es werden die auf dem angegeben SQL Server verfügbaren Datenbanken angezeigt. Wählen Sie hier die im vorherigen Beispiel erzeugte Datenbank FlowHeater aus.
Hinweis : Möchten Sie auf eine Bestätigen Sie den Dialog mit OK und öffnen anschließend den SQL Server Instanz zugreifen können Sie das über folgende Aufrufsyntax durchführen.z.B. Servername\Instanz
Ist Ihr SQL Server bzw. die Instanz über einen anderen Port als der Standard Port 1433 erreichbar müssen Sie die Portangabe mit einem Komma getrennt am Ende der Server Zeichenkette anfügen.z.B. Servername\Instanz,Port
SQL Server Felder und Datentypen
Wechseln Sie nun auf den Reiter "Felder / Datentypen" und klappen das Kombinationsfeld rechts neben Tables auf und wählen die Tabelle Import für unseren Export aus. Im Textfeld darunter wird automatisch der SQL Befehl "select * from import" eingetragen.
Hinweis: Hier können Sie auch komplexe SQL Skripte z.B. mit Joins eintragen sowie Abfragen/Views oder auch Prozeduren verwenden.
Klicken Sie anschließend auf den "Einlesen" Button (siehe rote Markierung). Dadurch weisen Sie den FlowHeater an die Schemainformationen wie Feldnamen, Datentypen, etc. aus der Datenbank zu lesen. Verlassen Sie anschließend den Dialog mit OK.
Export Felder automatisch verbinden
Öffnen Sie nun das Kontextmenü des Write Adapters (rechtsklick über den Eintrag "FlowHeater.Core.Adapter.TextFileAdapter") und wählen den Menüpunkt "Read Felder übernehmen" aus, es werden automatisch die Felder der READ Seite in die WRITE Seite eingefügt.
Wählen Sie nun die Funktion "Felder automatisch Verbinden" aus (siehe rote Markierung) und bestätigen den anschließenden Dialog mit OK. Ihr Bildschirm sollte jetzt ungefähr so aussehen wie oben dargestellt.
Flatfile Dateiname
Configurator für den TextFileAdapter und geben den Dateinamen "export.txt" an. Zusätzlich markieren Sie die Option "Erste Zeile enthält Feldnamen", sowie ändern die Option Abgrenzung auf "Feste Breite". Nach Auswahl der Option "Feste Breite" formatiert der FlowHeater bzw. der TextFile Adapter alle Felder standardmäßig auf eine Breite/Länge von 10 Zeichen. Der Dialog sollte jetzt wie unten Dargestellt aussehen.
Öffnen Sie nun den
Feldbreiten angeben
Wechseln Sie nun auf den Reiter "Felder / Datentypen" um weitere Feldformatierungen vornehmen zu können. Klicken Sie dazu nacheinander die einzelnen Felder durch und setzen die Feldbreiten entweder über das Textfeld Länge oder ziehen Sie einfach das die kleinen schwarzen Dreiecke (siehe rote Markierung) mit der Maus auf die gewünschte Länge/Breite. Geben Sie zusätzlich für das erste Feld die Ausrichtung Rechts bzw. Right an, hiermit geben wir an, dass wir das Feld Rechtsbündig ausgerichtet haben möchten.
Stellen Sie für die Feldbreiten folgend Werte ein. Bitte achten Sie in jedem Fall darauf, dass das Feld GebDat mit einer Länge größer 10 angegeben wird! Warum wird gleich noch näher beschrieben. Verlassen Sie den Dialog anschließend über OK.
Export starten
Test und Ausführen Dialog mit der F5 Taste (siehe unten) und führen die Definition im Testlauf aus.
Starten Sie den
Export Ergebnis im TextFile Viewer
TextFile Adapter öffnet sich mit folgender Ausgabe. Bitte beachten Sie, dass das Feld "GebDat" (siehe rote Markierung) mit Stunden und Minuten Formatiert ausgegeben wurde. Diese Formatierung wäre uns bei einer Feldbreite von 10 nicht aufgefallen! Um dies zu ändern gehen wir über den Configurator des TextFile Adapters und ändern den Datentyp vom Feld GebDat von DateTime auf nur Date.
Der integrierte TextFile Viewer vomFühren Sie die Definition erneut aus und schauen sich das Ergebnis an.