Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Oracle E-Business-Adapter macht generische Vorgänge wie ExecuteNonQuery, ExecuteReader und ExecuteScalar verfügbar. Sie können diese Vorgänge verwenden, um eine beliebige SQL-Anweisung in der Oracle-Datenbank auszuführen. Diese Vorgänge unterscheiden sich je nach Art der Antwort, die Sie für die SQL-Anweisung erhalten. Weitere Informationen dazu, wie der Adapter diese Vorgänge unterstützt, finden Sie unter Unterstützung für ExecuteNonQuery-, ExecuteReader- und ExecuteScalar-Vorgänge.
In diesem Thema wird veranschaulicht, wie Sie einen ExecuteReader-Vorgang mithilfe des Oracle E-Business-Adapters mit BizTalk Server ausführen. Sie können die gleichen In diesem Thema beschriebenen Prozeduren befolgen, um ExecuteNonQuery - und ExecuteScalar-Vorgänge auszuführen.
Aufrufen des ExecuteReader-Vorgangs für Oracle Database
Das Ausführen eines Vorgangs für eine Oracle-Datenbank mithilfe des Oracle E-Business-Adapters mit BizTalk Server umfasst prozedurale Aufgaben, die unter Bausteine zum Erstellen von Oracle E-Business Suite-Anwendungen beschrieben sind. Um den ExecuteReader-Vorgang für die Oracle-Datenbank aufzurufen, lauten die folgenden Aufgaben:
Erstellen Sie ein BizTalk-Projekt, und generieren Sie ein Schema für den ExecuteReader-Vorgang .
Erstellen Sie Nachrichten im BizTalk-Projekt zum Senden und Empfangen von Nachrichten aus der Oracle-Datenbank.
Erstellen Sie eine Orchestrierung, um den Vorgang für die Oracle-Datenbank aufzurufen.
Erstellen sie das BizTalk-Projekt, und stellen Sie es bereit.
Konfigurieren Sie die BizTalk-Anwendung, indem Sie physische Sende- und Empfangsports erstellen.
Starten Sie die BizTalk-Anwendung.
Dieses Thema enthält Anweisungen zum Ausführen dieser Aufgaben.
Generieren eines Schemas
In diesem Thema wird veranschaulicht, wie der ExecuteReader-Vorgang für eine Oracle-Datenbank mithilfe des Oracle E-Business-Adapters mit BizTalk Server aufgerufen wird. Der ExecuteReader-Vorgang verwendet eine beliebige SQL-Anweisung als Parameter und gibt das Resultset für den Vorgang als Array von DataSet zurück. Für dieses Thema führen wir eine SELECT-Anweisung für die ACCOUNTACTIVITY-Tabelle mithilfe des ExecuteReader-Vorgangs aus. Die TABELLE ACCOUNTACTIVITY wird erstellt, indem die skripts ausgeführt werden, die mit den Beispielen bereitgestellt werden. Weitere Informationen zum Skript finden Sie unter Beispiele.
Um zu veranschaulichen, wie der ExecuteReader-Vorgang aufgerufen wird, wird ein Schema für den ExecuteReader-Vorgang generiert. Sie müssen ein BizTalk-Projekt erstellen und das Add-In Consume Adapter Service verwenden, um das Schema zu generieren. Weitere Informationen zum Generieren von Schemas finden Sie unter Abrufen von Metadaten für Oracle E-Business Suite-Vorgänge in Visual Studio.
Definieren von Nachrichten und Nachrichtentypen
Das Schema, das Sie zuvor generiert haben, beschreibt die "Typen", die für die Nachrichten in der Orchestrierung erforderlich sind. Eine Nachricht ist normalerweise eine Variable, deren Typ durch das entsprechende Schema definiert wird. Sie müssen nun Nachrichten für die Orchestrierung erstellen und sie mit Schemas verknüpfen, die Sie im vorherigen Schritt generiert haben.
So erstellen Sie Nachrichten und Verknüpfen mit dem Schema
Fügen Sie dem BizTalk-Projekt eine Orchestrierung hinzu. Klicken Sie Projektmappen-Explorer mit der rechten Maustaste auf den BizTalk-Projektnamen, zeigen Sie auf Hinzufügen, und klicken Sie dann auf Neues Element. Geben Sie einen Namen für die BizTalk-Orchestrierung ein, und klicken Sie dann auf Hinzufügen.
Öffnen Sie das Fenster Orchestrierungsansicht des BizTalk-Projekts, wenn dieses nicht bereits geöffnet ist. Klicken Sie hierzu auf Ansicht, zeigen Sie auf Andere Fenster, und klicken Sie dann auf Orchestrierungsansicht.
Klicken Sie in der Orchestrierungsansicht mit der rechten Maustaste auf Nachrichten, und klicken Sie dann auf Neue Nachricht.
Klicken Sie mit der rechten Maustaste auf die neu erstellte Nachricht, und wählen Sie dann Eigenschaftenfenster aus.
Gehen Sie im Bereich Eigenschaften für die Message_1 wie folgt vor:
Option Aufgabe Bezeichner Geben Sie Request
einNachrichtentyp Erweitern Sie in der Dropdownliste Schemas, und wählen Sie dann Execute_Reader.GenericOperation.ExecuteReader aus, wobei Execute_Reader der Name Ihres BizTalk-Projekts ist. GenericOperation ist das Schema, das für den ExecuteReader-Vorgang generiert wird. Wiederholen Sie Schritt 2, um eine neue Nachricht zu erstellen. Gehen Sie im Bereich Eigenschaften für die neue Nachricht wie folgt vor:
Option Aufgabe Bezeichner Geben Sie Response
einNachrichtentyp Erweitern Sie in der Dropdownliste Schemas, und wählen Sie dann Execute_Reader.GenericOperation.ExecuteReaderResponse aus.
Einrichten der Orchestrierung
Sie müssen eine BizTalk-Orchestrierung erstellen, um BizTalk Server zum Ausführen eines Vorgangs für die Oracle-Datenbank zu verwenden. Bei dieser Orchestrierung legen Sie eine Anforderungsnachricht an einem definierten Empfangsspeicherort ab. Der Oracle E-Business-Adapter nutzt diese Nachricht und übergibt sie an die Oracle-Datenbank. Die Antwort aus der Oracle-Datenbank wird an einem anderen Speicherort gespeichert. Eine typische Orchestrierung zum Aufrufen generischer Vorgänge wie ExecuteReader würde Folgendes enthalten:
Senden und Empfangen von Shapes zum Senden und Empfangen von Nachrichten aus einer Oracle-Datenbank.
Ein bidirektionales Empfangsport zum Senden und Empfangen von Nachrichten aus einer Oracle-Datenbank.
Ein unidirektionale Sendeport zum Senden einer Antwort aus der Oracle-Datenbank an einen Ordner.
Eine Beispielorchestrierung zum Aufrufen eines ExecuteReader-Vorgangs sieht wie folgt aus:
Hinzufügen von Nachrichten-Shapes
Sie müssen die folgenden Eigenschaften für die einzelnen Nachrichtenformen konfigurieren. Die in der Spalte Shape aufgeführten Namen entsprechen den Namen der Nachrichtenformen, die in der gerade erwähnten Orchestrierung angezeigt werden.
Form | Shape-Typ | Eigenschaften |
---|---|---|
ReceiveMessage | Empfangen | – Legen Sie Name auf ReceiveMessage fest. – Legen Sie Activate auf True fest. |
SendMessage | Send | – Name aufSendMessage festlegen |
ReceiveResponse | Empfangen | – Name aufReceiveResponse festlegen – Legen Sie Activate auf False fest. |
SendResponse | Send | – Legen Sie Name auf SendResponse fest. |
Hinzufügen von Ports
Konfigurieren Sie für jeden logischen Port die Eigenschaften in der folgenden Tabelle. Die in der Spalte Port aufgeführten Namen entsprechen den Namen der Ports, die in der Orchestrierung angezeigt werden.
Port | Eigenschaften |
---|---|
MessageIn | – Bezeichner auf MessageIn festlegen – Legen Sie Type auf MessageInType fest. – Festlegen des Kommunikationsmusters auf Unidirektionale – Festlegen der Kommunikationsrichtung auf "Empfangen" |
LOBPort | – Bezeichner auf LOBPort festlegen – Legen Sie Type auf LOBPortType fest. - Festlegen des Kommunikationsmusters auf Anforderungsantwort - Festlegen der Kommunikationsrichtung auf Senden/Empfangen |
ResponseOut | – Festlegen des Bezeichners auf ResponseOut – Festlegen von Typ auf ResponseOutType - Festlegen des Kommunikationsmusters auf unidirektionales Muster - Kommunikationsrichtung auf Senden festlegen |
Angeben von Nachrichten für Aktions-Shapes und Verbinden mit Ports
In der folgenden Tabelle werden die Eigenschaftswerte angegeben, um Nachrichten für Aktionsformen anzugeben und die Nachrichten mit den Ports zu verknüpfen. Die in der Spalte Shape aufgeführten Namen entsprechen den Namen der Nachrichtenformen, die im Orchestrierungsdiagramm weiter oben angezeigt wurden.
Nachdem Sie diese Eigenschaften konfiguriert haben, sind die Nachrichtenformen und -ports verbunden, und Die Orchestrierung ist abgeschlossen.
Anschließend müssen Sie die BizTalk-Lösung erstellen und in BizTalk Server bereitstellen. Weitere Informationen finden Sie unter Erstellen und Ausführen von Orchestrierungen.
Form | Eigenschaften |
---|---|
ReceiveMessage | - Nachricht aufAnforderung festlegen – Festlegen von Vorgang auf MessageIn.Exec_Reader.Request |
SendMessage | - Nachricht aufAnforderung festlegen – Festlegen von Vorgang auf LOBPort.Exec_Reader.Request |
ReceiveResponse | – Nachricht aufAntwort festlegen – Festlegen von Operation auf LOBPort.Exec_Reader.Response |
SendResponse | – Nachricht aufAntwort festlegen – Festlegen von Vorgang auf ResponseOut.Exec_Reader.Request |
Nachdem Sie diese Eigenschaften angegeben haben, sind die Nachrichtenformen und -ports verbunden, und Die Orchestrierung ist abgeschlossen.
Sie müssen jetzt die BizTalk-Lösung erstellen und in BizTalk Server bereitstellen. Weitere Informationen finden Sie unter Erstellen und Ausführen von Orchestrierungen.
Konfigurieren der BizTalk-Anwendung
Nachdem Sie das BizTalk-Projekt bereitgestellt haben, wird die zuvor erstellte Orchestrierung im Bereich Orchestrierung in der BizTalk Server-Verwaltungskonsole aufgeführt. Sie müssen die BizTalk Server-Verwaltungskonsole verwenden, um die Anwendung zu konfigurieren. Eine exemplarische Vorgehensweise finden Sie unter Exemplarische Vorgehensweise: Bereitstellen einer einfachen BizTalk-Anwendung.
Das Konfigurieren einer Anwendung umfasst Folgendes:
Auswählen eines Hosts für die Anwendung.
Zuordnen der Ports, die Sie in Ihrer Orchestrierung erstellt haben, zu physischen Ports in der BizTalk Server-Verwaltungskonsole. Für diese Orchestrierung müssen Sie Folgendes ausführen:
Definieren Sie einen Speicherort auf der Festplatte und einen entsprechenden Dateiport, an dem Sie eine Anforderungsnachricht ablegen. Die BizTalk-Orchestrierung nutzt die Anforderungsnachricht und sendet sie an die Oracle-Datenbank.
Definieren Sie einen Speicherort auf der Festplatte und einen entsprechenden Dateiport, an dem die BizTalk-Orchestrierung die Antwortnachricht mit der Antwort aus der Oracle-Datenbank entfernt.
Definieren Sie einen physischen WCF-Custom oder WCF-OracleEBS Sendeport, um Nachrichten an die Oracle-Datenbank zu senden. Sie müssen auch die Aktion im Sendeport angeben. Informationen zum Erstellen von Sendeports finden Sie unter Manuelles Konfigurieren einer physischen Portbindung an den Oracle E-Business-Adapter .
Wichtig
Im Rahmen generischer Vorgänge müssen Sie den Anwendungskontext festlegen, wenn Sie Vorgänge für Objekte ausführen, z. B. gespeicherte Prozeduren, Funktionen, Schnittstellentabellen oder Schnittstellenansichten, die zu einer Oracle E-Business Suite-Anwendung gehören, den Anwendungskontext festlegen, indem Sie die erforderlichen Bindungseigenschaften angeben. Weitere Informationen zum Festlegen des Anwendungskontexts finden Sie unter Festlegen des Anwendungskontexts.
Sie können den Anwendungskontext festlegen, indem Sie entweder die Bindungseigenschaften angeben oder die Vom Oracle E-Business-Adapter verfügbar gemachten Nachrichtenkontexteigenschaften festlegen. Anweisungen zum Festlegen der Bindungseigenschaften finden Sie unter Konfigurieren der Bindungseigenschaften für Oracle E-Business Suite. Anweisungen zum Festlegen des Anwendungskontexts mithilfe von Nachrichtenkontexteigenschaften finden Sie unter Konfigurieren des Anwendungskontexts mithilfe von Nachrichtenkontexteigenschaften in Oracle E-Business Suite.
Hinweis
Beim Generieren des Schemas mithilfe des BizTalk-Projekt-Add-Ins "Verbrauchadapterdienst" wird auch eine Bindungsdatei erstellt, die Informationen zu den Ports und den Aktionen enthält, die für diese Ports festgelegt werden sollen. Sie können diese Bindungsdatei aus der BizTalk Server-Verwaltungskonsole importieren, um Sendeports (für ausgehende Anrufe) zu erstellen oder Ports (für eingehende Anrufe) zu empfangen. Weitere Informationen finden Sie unter Konfigurieren einer physischen Portbindung mithilfe einer Portbindungsdatei für Oracle E-Business Suite.
Starten der Anwendung
Sie müssen die BizTalk-Anwendung starten, bevor Sie den ExecuteReader-Vorgang für die Oracle-Datenbank aufrufen. Anweisungen zum Starten einer BizTalk-Anwendung finden Sie unter Starten einer Orchestrierung.
Stellen Sie in dieser Phase Folgendes sicher:
Der FILE-Empfangsport zum Empfangen von Anforderungsmeldungen für die Orchestrierung wird ausgeführt.
Der FILE-Sendeport zum Empfangen der Antwortnachrichten von der Orchestrierung wird ausgeführt.
Der WCF-Custom oder WCF-OracleEBS Sendeport zum Senden von Nachrichten an die Oracle-Datenbank wird ausgeführt.
Die BizTalk-Orchestrierung für den Vorgang wird ausgeführt.
Ausführen des Vorgangs
Nachdem Sie die Anwendung ausgeführt haben, müssen Sie eine Anforderungsnachricht an den FILE-Empfangsspeicherort ablegen. Das Schema für die Anforderungsnachricht muss dem Schema für den executeReader-Vorgang entsprechen, den Sie zuvor generiert haben. Beispielsweise lautet die Anforderungsmeldung zum Ausführen einer SELECT-Anweisung mithilfe eines ExecuteReader-Vorgangs :
<ExecuteReader xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/GenericOperation/">
<Query>SELECT * FROM ACCOUNTACTIVITY</Query>
</ExecuteReader>
Weitere Informationen zum Anforderungsmeldungsschema zum Aufrufen eines ExecuteReader-Vorgangs mithilfe des Oracle E-Business-Adapters finden Sie unter Nachrichtenschemas für ExecuteReader -, ExecuteScalar- und ExecuteNonQuery-Vorgänge.
Die Orchestrierung nutzt die Nachricht und sendet sie an die Oracle-Datenbank. Die Antwort aus der Oracle-Datenbank wird am anderen FILE-Speicherort gespeichert, der als Teil der Orchestrierung definiert ist. Die Antwort für den ExecuteReader-Vorgang enthält ein Resultset als DataSet. Die Antwort der Oracle-Datenbank für die vorherige Anforderungsnachricht lautet beispielsweise:
<?xml version="1.0" encoding="utf-8" ?>
<ExecuteReaderResponse xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/GenericOperation/">
<ExecuteReaderResult>
<xs:schema id="NewDataSet" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element msdata:IsDataSet="true" name="NewDataSet">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="NewTable">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="TID" type="xs:decimal" />
<xs:element minOccurs="0" name="ACCOUNT" type="xs:decimal" />
<xs:element minOccurs="0" name="AMOUNT" type="xs:decimal" />
<xs:element minOccurs="0" name="DESCRIPTION" type="xs:string" />
<xs:element minOccurs="0" name="TRANSDATE" type="xs:dateTime" />
<xs:element minOccurs="0" name="PROCESSED" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<NewTable>
<TID>1</TID>
<ACCOUNT>100001</ACCOUNT>
<AMOUNT>500</AMOUNT>
<DESCRIPTION />
<TRANSDATE>2008-08-04T13:04:20</TRANSDATE>
<PROCESSED>n</PROCESSED>
</NewTable>
<NewTable>
......
......
</NewTable>
......
......
</NewDataSet>
</diffgr:diffgram>
</ExecuteReaderResult>
</ExecuteReaderResponse>
Bewährte Methoden
Nachdem Sie das BizTalk-Projekt bereitgestellt und konfiguriert haben, können Sie Konfigurationseinstellungen in eine XML-Datei namens bindungsdatei exportieren. Nachdem Sie eine Bindungsdatei generiert haben, können Sie die Konfigurationseinstellungen aus der Datei importieren, sodass Sie keine Elemente wie die Sende- und Empfangsports für dieselbe Orchestrierung erstellen müssen. Weitere Informationen zu Bindungsdateien finden Sie unter Wiederverwenden von Adapterbindungen mit Oracle E-Business Suite.
Weitere Informationen
Entwickeln von BizTalk-Anwendungen mithilfe des Oracle E-Business Suite-Adapters