Gespeicherte Prozeduren als Datenquelle

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Datenquellen und -ziele > Datenbanken und MapForce > Gespeicherte Prozeduren >

Gespeicherte Prozeduren als Datenquelle

In diesem Beispiel wird gezeigt, wie Sie eine Prozedur, die keine Input-Parameter hat und nur Daten aus der Datenbank abruft, aufrufen. Die gespeicherte Prozedur fungiert in diesem Szenario als Quellkomponente für das Mapping. Sie können damit abgerufene Daten auf jede andere von MapForce unterstützte Zielkomponente mappen. Wenn Sie eine gespeicherte Prozedur mit Input-Parametern aufrufen müssen, lesen Sie nach unter Gespeicherte Prozeduren mit Input und Output.

 

Erstellen wir zuerst die gespeicherte Demo-Prozedur in der Datenbank "AdventureWorks". Führen Sie zu diesem Zweck das unten stehende Skript an der Datenbank aus. Sie können dies entweder von einem Abfragefenster von Microsoft SQL Server Management Studio aus oder direkt auf dem Register DB-Abfrage von MapForce (siehe Anzeigen und Abfragen von Datenbanken) tun. Vergewissern Sie sich in jedem Fall, dass Ihr Datenbankbenutzerkonto Rechte zum Erstellen von gespeicherten Prozeduren hat.

 

CREATE PROCEDURE HumanResources.uspGetAllEmployees
AS
  SELECT LastName, FirstName, JobTitle, Department
  FROM HumanResources.vEmployeeDepartment

 

Mit der obigen gespeicherten Prozedur werden Mitarbeiterdaten aus der Ansicht vEmployeeDepartment zurückgegeben. In der folgenden Anleitung wird beschrieben, wie Sie ein Mapping erstellen, das die von dieser Prozedur zurückgegebenen Daten verarbeitet.

 

1.Stellen Sie in MapForce eine Verbindung zur Datenbank "AdventureWorks" her und fügen Sie die gespeicherte Prozedur zum Mapping hinzu, wie unter Hinzufügen von gespeicherten Prozeduren zum Mapping beschrieben. Vergewissern Sie sich, dass Ihr Datenbankbenutzerkonto Rechte zum Anzeigen und Ausführen von gespeicherten Prozeduren hat.
2.Klicken Sie neben der gespeicherten Prozedur auf die Schaltfläche Kontextmenü anzeigen mf_ic_storedproc_menu und wählen Sie den Befehl Nodes als Quelle anzeigen.

mf_sp_04

3.Klicken Sie nochmals auf die Schaltfläche Kontextmenü anzeigen mf_ic_storedproc_menu  und wählen Sie Datensatzstrukturen bearbeiten. Daraufhin wird das Dialogfeld "Datensatzstrukturen" angezeigt.

mf_sp_05

Wenn eine gespeicherte Prozedur während des Designs aufgerufen wird, kann dies (je nach Implementierung der Prozedur) Nebenwirkungen haben. Wenn die gespeicherte Prozedur zum Zeitpunkt des Designs nicht ausgeführt werden soll, klicken Sie nicht, wie in den folgenden Schritten beschrieben, auf Ausführen, sondern definieren Sie die erwartete Datensatzstruktur im Dialogfeld "Datensatzstrukturen", indem Sie Datensatzstrukturen und deren dazugehörige Spalten manuell hinzufügen. Verwenden Sie dazu im Dialogfeld "Datensatzstrukturen" die Schaltflächen Datensatz hinzufügen oder Spalte hinzufügen.

 

4.Klicken Sie auf Input-Parameter definieren und Prozedur aufrufen und klicken Sie anschließend auf OK. Daraufhin wird das Dialogfeld "Gespeicherte Prozedur auswerten" angezeigt.

mf_sp_06

5.Klicken Sie auf Ausführen und anschließend auf OK. Die Datensatzstruktur ("RS1") ist nun sowohl im Dialogfeld "Datensatzstrukturen" als auch im Mapping sichtbar.

mf_sp_07

6.Sie können zu diesem Zeitpunkt eine Zielkomponente, in die die abgerufenen Daten geschrieben werden sollen, hinzufügen. In diesem Beispiel werden die Daten in eine CSV-Datei geschrieben. Klicken Sie im Menü Einfügen auf Textdatei und fügen Sie eine CSV-Komponente zum Mapping hinzu. Nähere Informationen dazu finden Sie unter CSV und Textdateien.

mf_sp_08

Sie können nun eine Vorschau auf das Mapping anzeigen. Klicken Sie auf die Schaltfläche Ausgabe, um das Ergebnis des Mappings im Fenster Ausgabe zu sehen, z.B.:

mf_sp_09


© 2019 Altova GmbH