SAP HANA XS Advanced

SAP Hana XS Advanced 連接器可讓您使用指定的 OData 服務執行讀取作業。

如要執行建立、更新和刪除作業,您必須在 SAP HANA XS Advanced 中,在已連結應用程式的 OData 服務中編寫自訂結束點。

支援的版本

以下是此連接器支援的最低版本:
  • SAP HANA 版本:HDB 2.00.078.00.1715149848
  • XS Advanced 版本:1.2.2.240510120427

事前準備

使用 SAP Hana XSA 連接器前,請先執行下列工作:

  • 在 Google Cloud 專案中:
    • 確認已設定網路連線。如要瞭解網路模式,請參閱「網路連線」。
    • roles/connectors.admin IAM 角色授予設定連接器的使用者。
    • 將下列 IAM 角色授予要用於連接器的服務帳戶:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      服務帳戶是特殊的 Google 帳戶類型,主要用於代表需要驗證且必須取得授權才能存取 Google API 資料的非人類使用者。如果您沒有服務帳戶,請務必建立服務帳戶。詳情請參閱「建立服務帳戶」。

    • 啟用下列服務:
      • secretmanager.googleapis.com (Secret Manager API)
      • connectors.googleapis.com (連接器 API)

      如要瞭解如何啟用服務,請參閱「啟用服務」。

    如果先前未為專案啟用這些服務或權限,系統會在設定連接器時提示您啟用。

如要瞭解如何建立 SAP HANA XS Advanced 應用程式,請參閱「SAP HANA XS Advanced 模型開發人員指南」。如要進一步瞭解 SAP HANA,請參閱「SAP HANA 平台總覽」。

設定連接器

連線是特定資料來源的連線,也就是說,如果您有多個資料來源,則必須為每個資料來源建立個別的連線。如要建立連線,請按照下列步驟操作:

  1. Cloud 控制台中,前往「Integration Connectors」>「Connections」頁面,然後選取或建立 Google Cloud 專案。

    前往「連線」頁面

  2. 按一下「+ 建立新連線」,開啟「建立連線」頁面。
  3. 在「位置」部分,選擇連線的位置。
    1. 區域:從下拉式清單中選取位置。

      如需所有支援地區的清單,請參閱「位置」一節。

    2. 點按「下一步」
  4. 在「連線詳細資料」部分中,完成下列操作:
    1. 連接器:從可用連接器的下拉式清單中選取「SAP HANA XS Advanced」
    2. 連接器版本:從可用版本的下拉式清單中選取連接器版本。
    3. 在「Connection Name」欄位中,輸入連線例項的名稱。

      連線名稱必須符合下列條件:

      • 連線名稱可以包含英文字母、數字或連字號。
      • 字母必須為小寫。
      • 連線名稱的開頭必須是英文字母,結尾則須為英文字母或數字。
      • 連結名稱不得超過 49 個半形字元。
    4. 視需要輸入連線例項的「Description」(說明)
    5. 您可以選擇啟用 Cloud Logging,然後選取記錄層級。根據預設,記錄層級會設為 Error
    6. 服務帳戶:選取具備必要角色的服務帳戶。
    7. 視需要設定連線節點設定

      • 節點數量下限:輸入連線節點數量下限。
      • 節點數量上限:輸入連線節點數量上限。

      節點是用來處理交易的連線單位 (或備用資源)。處理的交易量越多,就需要越多節點;反之,處理的交易量越少,就需要越少節點。如要瞭解節點對連接器定價的影響,請參閱「 連線節點的定價」。如果您未輸入任何值,系統預設會將最小節點設為 2 (以提高可用性),並將最大節點設為 50。

    8. 視需要輸入下列屬性:
      • OData 版本:要使用的 OData 版本。根據預設,連接器會自動嘗試判斷服務使用的版本。
      • 參數實體集:針對連線中使用的 OData 服務中公開的計算檢視畫面,提供參數實體集名稱 (以半形逗號分隔的清單)
      • 支援展開選取這個核取方塊,指出是否可從基本實體集合擷取導覽屬性
      • 支援公式:選取這個核取方塊,表示 OData 服務是否支援伺服器端公式
      • 使用 Etag:勾選這個核取方塊,表示 OData 來源是否使用 Etag。
    9. 您可以選取連線例項的「Supports Expand」核取方塊。這個連線屬性主要用於有限的 OData API,可決定是否可從基礎實體集合擷取導覽屬性
    10. 您可以按一下「+ 新增標籤」,以鍵/值組合的形式為連線新增標籤。
    11. 點按「下一步」
    12. 輸入下列 SSL 屬性:
      • 信任存放區:此屬性會指定信任存放區。您可以選取圓形按鈕,從「公開」、「私人」或「不安全連線」中選取信任存放區。
      • 自訂信任儲存庫:這個屬性可用來選取含有 PEM 格式自訂信任儲存庫的祕密。
    13. 您可以按一下「+ 新增標籤」,以鍵/值組合的形式為連線新增標籤。
    14. 點按「下一步」
  5. 在「目的地」部分中,輸入要連線的 Odata 服務端點詳細資料。
    1. 目的地類型:選取目的地類型
      • 目的地類型:從下拉式選單中選取「主機位址」
      • 主機 1:輸入 Odata 端點和通訊埠號碼

      如要輸入其他目的地,請按一下「+ 新增目的地」

    2. 您也可以選擇輸入 XSUAA URL 的主機詳細資料,以便在 Oauth 2.0 驗證時擷取 OAuth 權杖:從下拉式選單中選取「Host Address」
    3. 點按「下一步」
  6. 在「Authentication」部分中,輸入驗證詳細資料。
    1. 選取「驗證類型」並輸入相關詳細資料。

      SAP HANA XS Advanced 連接器支援下列驗證類型:

      • 使用者名稱和密碼
      • OAuth 2.0 - 授權碼
    2. 如要瞭解如何設定這些驗證類型,請參閱「設定驗證」。

    3. 點按「下一步」
  7. 查看:查看連線和驗證詳細資料。
  8. 按一下 [建立]。

設定驗證機制

根據要使用的驗證方法輸入詳細資料。

  • 使用者名稱和密碼
    • 使用者名稱:SAP HANA XS Advanced 使用者名稱
    • 密碼:Secret Manager 密鑰,內含與 SAP HANA XS Advanced 使用者名稱相關聯的密碼。
  • OAuth 2.0
    • 用戶端 ID:用於要求存取權存證的用戶端 ID
    • 用戶端密鑰:Secret Manager 密鑰,內含您建立的已連結應用程式的用戶端密鑰。
    • 您可以選擇輸入「範圍」:以半形逗號分隔的所需範圍清單。

重新授權授權碼

如果您使用 OAuth 2.0 驗證類型,且已在 XSA Advanced 連線應用程式中進行任何設定變更,則必須重新授權 SAP HANA XS Advanced 連線。如要重新授權連線,請按照下列步驟操作:

  1. 在「Connections」(連線) 頁面中,按一下所需連線。

    系統會開啟連線詳細資料頁面。

  2. 按一下「編輯」即可編輯連結詳細資料。
  3. 在「驗證」部分確認「OAuth 2.0 - 授權碼」詳細資料。

    視需要進行必要的變更。

  4. 按一下 [儲存]。系統會將您導向連線詳細資料頁面。
  5. 在「驗證」部分中,按一下「編輯授權」。畫面上會顯示「Authorize」窗格。
  6. 按一下「Authorize」

    如果授權成功,「連線」頁面中的連線狀態就會設為「啟用」

建立連線後的額外步驟

如果您選用 OAuth 2.0 - Authorization code 進行驗證,則必須在建立連線後執行下列額外步驟:

  1. 在「Connections」(連線) 頁面中,找出新建立的連線。

    請注意,新連接器的狀態會是「需要授權」

  2. 按一下「需要授權」

    這會顯示「Edit authorization」窗格。

  3. 將「Redirect URI」值複製到外部應用程式。
  4. 驗證授權詳細資料。
  5. 按一下「Authorize」

    如果授權成功,連線頁面中的連線狀態會設為「Active」

在整合中使用 SAP Hana XS Advanced 連線

建立連線後,即可在 Apigee Integration 和 Application Integration 中使用。您可以透過「連接器」工作,在整合中使用連線。

  • 如要瞭解如何在 Apigee Integration 中建立及使用連接器工作,請參閱「連接器工作」。
  • 如要瞭解如何在 Application Integration 中建立及使用連接器工作,請參閱「連接器工作」。

實體、作業和動作

所有整合連接器都為已連結應用程式的物件提供一層抽象層。您只能透過這個抽象層存取應用程式的物件。抽象概念會以實體、作業和動作的形式提供給您。

  • 實體: 實體可視為已連結應用程式或服務中的物件或屬性集合。實體的定義與連接器至連接器的定義不同。舉例來說,在資料庫連接器中,資料表是實體;在檔案伺服器連接器中,資料夾是實體;在訊息系統連接器中,佇列是實體。

    不過,連接器可能不支援或沒有任何實體,在這種情況下,Entities 清單會是空白。

  • 作業: 作業是指您可對實體執行的活動。您可以對實體執行下列任一操作:

    從可用清單中選取實體後,系統會產生可用於該實體的作業清單。如需作業的詳細說明,請參閱連接器工作中的實體作業。不過,如果連接器不支援任何實體作業,則 Operations 清單中不會列出這些不支援的作業。

  • 動作: 動作是透過連接器介面提供給整合項目的一流函式。動作可讓您變更實體或多個實體,而這些變更會因連接器而異。通常,動作會包含一些輸入參數和輸出參數。不過,連接器可能不支援任何動作,在這種情況下,Actions 清單會為空白。

系統限制

SAP HANA XS Advanced 連接器每個節點每秒最多可處理 12 筆交易,並限制超過此上限的任何交易。根據預設,Integration Connectors 會為連線分配 2 個節點 (可提高可用性)。

如要瞭解 Integration Connectors 適用的限制,請參閱「限制」一節。

實體

SAP HANA XS Advanced 連接器僅支援實體

實體操作範例

範例:列出實體的記錄

本範例會列出 Users 實體的記錄。

  1. Configure connector task 對話方塊中,按一下 Entities
  2. Entity 清單中選取 Users
  3. 選取 List 作業,然後按一下「Done」
  4. 在「Connector」工作的「Task Input」部分,您可以根據需求設定「filterClause」

    舉例來說,如果將篩選條件子句設為 employeeCode='5100' and startDate='2010-01-01 00:00:00',系統就只會列出 employeeCode 為 5100 且 startDate 為 2010-01-01 00:00:00 的記錄。

範例:從實體取得單一記錄

這個範例會從 Users 實體擷取記錄。

  1. Configure connector task 對話方塊中,按一下 Entities
  2. Entity 清單中選取 User
  3. 選取 Get 作業,然後按一下「Done」
  4. 在「Connectors」任務的「Task Input」部分,按一下「entityId」,然後在「Default Value」欄位中輸入 103032

    其中 103032Users 實體的主鍵值。

範例:從實體中刪除記錄

這個範例會從 Users 實體中刪除記錄。

  1. Configure connector task 對話方塊中,按一下 Entities
  2. Entity 清單中選取 Users
  3. 選取 Delete 作業,然後按一下「Done」
  4. 在「Connectors」任務的「Task Input」部分,按一下「entityId」,然後在「Default Value」欄位中輸入 113132

    或者,如果實體具有複合式主鍵,而非指定 entityId,您可以設定 filterClause。例如:employeeCode='5100' and startDate='2010-01-01 00:00:00'

範例:在實體中建立記錄

這個範例會在 Users 實體中建立記錄。

  1. Configure connector task 對話方塊中,按一下 Entities
  2. Entity 清單中選取 Users
  3. 選取 Create 運算,然後按一下「Done」
  4. 在「Connectors」任務的「Task Input」部分,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似以下的值:
    {
    "employeeCode": "5100",
    "startDate": "2010-01-01 00:00:00.0",
    "country": "US"
    }
  5. 如果整合成功,連接器工作 connectorOutputPayload 欄位就會包含建立作業的回應。

範例:更新實體中的記錄

這個範例會更新 Users 實體中的記錄。

  1. Configure connector task 對話方塊中,按一下 Entities
  2. Entity 清單中選取 Users
  3. 選取 Update 運算,然後按一下「Done」
  4. 在「Connectors」任務的「Task Input」部分,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似以下的值:
    {
    "country": "IN"
    }
  5. 在「Connectors」任務的「Task Input」部分,按一下「entityId」,然後在「Default Value」欄位中輸入 113132

    或者,如果實體具有複合式主鍵,而非指定 entityId,您可以設定 filterClause。例如:employeeCode='5100' and startDate='2010-01-01 00:00:00'

  6. 如果整合成功,連接器工作 connectorOutputPayload 欄位就會包含更新作業的回應。

向 Google Cloud 社群尋求協助

如有任何問題,歡迎在 雲端論壇中發問,並與 Google Cloud 社群成員討論這個連接器。

後續步驟