共用方式為


使用 Siebel 配接器叫用整合物件的 Business Service 方法

Siebel 配接器可讓配接器用戶端叫用使用整合物件的商務服務方法。 這些商務服務通常具有「階層」資料類型的 IN、OUT 或 IN OUT 參數,以傳送或接收整合物件資料。

Siebel 配接器會將這些階層類型公開為字串。 這些字串值基本上是封裝在 XML CDATA 區段中的 XML 字串。 XML 字串與配接器用戶端嘗試傳送或接收之整合物件的 XML 架構相容。

根據本主題的範例

根據本主題的範例 SiebelAdapterIntegrationObjects 也會隨附 BizTalk 配接器套件。 如需詳細資訊,請參閱 Siebel 配接器的範例

建立協調流程以使用整合物件叫用商務服務方法

建立協調流程以叫用採用整合物件參數的商務服務方法,類似于叫用任何其他商務服務的協調流程,如使用 BizTalk Server 和 Siebel 配接器叫用商務服務方法中所述。

差異在於您針對協調流程卸載的要求訊息。 此差異是因為下列原因:

  • 要求訊息的架構不同,因為您叫用不同的商務服務。

  • 要求訊息包含整合物件的 XML 字串。 此 XML 會封裝在 CDATA 區段中。 您必須先產生整合物件的架構,然後建立符合架構的 XML。 此 XML 必須在傳送至配接器的要求訊息的 CDATA 區段中傳遞。

    在您產生符合整合物件架構的 XML 並包含在要求訊息中之後,您必須在 FILE 位置卸載要求訊息,就像對任何其他協調流程所做的一樣。 在其他 FILE 位置中尋找回應訊息。

使用 Integration Objects 叫用 Business Service 的要求和回應訊息

如前所述,叫用採用整合物件參數之商務服務的唯一差異是傳送至配接器的要求訊息。 本節提供建立要求訊息時必須執行之步驟的指示。

若要進一步瞭解,請以 Siebel 商務服務 'EAI Siebel Adapter' 作為範例。 'EAI Siebel Adapter' 商務服務會在 Siebel 整合物件 'Sample Account' 上運作。 您必須執行下列工作來建立要求訊息,以叫用 'EAI Siebel Adapter' 商務服務所公開的方法:

  • 產生 EAI Siebel 配接器商務服務的架構。 您必須使用取用配接器服務增益集來產生架構。 產生架構之後,請產生符合架構的 XML。

  • 產生整合物件的架構。 使用 Siebel Tools 產生整合物件的架構。 從 Siebel Tools 介面中,選取整合物件,例如範例帳戶,然後按一下 [產生架構]。 產生架構時,請確定:

    • 從清單下拉式 清單中選取商務服務 具有值 「EAI XML XSD Generator」。

    • 從清單下拉式 清單中選取信封類型 具有值 「Siebel Message Envelope」。

      如需詳細資訊,請參閱 Siebel 檔。

  • 建立符合整合物件架構的 XML 訊息。 針對「範例帳戶」整合物件產生的範例 XML 訊息看起來像這樣:

    <?xml version="1.0" encoding="UTF-16"?>  
    <SiebelMessage  MessageId="" IntObjectName="Sample Account" MessageType="Integration Object" IntObjectFormat="Siebel Hierarchical">  
      <ListOfSampleAccount>  
        <Account>  
          <CurrencyCode>USD</CurrencyCode>  
          <Location>Redmond</Location>  
          <Name>IntegrationObjectTest</Name>  
        </Account>  
      </ListOfSampleAccount>  
    </SiebelMessage>  
    
  • 將此 XML 訊息當做商務服務方法要求訊息中 CDATA 元素的值傳遞。 包含 CDATA 元素內上述 XML 訊息的範例要求訊息如下所示。 此範例要求是叫用 'EAI Siebel Adapter' 商務服務的 Insert 方法。

    <Insert xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter/Operation">  
      <InsertRequestRecord />   
      <InsertInOutRecord>  
        <SiebelMessage xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">  
          <![CDATA[ <?xml version="1.0" encoding="UTF-16"?>  
            <SiebelMessage  MessageId="" IntObjectName="Sample Account" MessageType="Integration Object" IntObjectFormat="Siebel Hierarchical">  
              <ListOfSampleAccount>  
                <Account>  
                  <CurrencyCode>USD</CurrencyCode>  
                  <Location>Redmond</Location>  
                  <Name>IntegrationObjectTest</Name>  
                </Account>  
              </ListOfSampleAccount>  
            </SiebelMessage>  
          ]]>   
         </SiebelMessage>  
      </InsertInOutRecord>  
    </Insert>  
    

    上述要求訊息的 Siebel 回應如下所示:

    <?xml version="1.0" encoding="utf-8" ?>   
    <InsertResponse xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter/Operation">  
      <InsertResult>  
        <ErrorCode xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">0x0</ErrorCode>   
        <ErrorContextIntComp xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <ErrorContextSearchSpec xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <ErrorSymbol xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <OMErrorCode xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <OMErrorSymbol xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter" />   
        <PrimaryRowId xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">1-6SPSJ</PrimaryRowId>   
      </InsertResult>  
      <InsertInOutRecord>  
        <SiebelMessage xmlns="http://Microsoft.LobServices.Siebel/2007/03/BusinessServices/EAI_x0020_Siebel_x0020_Adapter">  
          <![CDATA[ <?xml version="1.0" encoding="UTF-16"?>  
            <SiebelMessage  MessageId="" IntObjectName="Sample Account" MessageType="Integration Object" IntObjectFormat="Siebel Hierarchical">  
              <ListOfSampleAccount>  
                <Account>  
                  <CurrencyCode>USD</CurrencyCode>  
                  <Location>Redmond</Location>  
                  <Name>IntegrationObjectTest</Name>  
                </Account>  
              </ListOfSampleAccount>  
            </SiebelMessage>  
          ]]>   
         </SiebelMessage>  
      </InsertInOutRecord>  
    </InsertResponse>  
    

    使用 BizTalk 功能,配接器用戶端也可以針對從 Siebel Tools.) 取得的整合物件架構執行整合物件 IN 和 OUT 參數的額外驗證 (

另請參閱

使用 Siebel 配接器開發 BizTalk 應用程式
開發您的 Siebel 應用程式