# SAP ODP

資訊備註此連接器僅受 Qlik Talend Cloud 企業版 訂閱支援。

本主題解說如何在資料任務中設定 SAP ODP 來源。在您開始資料任務之前，請確定已滿足[必要條件](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-prereq.htm)，並且熟悉[限制和考慮事項](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-limitations.htm)。

使用 SAP ODP 連接器時，有固定的差異處理模式，會將在來源資料集 (INSERT、UPDATE 或 DELETE) 上執行的實際變更套用至對應的目標資料集。

資訊備註

* 變更操作由 ODP 來源決定。某些操作可能不受目標支援。

* 我們建議為不使用預設主索引鍵的 ODP 來源手動設定主索引鍵。

* 某些 UPDATE 會以 INSERT 形式接收。因此，為避免目標端發生衝突，請將套用 INSERT 時的重複索引鍵套用衝突處理政策設為更新現有的目標記錄。

  如需關於此設定的詳細資訊，請參閱 [套用衝突](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings.htm#Apply2)。

## 設定連線屬性

本節說明如何為特定 SAP 應用程式伺服器或為 SAP 系統設定使用載入平衡的連線參數。

若要開啟連接器，進行下列事項：

1. 在連線中，按一下建立連線。

2. 選取 SAP ODP 來源連接器，然後提供下列設定：

### 資料來源

* 資料閘道

  選取 資料移動閘道 以用於移動您的資料。

  如需關於 資料移動閘道 的詳細資訊，請參閱 [Qlik 資料閘道 - 資料移動](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm)。

* 連線至：根據 SAP ODP 環境選取下列之一：

  * 應用程式伺服器 - 然後從下面的連線至特定應用程式伺服器繼續。
  * 載入平衡環境 - 然後從下面的連線至載入平衡環境繼續。

#### 連線到特定應用程式伺服器

1. [](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-properties.htm)從連線至下拉式清單選取應用程式伺服器之後，提供下列資訊：

   * 伺服器名稱：SAP ODP 來源所在應用程式伺服器的 IP 位址。
   * 執行個體識別碼：SAP ODP 來源的執行個體號碼。
   * 用戶端識別碼：SAP ODP 來源的系統 ID。

2. 完成以下帳戶屬性和來源屬性中描述的欄位。

#### 連線至載入平衡環境

1. [](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-properties.htm)從連線至下拉式清單選取載入平衡環境之後，提供下列資訊：

   * 訊息伺服器：訊息伺服器主機的主機名稱或 IP 位址。

   * 應用程式伺服器群組名稱：SAP 伺服器群組的名稱。這是載入平衡連線的選用性應用程式伺服器群組。

   * SAP 系統名稱：SAP R/3 的名稱。

   * 訊息伺服器服務：以下檔案所指定 SAP 訊息伺服器服務的名稱：

     `<system drive>:\WINDOWS\system32\drivers\etc\services`

     如您未指定值，Data Provider for SAP 會使用以下預設名稱：

     `sapms<R/3 system name>`

   * 用戶端識別碼：您要移動之 SAP 應用程式來源的系統 ID。

2. 完成以下帳戶屬性和來源屬性中描述的欄位。

### 帳戶屬性

* 使用者名稱：用於存取 SAP ODP 來源的使用者名稱。這應為早先在 SAP 中所建立之通訊使用者的密碼。

* 密碼：用於存取 SAP ODP 來源的密碼。這應為早先在 SAP 中所建立之通訊使用者的使用者名稱。

### 來源屬性

* ODP 內容：選擇下列項目之一：

  * ABAP 核心資料服務 (CDS) 檢視：CDS 檢視的內容。此為預設 ODP 內容。

  * SAP NetWeaver 企業倉庫：BW 物件的內容。

  * SAP 資料來源/擷取器：資料來源和擷取器的內容。

  * SAP HANA 資訊檢視：HANA 檢視的內容。

  * SAP LT 複寫 (SLT)：需要使用 SAP 橫向轉換複寫伺服器。

    另請參見： [在 SAP 設定 SLT](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-prereq.htm#Setting)

* SLT 別名：只有在 ODP 內容設定為 SAP LT 複寫 (SLT) 時，才會顯示此欄位。按照 [在 SAP 設定 SLT](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-prereq.htm#Setting) 中建立的設定定義來指定 SLT 別名

* 訂閱者類型：選擇下列項目之一：

  * SAP NetWeaver 企業倉庫：此為預設 ODP 訂閱者類型。
  * RODPS\_REPL\_TEST：主要用於測試，不建議用於生產。
  * 其他：這將會顯示欄位其他訂閱者類型，您可在此指定未列出的訂閱者類型。

* 訂閱者名稱：指定訂閱者名稱。對於此端點連線開啟的所有訂閱，這將會是顯示在 SAP 的名稱。

* 套件大小上限：以位元組為單位的資料套件大小。可以根據網路和系統功能調整此值。

  .

### 安全性

在安全設定終能組態安全網路通訊 (SNC)。

#### 使用 SNC 作業的先決條件

遵循下方步驟在Data Movement gateway機器上安裝安全網路通訊 (SNC)。

您需要的內容

* SAP 伺服器的匯出憑證 (.crt)
* SAPCAR.EXE
* SAP 使用者（授權用戶端）
* 安裝於相對應 SAP 伺服器上的 Crypto library 版本

安裝 SNC 用戶端

1. 針對 SAP SNC 檔案建立任務空間資料夾以及 binaries（此後稱為「您的 SNC 資料夾」，舉例來說：/opt/snc/

2. 複製匯出伺服器憑證和 SAPCAR.EXE 至您的 SNC 資料夾。

3. 前往 https://support.sap.com/en/my-support/software-downloads.html 並在安裝和升級底下搜尋 SAPCRYPTOLIB 。下載 64 位元 .SAR 至您的 SNC 資料夾。

4. 開啟命令提示字元並變更任務目錄至您的 SNC 資料夾。接著進行以下指令解除封裝 .SAR 內容至您的 SNC 資料夾：

   `sapcar -xvf LibName.sar`

   範例：

   `sapcar -xvf SAPCRYPTOLIBP_8541-20011731_32.SAR`

5. 如下新增系統環境變數：

   1. 新增名稱為 SECUDIR 的系統環境，搭配至您的 SNC 資料夾的路徑作為其數值。
   2. 新增名稱為 QLIK\_SNC\_LIB 的系統環境，搭配至 sapcrypto.dll 檔案的路徑作為其數值。
   3. 新增新增環境變數至「路徑」環境變數。

6. 決定 &lt;PSE\_File\_Name&gt; 並選擇 &lt;PSE\_PIN&gt; 保護它。您將需要在下個步驟提供此資訊。

   範例：

   `pseName: "CN=USR,OU=SAP,O=Qlik,C=IS" password: password123`

7. 決定 &lt;SNC\_NAME&gt;。看起來應該如下：`CN=USR, OU=SAP, O=Qlik, C=IS`

   也請參閱下方[決定伺服器 SNC 名稱。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-properties.htm#Getting)。

8. 確保您有必要的權限存取並執行在 SECUDIR 資料夾中的檔案，接著進行以下指令產生 PSE 檔案：

   `sapgenpse get_pse -p <PSE_File_Name>.pse -x <PSE_PIN> <SNC_NAME>`

   範例：

   `sapgenpse get_pse -p usr.pse -x password123 "CN=USR,OU=SAP,O=Qlik,C=IS"`

9. 繫結 PSE 檔案和 OS 使用者並在 資料移動閘道 機器上執行下列命令，以在 SECUDIR 資料夾中建立 CRED\_V2 檔案：

   `sapgenpse seclogin -p <PSE_File_Name>.pse -x <PSE_PIN> -O <OS_USER>`

   範例：

   `sapgenpse seclogin -p usr.pse -x password123 -O SYSTEM`

10. 透過執行以下指令產生 CRT 檔案：

    `sapgenpse export_own_cert -o <PSE_File_Name>.crt -p <PSE_File_Name>.pse -x <PSE_PIN>`

    範例：

    `sapgenpse export_own_cert -o usr.crt -p usr.pse -x password123`

11. 透過執行以下指令匯入 SAP 應用程式伺服器憑證 (&lt;SERVER\_CRT&gt;) 至 PSE：

    `sapgenpse maintain_pk -a <SERVER_CRT>.crt -p <PSE_File_Name>.pse -x <PSE_PIN>`

    範例：

    `sapgenpse maintain_pk -a sapsys.crt -p usr.pse -x password123`

12. 要驗證 SAP 伺服器的 PSE 的 DN 已匯入給用戶端，進行以下指令，接著檢查「主體」數值：

    `sapgenpse maintain_pk -v -l -p <PSE_File_Name>.pse`

    範例：

    `sapgenpse maintain_pk -v -l -p usr.pse`

匯入用戶端憑證

1. 連線至 SAP 應用程式伺服器並使用授權使用者導向「STRUST」交易。
2. 按兩下SNC (SAPCryptolib) 資料夾。
3. 按一下![顯示變更按鈕](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/change-button-sap.png)切換到變更檢視。
4. 按一下![驗證匯入按鈕](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/import-cert-sap.png)匯入憑證。
5. 在新的對話方塊中，輸入稍早建立前往 .crt 檔案的路徑，再按一下繼續。
6. 在驗證區段中驗證憑證的詳細資料。
7. 按一下新增至憑證清單以便新增憑證至清單。
8. 儲存變更。

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-ODP/sap-odp-properties.htm)決定伺服器 SNC 名稱。

有兩個可以決定伺服器名撐的方式：

* 方法 1：使用 OpenSSL 指令解密伺服器 CRT 檔案。伺服器名稱將為主體的一部分。
* 方法 2：此方法需要適當的授權。在連線至系統時：
  1. 進行 RZ10 交易。

  2. 選擇系統檔案。

  3. 選擇延伸維修選項再按一下顯示。

  4. snc/identity/as參數的數值應為 SNC 名稱。

設定 SNC 連接器設定

在 SAP ODP 連接器 進行 SNC 設定，如下所示：

* 啟用安全網路通訊 (SNC)：選擇開啟 SNC。

* SNC 名稱：SNC 合作夥伴名稱。

  範例：

  p:CN=SYS, OU=SAP, O=Qlik, C=IS

* SNC 保護品質：選擇以下其一：

  * 僅驗證：選擇以驗證 SAP ODP 機器的身分。這是 SNC 提供最低等級的保護。
  * 整合保護：選擇偵測任何資料變更或控制，可能在 Qlik Talend Data Integration 機器和 SAP ODP 機器之間產生。
  * 隱私保護：選擇加密轉移的訊息預防竊聽。隱私保護也包括完整性保護。這是 SNC 提供最高等級的保護。
  * 最大可用安全性：由 SAP ODP 機器提供的最大資料保護等級。

### 內部屬性

內部屬性用於特殊使用情況，因此不會在對話方塊中顯示。您只能在 Qlik 支援指示下使用。

根據需要使用欄位右側的 the 新建 icon 和 the 取消 icon 按鈕以新增或移除屬性。

### 名稱

來源連線的顯示名稱。

## 定義中繼資料

設定連線屬性後，按一下確定。連線中繼資料檢視將會開啟。按照 [連線到 SaaS 應用程式](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Landing/connecting-web-applications.htm#Managing) 中的描述定義連線的中繼資料。您之後可以根據需要進行下列事項之一，以編輯中繼資料：

* 為專案內的 SAP ODP 連線從顯示的the 中繼資料 icon功能表選取。
* 為連線檢視中的 SAP ODP 連線從顯示的 the 中繼資料 icon 功能表選取。