共用方式為


使用 Oracle E-Business Suite 在介面資料表和介面檢視上插入、更新、刪除或選取

Oracle E-Business 配接器會提供一組標準作業,例如插入、更新、刪除、在介面資料表和檢視上選取。 本主題提供如何使用配接器執行這些作業的指示。 如需配接器如何支援這些作業的詳細資訊,請參閱 介面資料表和介面檢視上的作業。 如需這些作業之 SOAP 訊息結構的相關資訊,請參閱 插入、更新、刪除和選取作業的訊息架構

注意

配接器也會針對包含 BLOB、CLOB、NCLOB 和 BFILE 等大型資料類型的資料表和檢視公開特定作業。 如需這類作業的詳細資訊,請參閱 介面資料表、介面檢視、資料表和包含 LOB 資料的檢視上的作業。 如需如何使用 BizTalk Server 對具有大型資料類型的資料表和資料行執行作業的指示,請參閱使用 WCF 服務模型在 Oracle E-Business Suite 中完成具有大型資料類型之資料表的作業

如何在 Oracle E-Business Suite 上執行基本作業

搭配使用 Oracle E-Business 配接器搭配BizTalk Server在 Oracle E-Business Suite 上執行作業牽涉到建立 Oracle E-Business Suite 應用程式的建置組塊中所述的程式工作。 若要在 Oracle E-Business Suite 中的資料表和檢視上執行插入、更新、刪除或選取作業,這些工作包括:

  1. 建立 BizTalk 專案,並針對您想要在介面資料表或檢視表上叫用的作業產生架構。

  2. 在 BizTalk 專案中建立訊息,以便從 Oracle E-Business Suite 傳送和接收訊息。

  3. 建立協調流程以叫用介面資料表或檢視表上的作業。

  4. 建置和部署 BizTalk 專案。

  5. 藉由建立實體傳送和接收埠來設定 BizTalk 應用程式。

  6. 啟動 BizTalk 應用程式。

    本主題提供執行這些工作的指示。

產生架構

本主題示範如何在 Oracle E-Business Suite 的 AR_ARCHIVE_PURGE_INTERIM 介面資料表中插入記錄,以執行基本插入、更新、刪除或選取作業。 此介面資料表可在 Oracle E-Business Suite 的 [已發行者 ] 應用程式中取得。

為了示範如何插入記錄,會針對AR_ARCHIVE_PURGE_INTERIM資料表的 Insert 作業產生架構。 您必須建立 BizTalk 專案,並使用取用配接器服務增益集來產生架構。 如需如何產生架構的詳細資訊,請參閱 在 Visual Studio 中擷取 Oracle E-Business Suite Operations 的中繼資料

定義訊息和訊息類型

您稍早產生的架構描述協調流程中訊息所需的「類型」。 訊息通常是變數,也就是對應架構所定義的類型。 您現在必須建立協調流程的訊息,並將其連結至您在上一個步驟中產生的架構。

  1. 將協調流程新增至 BizTalk 專案。 從 方案總管,以滑鼠右鍵按一下 BizTalk 專案名稱,指向 [新增],然後按一下 [新增專案]。 輸入 BizTalk 協調流程的名稱,然後按一下 [ 新增]。

  2. 如果 BizTalk 專案尚未開啟,請開啟 [協調流程檢視] 視窗。 若要這樣做,請按一下 [ 檢視],指向 [其他視窗],然後按一下 [ 協調流程檢視]。

  3. 在 [協調流程檢視] 中,以滑鼠右鍵按一下 [ 訊息],然後按一下 [ 新增訊息]。

  4. 以滑鼠右鍵按一下新建立的訊息,然後選取 [ 屬性視窗]。

  5. Message_1的 [屬性] 窗格中,執行下列動作:

    使用 作法
    識別碼 輸入 Request
    訊息類型 從下拉式清單中,展開 [ 架構],然後選取 [InsertInterfaceTable.OracleEBSBinding.Insert],其中 InsertInterfaceTable 是您 BizTalk 專案的名稱。 OracleEBSBinding 是針對AR_ARCHIVE_PURGE_INTERIM資料表上的 Insert 作業所產生的架構。
  6. 重複步驟 2 以建立新的訊息。 在新訊息的 [ 屬性 ] 窗格中,執行下列動作:

    使用 作法
    識別碼 輸入 Response
    訊息類型 從下拉式清單中,展開 [ 架構],然後選取 [InsertInterfaceTable.OracleEBSBinding.InsertResponse]。

設定協調流程

您必須建立 BizTalk 協調流程,才能使用BizTalk Server在 Oracle E-Business Suite 上執行作業。 在此協調流程中,您會在定義的接收位置卸載要求訊息。 Oracle E-Business 配接器會取用此訊息,並將其傳遞至 Oracle E-Business Suite。 Oracle E-Business Suite 的回應會儲存至另一個位置。 在 Oracle 資料庫上執行基本資料表作業的一般協調流程會包含:

  • 傳送和接收圖形,以將訊息傳送至 Oracle 資料庫並接收回應。

  • 單向接收埠,用來接收傳送至 Oracle 資料庫的要求訊息。

  • 雙向傳送埠,將要求訊息傳送至 Oracle 資料庫並接收回應。

  • 單向傳送埠,將來自 Oracle 資料庫的回應傳送至資料夾。

    選取作業的範例協調流程如下所示:

    將資料插入介面資料表的協調流程

新增訊息圖形

請確定您為每個訊息圖形指定下列屬性。 Shape 資料行中列出的名稱是訊息圖形的名稱,如剛才提到的協調流程所示。

圖形 圖形類型 屬性
ReceiveMessage 接收 - 將 名稱 設定為 ReceiveMessage
- 將 Activate 設定為 True
SendMessage 傳送 - 將 [名稱] 設定為 SendMessage
ReceiveResponse 接收 - 將 Name 設定為 ReceiveResponse
- 將 Activate 設定為 False
SendResponse 傳送 - 將 [名稱] 設定為 SendResponse

新增埠

請確定您為每個邏輯埠指定下列屬性。 [埠] 資料行中所列的名稱是協調流程中顯示的埠名稱。

連接埠 屬性
MessageIn - 將 識別碼 設定為 MessageIn
- 將 類型 設定為 MessageInType
- 將 通訊模式 設定為 單向
- 將 通訊方向 設定為 接收
LOBPort - 將 識別碼 設定為 LOBPort
- 將 Type 設定為 LOBPortType
- 將 通訊模式 設定為 Request-Response
- 將 通訊方向 設定為 Send-Receive
ResponseOut - 將 識別碼 設定為 ResponseOut
- 將 [類型] 設定為 ResponseOutType
- 將 通訊模式 設定為 單向
- 設定要傳送的通訊方向

指定動作圖形的訊息,並將其連接到埠

下表指定屬性及其值,您應該設定為指定動作圖形的訊息,以及將訊息連結至埠。 Shape 資料行中所列的名稱是如先前所述協調流程中顯示的訊息圖形名稱。

圖形 屬性
ReceiveMessage - 將 訊息 設定為 要求
- 將 作業 設定為 MessageIn.Insert.Request
SendMessage - 將 訊息 設定為 要求
- 將 作業 設定為 LOBPort.Insert.Request
ReceiveResponse - 將 訊息 設定為 回應
- 將 作業 設定為 LOBPort.Insert.Response
SendResponse - 將 訊息 設定為 回應
- 將 作業 設定為 ResponseOut.Insert.Request

指定這些屬性之後,訊息圖形和埠就會連線,而且您的協調流程已完成。

您現在必須建置 BizTalk 解決方案,並將其部署至BizTalk Server。 如需詳細資訊,請參閱 建置和執行協調流程

設定 BizTalk 應用程式

部署 BizTalk 專案之後,您稍早建立的協調流程會列在 BizTalk Server 管理主控台的 [協調流程] 窗格底下。 您必須使用 BizTalk Server 管理主控台來設定應用程式。 如需逐步解說,請參閱 逐步解說:部署基本 BizTalk 應用程式

設定應用程式牽涉到:

  • 選取應用程式的主機。

  • 將您在協調流程中建立的埠對應至 BizTalk Server 管理主控台中的實體埠。 針對此協調流程,您必須:

    • 定義硬碟上的位置,以及您將卸載要求訊息的對應檔案埠。 BizTalk 協調流程會取用要求訊息,並將其傳送至 Oracle E-Business Suite。

    • 定義硬碟上的位置和對應的檔案埠,BizTalk 協調流程將會卸載包含 Oracle E-Business Suite 回應的回應訊息。

    • 定義實體 WCF-Custom 或 WCF-OracleEBS 傳送埠,以將訊息傳送至 Oracle E-Business Suite。 您也必須在傳送埠中指定動作。 如需如何建立埠的資訊,請參閱 手動設定實體埠系結至 Oracle E-Business 配接器

      若要使用 Oracle E-Business 配接器在介面資料表或介面檢視上執行作業,您必須設定叫用作業的正確應用程式內容。 Oracle E-Business 配接器會提供特定系結屬性,以指定任何作業的應用程式內容。 您必須在介面資料表上用來執行作業的 WCF-Custom 或 WCF-OracleEBS 埠上設定這些系結屬性。

      • 如果 ClientCredentialType 系結屬性設定為 Database,則必須指定下列系結屬性來設定應用程式內容。

        Binding 屬性
        OracleUserName 指定 Oracle E-Business Suite 使用者的名稱。 當 Oracle E-Business 配接器連接到 Oracle E-Business Suite 時,不會保留您為 OracleUserName 系結屬性輸入的值大小寫。 使用者名稱會使用 SQL*Plus 的標準規則傳遞至 Oracle E-Business Suite。 不過,如果您想要保留使用者名稱的大小寫,或想要輸入包含特殊字元的使用者名稱,則必須在雙引號內指定值。
        OraclePassword Oracle E-Business Suite 使用者的密碼。 當 Oracle E-Business 配接器連接到 Oracle E-Business Suite 時,不會保留您為 OraclePassword 系結 屬性輸入的值大小寫。 密碼會使用 SQL*Plus 的標準規則傳遞至 Oracle E-Business Suite。 不過,如果您想要保留密碼的大小寫,或想要輸入包含特殊字元的密碼,則必須在雙引號內指定值。
        OracleEBSResponsibilityName 與 Oracle E-Business Suite 使用者相關聯的責任。
      • 如果 ClientCredentialType 系結屬性設定為 EBusiness,您必須已在建立連線時指定 Oracle E-Business 認證。 在這種情況下,您只能指定 OracleEBSResponsibilityName 系結屬性的值。

        如需不同系結屬性的詳細資訊,請參閱 閱讀 BizTalk Adapter for Oracle E-Business Suite 系結屬性。 如需配接器如何支援設定應用程式內容的詳細資訊,請參閱 設定應用程式內容

      注意

      您可以藉由指定系結屬性,或設定 Oracle E-Business 配接器所公開的訊息內容屬性,來設定應用程式內容。 如需如何設定系結屬性的指示,請參閱 設定 Oracle E-Business Suite 的系結屬性。 如需如何使用訊息內容屬性設定應用程式內容的指示,請參閱 在 Oracle E-Business Suite 中使用訊息內容屬性設定應用程式內容

      注意

      使用取用配接器服務 BizTalk 專案增益集產生架構也會建立系結檔案,其中包含要針對這些埠設定的埠和動作的相關資訊。 您可以從 BizTalk Server 管理主控台匯入此系結檔案,以建立輸出通話的傳送埠 () ,或針對輸入呼叫) 接收埠 (。 如需詳細資訊,請參閱 使用埠系結檔案設定實體埠系結至 Oracle E-Business Suite

啟動應用程式

您必須啟動 BizTalk 應用程式,才能將記錄插入AR_ARCHIVE_PURGE_INTERIM介面資料表。 如需啟動 BizTalk 應用程式的指示,請參閱 如何啟動協調流程

在這個階段,請確定:

  • 要接收協調流程要求訊息的 FILE 接收埠正在執行。

  • 從協調流程接收回應訊息的 FILE 傳送埠正在執行。

  • WCF-Custom 或 WCF-OracleEBS 傳送埠以將訊息傳送至 Oracle E-Business Suite 正在執行。

  • 作業的 BizTalk 協調流程正在執行。

執行作業

執行應用程式之後,您必須將要求訊息卸載至 FILE 接收位置。 要求訊息的架構必須符合您稍早產生的 Insert 作業架構。 例如,從 AR_ARCHIVE_PURGE_INTERIM 介面資料表中選取所有記錄的要求訊息為:

<Insert xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/InterfaceTables/AR/AR/AR_ARCHIVE_PURGE_INTERIM">  
  <RECORDSET>  
    <InsertRecord xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/TableViewRecord/AR/AR_ARCHIVE_PURGE_INTERIM">  
      <TRX_ID>001</TRX_ID>  
      <RELATED_ID>002</RELATED_ID>  
    </InsertRecord>  
  </RECORDSET>    
</Insert>  

此要求訊息會將記錄插入AR_ARCHIVE_PURGE_INTERIM介面資料表。 如需使用 Oracle E-Business 配接器在 Oracle E-Business Suite 上執行基本 DML 作業之要求訊息架構的詳細資訊,請參閱 插入、更新、刪除和選取作業的訊息架構

針對簡單的資料行,例如在上述要求訊息中,您也可以使用 InlineValue 屬性。 如需 InlineValue 屬性的詳細資訊,請參閱 介面資料表和介面檢視之作業中的插入作業描述。

例如,具有內嵌值的上述要求訊息會類似下列內容:

<Insert xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/InterfaceTables/AR/AR/AR_ARCHIVE_PURGE_INTERIM">  
  <RECORDSET>  
    <InsertRecord xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/TableViewRecord/AR/AR_ARCHIVE_PURGE_INTERIM">  
      <TRX_ID InlineValue="(Select TRX_ID FROM table_name)">001</TRX_ID>  
      <RELATED_ID>002</RELATED_ID>  
    </InsertRecord>  
  </RECORDSET>    
</Insert>  

在此要求訊息中,會從另一個資料表擷取TRX_ID資料行的值。 因此,即使將 「001」 指定為 TRX_ID 的值,針對 InlineValue 屬性指定的 SELECT 語句值也會插入資料表中。

協調流程會取用訊息,並將其傳送至 Oracle E-Business Suite。 Oracle E-Business Suite 的回應會儲存在定義為協調流程一部分的其他 FILE 位置。 例如,上述要求訊息的 Oracle E-Business Suite 回應如下:

<?xml version="1.0" encoding="utf-8" ?>   
<InsertResponse xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/InterfaceTables/AR/AR/AR_ARCHIVE_PURGE_INTERIM">  
  <InsertResult>1</InsertResult>   
</InsertResponse>  

回應包含插入資料表的資料列數目。

最佳做法

部署並設定 BizTalk 專案之後,您可以將組態設定匯出至稱為系結檔案的 XML 檔案。 產生系結檔案之後,您可以從檔案匯入組態設定,因此您不需要為相同的協調流程建立傳送埠和接收埠等專案。 如需系結檔案的詳細資訊,請參閱 使用 Oracle E-Business Suite 重複使用配接器系結

另請參閱

使用 Oracle E-Business Suite 配接器開發 BizTalk 應用程式