SAP ERP

您可以使用 SAP ERP 連接器,對 SAP ERP 資料執行插入、刪除、更新和讀取作業。

支援的版本

SAP ERP 連接器可透過下列方法與 SAP R/3 系統通訊:

  • 商業應用程式設計介面 (BAPI)
  • 遠端函式呼叫 (RFC)
  • SAP 資料表
  • SAP 查詢
  • IDoc 訊息
支援連線至下列裝置:
  • SAP ECC
  • SAP ERP
  • SAP R/3
  • 地端部署的 SAP S/4 Hana
  • SAP JCo 版本。

    建立連線時,這個連接器需要提供兩個 JCo 檔案:sapjco3.jarlibsapjco3.so (適用於 Unix)。您可以從 SAP Connectors 網站下載 JCo 3.1.5 版。

  • 如果 SAP 系統支援 RFC 連線,且可使用必要的 RFC,則連線至 SAP 系統的作業就會正常運作。系統也可能支援其他支援 RFC 連線的版本。

您可以透過 SAP ERP 連接器存取下列 SAP 內容:

SAP 資料表:系統會透過 TableMode 連線屬性,自動將 SAP 資料表公開為檢視區塊。使用 Views 連線屬性指定要使用的 SAP 資料表,這會覆寫 TableMode。SAP 不建議直接修改資料表。建議改用 BAPI 修改任何表格資料。系統不支援直接修改 SAP 資料表。

BAPI 和 RFC:BAPI 和 RFC 會直接公開為預存程序。根據預設,系統會顯示所有以 BAPI 關鍵字開頭的 RFC,做為可用的預存程序。

IDoc:中繼文件 (IDoc) 檔案是 SAP 物件,可將業務交易資料以電子郵件的形式從一個系統傳輸至另一個系統。IDoc 會透過電子資料交換 (EDI) 系統,將資料從 SAP 傳輸至非 SAP 系統。

如要進一步瞭解這些字詞,請參閱 SAP 詞彙表

事前準備

使用 SAP ERP 連接器前,請先完成下列工作:

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

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

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

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

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

  • 啟用事件訂閱功能後,您必須設定 ABAP SDK。如要瞭解如何設定 ABAP SDK,請參閱「Google Cloud ABAP SDK 總覽」。

  • 您必須建立指定 bucket,並上傳從 SAP ERP 入口網站下載的下列物件 ID:

    • JCo JAR 檔案的 Cloud Storage 路徑:Java 連接器 (JCo) JAR 檔案的 Cloud Storage 路徑。
    • libsapjco3 Cloud Storage 路徑:libsapjco3 JAR 檔案的 Cloud Storage 路徑。

設定連接器

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

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

    前往「連線」頁面

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

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

    2. 點選「下一步」
  4. 在「連線詳細資料」部分,完成下列步驟:
    1. 連接器:從可用連接器的下拉式清單中選取「SAP ERP」
    2. 連接器版本:從可用版本的下拉式清單中選取連接器版本。
    3. 在「連線名稱」欄位中,輸入連線執行個體的名稱。

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

      • 連線名稱可使用英文字母、數字或連字號。
      • 字母必須為小寫。
      • 連線名稱開頭須為英文字母,結尾則須為英文字母或數字。
      • 連結名稱不得超過 49 個字元。
      • 如果連接器支援事件訂閱,連接名稱開頭不得為「goog」前置字串。
    4. 視需要輸入連線的「Description」(說明)
    5. 或者,可啟用 Cloud Logging,然後選取記錄層級。記錄層級預設為 Error
    6. 服務帳戶:選取具備必要角色的服務帳戶。
    7. 如要將連線用於事件訂閱,請選取「啟用事件訂閱」。選取這個選項後,會顯示下列選項:
      • 啟用事件訂閱功能,並使用實體和動作:選取這個選項,即可將連線用於事件訂閱和連接器作業 (實體和動作)。
      • 只啟用事件訂閱項目:選取這個選項,即可只將連線用於事件訂閱。如果選取這個選項,請按一下「下一步」,然後設定事件訂閱
    8. 用戶端:向 SAP 系統驗證的用戶端。
    9. 系統 ID:SAP 系統的系統 ID 或 R3Name 是字串,最多可有三個字元。這項功能常用於負載平衡連線。
    10. 系統編號:定義目標系統的編號。設定主機連線屬性時使用。
    11. 專案 ID:包含 SAP JCo JAR 的 GCS bucket 所屬 Google Cloud 專案的 ID。
    12. 值區:包含 sapjco3.jar 和 libsapjco3.so 檔案的值區名稱。
    13. JCo JAR Cloud Storage 路徑:JCo JAR 的 Cloud Storage 路徑。
    14. libsapjco3 Cloud Storage 路徑:libsapjco3 JAR 的 Cloud Storage 路徑。
    15. 表格模式:選取要以檢視畫面顯示的 SAP 表格。
    16. 讀取資料表函式:用於讀取資料表的函式名稱。詳情請參閱「使用自訂讀取資料表函式」。
    17. 系統 ID:SAP 系統的系統 ID 或 R3Name。最多可輸入 3 個字元。
    18. 查詢模式:選取要以檢視區塊顯示的 SAP 資料表。
    19. 可瀏覽的檢視畫面:輸入要顯示的檢視畫面清單 (以半形逗號分隔)。 例如:ViewA,ViewB,ViewC
    20. 語言:將這個屬性設為您登入 SAP 時指定的語言。這個屬性是 SAP 系統使用的語言 ISO 639-1 代碼。根據預設,系統會使用 EN。
    21. 服務項目:連線要使用的服務項目。
    22. SNC 模式:選取這個選項,即可為整合連接器與 SAP 系統之間的驗證啟用 SNC。如果選取這個選項,請指定下列詳細資料:
      • SNC_LIB 物件 ID:SNC 程式庫的物件 ID。
      • PSE 名稱:適用於值區的個人安全環境 (PSE) 檔案名稱。PSE 檔案會以 ASN.1 結構儲存公開和私密金鑰組,以及 X.509 憑證。
      • SNC 密碼:選取 SNC 程式庫密碼的 Secret Manager 密鑰。
      • 密鑰版本:選取密鑰版本。
      • SNC 名稱:輸入 SNC 連線的名稱。
      • SNC qop:選取防護等級。支援的層級如下:
        • 1 - 僅套用驗證。
        • 2 - 應用程式完整性防護。包括驗證保護機制。
        • 3 - 採用隱私權保護措施。這也包括完整性和驗證保護。
        • 8 - 套用預設保護措施。
        • 9 - 套用最高保護等級。
      • SNC 合作夥伴名稱:輸入應用程式伺服器的 SNC 名稱。
    23. 連線架構:指定您要連線至訊息伺服器 (群組伺服器) 或應用程式伺服器的 SAP 系統。如要瞭解透過訊息伺服器連線至 SAP 系統的必要條件,請參閱「訊息伺服器 (群組伺服器) 連線類型」。

      如果選取「GroupServer」GroupServer,則必須指定下列詳細資料:

      • 訊息伺服器:連線至使用負載平衡的 SAP 系統時,請指定訊息伺服器。
      • 訊息伺服器服務:要連線的訊息伺服器服務。
      • 群組:使用的登入群組。只有在連線至使用負載平衡的 SAP 系統時,才需要指定這個值。

      如果您要連線至使用訊息伺服器 (群組伺服器) 的 SAP 系統,則不需要在「目的地」部分指定主機位址。

    24. 視需要設定「連線節點設定」

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

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

    25. 選用:按一下「+ 新增標籤」,以鍵/值組合的形式為連線新增標籤。
    26. 點選「下一步」
  5. 在「目的地」部分,輸入要連線的遠端主機 (後端系統) 詳細資料。如果您要連線至使用訊息伺服器的 SAP 系統,則不需要指定主機位址。
    1. 目的地類型:選取目的地類型
      • 從清單中選取「主機地址」,指定目的地的主機名稱或 IP 位址。
      • 如要與後端系統建立私人連線,請從清單中選取「Endpoint attachment」(端點附件),然後從「Endpoint Attachment」(端點附件) 清單中選取所需端點附件。

      如要建立與後端系統的公開連線,並加強安全性,建議為連線設定靜態輸出 IP 位址,然後設定防火牆規則,只允許特定靜態 IP 位址。

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

    2. 點選「下一步」
  6. 在「Authentication」(驗證) 部分中,輸入驗證詳細資料。
    1. 選取「驗證類型」並輸入相關詳細資料。

      SAP ERP 連線支援下列驗證類型:

      • 以 X509 憑證為基礎的驗證
      • 使用者名稱和密碼
    2. 如要瞭解如何設定這些驗證類型,請參閱「設定驗證」。

    3. 點選「下一步」
  7. 如果已啟用事件訂閱功能,連線建立頁面會顯示「事件訂閱詳細資料」部分。如要瞭解如何設定事件訂閱詳細資料,請參閱「設定事件訂閱」。
  8. 檢查:檢查連線和驗證詳細資料。
  9. 點選「建立」

設定驗證機制

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

  • 以 X509 憑證為基礎的驗證
    • X509Certificate:用於登入的 X509 憑證。
    • 密鑰版本:選取密鑰版本。
  • 使用者名稱和密碼
    • 使用者名稱:連接器的使用者名稱
    • 密碼:Secret Manager 密鑰,內含與連接器相關聯的密碼。

設定事件訂閱

啟用事件訂閱功能後,您必須設定 ABAP SDK。如要瞭解如何設定 ABAP SDK,請參閱「Google Cloud ABAP SDK 總覽」。

在「Event Subscription Details」(事件訂閱詳細資料) 區段中,輸入下列值:

  1. 為事件監聽器選取下列任一驗證類型。
  2. 輸入事件類型欄位名稱。這個欄位會指出與傳入事件要求相關聯的事件類型。
    {
    "event_type": "user.created",
    ...
    // other request fields
    ...
    }
  3. 選取「啟用私人連線」,在後端應用程式和連線之間建立安全連線。如果選取這個選項,您必須在建立連線後執行額外設定步驟。詳情請參閱「活動訂閱的私人連線」。
  4. 輸入無法傳送郵件的設定。如果設定無效信件,連線會將未處理的事件寫入指定的 Pub/Sub 主題。輸入下列詳細資料:
    1. 無法傳送的訊息專案 ID: 您已設定無法傳送的訊息 Pub/Sub 主題的 Google Cloud 專案 ID。
    2. 無效信件主題: 要寫入未處理事件詳細資料的 Pub/Sub 主題。

連線設定範例

以下各節列出建立 SAP ERP 連線時,各個欄位的範例值,以及不同連線類型所需的參數。

連線至分散式 SAP 系統

如果您連線至分散式 SAP 系統 (例如使用負載平衡的系統),則必須指定下列額外連線屬性。管理員可以在 SAP 系統的「系統項目屬性」對話方塊中,透過「連線」分頁取得這些連線屬性。

  • 系統 ID:指定從 SystemId 屬性取得的值。系統 ID 是 SAP 系統的系統 ID/R3Name。系統 ID 為字串,最多三個字元。
  • 訊息伺服器:連線至使用負載平衡的 SAP 系統時,必須指定「訊息伺服器」欄位。將這個屬性設為您從 SAP 系統的 MessageServer 屬性取得的值。此外,請在「訊息伺服器」欄位的值前面加上 SAProuter 方塊的值。
  • 群組:將這個屬性設為從「群組/伺服器」屬性取得的值。Group 屬性會指定使用的登入群組。預設值為 PUBLIC。

連線至自訂應用程式伺服器

如果您使用專屬應用程式伺服器或自訂應用程式伺服器連線至 SAP 系統,則必須指定下列額外連線屬性。管理員可以從 SAP 系統取得這些連線屬性。

  • 系統 ID:指定從 SystemId 屬性取得的值。這是 SAP 系統的系統 ID 或 R3Name。系統 ID 為字串,最多三個字元。
  • 主機:指定從應用程式伺服器取得的值。

    這會指定目標系統的主機名稱。這個值可以是正常主機名稱、IP 位址或 SAP 路由器位址。

  • 系統編號:指定從 SystemNumber 屬性取得的值。

    SystemNumber 屬性會定義目標系統。

設定安全網路連線

如果管理員已設定安全網路通訊 (SNC),您必須設定下列額外屬性。在 SAP 系統中,您可以在「System Entry Properties」(系統項目屬性) 對話方塊的「Network」(網路) 分頁中,取得下列 SNC 連線字串屬性。

  • SNC 模式:如果 SAP 中已啟用「Activate Secure Network Connections」核取方塊,請將 SNC 模式連線屬性設為 True。否則,請將 SNC 模式連線屬性設為 False。

    SNCMode 連線屬性是布林值,可判斷您是否使用 SNC。預設值為 False。

  • SNC PartnerName:SNC PartnerName 會指定應用程式伺服器的 SNC 名稱。例如:p:CN=IDS, OU=IT, O=CSW, C=DE
  • SNC 名稱:選填。SNCName 屬性會指定 SNC 連線的名稱。設定這項屬性,確保連線使用正確的 SNC 名稱。
  • SNC Qop:將這個屬性設為「安全網路設定」部分中選取的選項。舉例來說,如果選取「完整性」選項,請將 SNCQop 屬性設為 3。

    SNCQop 屬性會指定資料保護的等級 (或品質)。如未指定這項屬性,系統會將這項屬性設為整數 -1。有效值為 1、2、3、8 或 9,分別對應保護等級。

  • SNC_Lib 物件 ID:將這個屬性設為 SNC 程式庫的路徑和檔案名稱。指定所用安全防護程式庫的完整路徑,例如 C:\Secude\secude.xll.

ApplicationServer 連線類型

如要連線至應用程式伺服器,必須在網路端點群組 (NEG) 和健康狀態檢查中,使用 SAP 系統 IP 和 33XX 連接埠設定 Private Service Connect 和負載平衡器。其中 XX 是所用 SAP 系統的系統或執行個體編號。下表列出 ApplicationServer 連線類型的範例設定值。請參閱管理中心的連線建立介面,瞭解必填和選填欄位。

欄位名稱 範例值
區域 us-central1
連接器 SAP ERP
連接器版本 1
連接器名稱 saperp-applicationserver-conn
說明 不適用
服務帳戶 xxxxxxxxxx-compute@developer.gserviceaccount.com
客戶 800
系統編號 00
專案 ID xxxx-gcp-project
值區 sap-erp-bucket
Jco Jar 物件 ID sapjco3.jar
libsapjco3 物件 ID libsapjco3.so
表格模式 TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
讀取資料表函式 Z_CUSTOM_READ_TABLE
連結配置 ApplicationServer
系統 ID SA1
查詢模式 不適用
可瀏覽的檢視畫面 不適用
詳細程度 5
節點數量下限 2
節點數量上限 50
主機地址 10.30.X.XX 或外部 SAP 系統的路由器字串。
驗證 使用者密碼
使用者名稱 12345
密碼 xyz@12345
版本 1

訊息伺服器 (群組伺服器) 連線類型

使用訊息伺服器 (群組伺服器) 連線至 SAP 系統前,請確認符合下列必要條件:
  • 您必須在網路端點群組 (NEG) 和健康狀態檢查中,使用通訊埠 33XX 和 36XX 上的 SAP 系統 IP 設定 Private Service Connect 和負載平衡器。其中 XX 是所用 SAP 系統的系統或執行個體編號。
  • 您必須在 Cloud DNS 上建立 DNS 區域,並將應用程式伺服器的端點附件對應至 SAP 系統的主機名稱,該端點附件是在 33XX 連接埠上設定。
  • 只有在訊息伺服器傳回應用程式伺服器的完整網域名稱 (FDQN) 位址時,您才能透過訊息伺服器 (群組伺服器) 連線至 SAP 系統。如果訊息伺服器傳回 IP 位址,您就無法透過訊息伺服器 (群組伺服器) 連線至 SAP 系統。
  • 應用程式提出要求時,訊息伺服器必須回應應用程式需要連線的應用程式伺服器 DNS。
  • 應用程式伺服器的 DNS 必須是專屬的,且不得用於任何其他 SAP 系統。
  • 在 SAP 應用程式中,應用程式伺服器和訊息伺服器的端點附件 IP 必須保留在 gw/alternative_hostnames 參數下。
    1. 前往 Tcode - RZ10,並在執行個體設定檔中輸入「gw/alternative_hostname」參數。
    2. ms/lg\_with\_hostname 參數設為 1,即可設定 7.53 之前的 SAP 訊息伺服器版本傳回主機名稱。7.53 以上版本預設會傳回主機名稱。
    3. 重新啟動 SAP 應用程式,讓參數生效。

下表列出 Group Server 連線類型的範例設定值:

欄位名稱 範例值
區域 us-central1
連接器 SAP ERP
連接器版本 1
連接器名稱 saperp-groupserver-conn
說明 不適用
服務帳戶 SA-compute@developer.gserviceaccount.com
客戶 800
系統編號 00
專案 ID Google-cloud-project
值區 sap-erp-bucket
Jco Jar 物件 ID sapjco3.jar
libsapjco3 物件 ID libsapjco3.so
表格模式 TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
群組 公開
訊息伺服器 10.30.X.XX
讀取資料表函式 Z_CUSTOM_READ_TABLE
連結配置 GroupServer
系統 ID SA1
查詢模式 不適用
可瀏覽的檢視畫面 不適用
詳細程度 5
節點數量下限 2
節點數量上限 50
驗證 使用者密碼
使用者名稱 使用者名稱
密碼 密碼
版本 1

X509 憑證連線類型

如要使用 X509 連線進行安全網路通訊 (SNC),必須在網路端點群組 (NEG) 和健康狀態檢查中,使用 SAP 系統 IP 和通訊埠 48XX 設定 Private Service Connect 和負載平衡器。其中 XX 是所用 SAP 系統的系統或執行個體編號。下表列出 X509 certificate 連線類型的範例設定值。請參閱管理中心的連線建立介面,瞭解必填和選填欄位。

欄位名稱 範例值
區域 us-central1
連接器 SAP ERP
連接器版本 1
連接器名稱 saperp-X509Certificate-conn
說明 不適用
服務帳戶 xxxxxxxxxx-compute@developer.gserviceaccount.com
客戶 800
系統編號 00
專案 ID xxxx-gcp-project
值區 sap-erp-bucket
Jco Jar 物件 ID sapjco3.jar
libsapjco3 物件 ID libsapjco3.so
表格模式 TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
SNC_LIB 物件 ID libsapcrypto.so
建立 cred_v2 檔案的 PSE 名稱 EHP8_GCP_SA1.pse
讀取資料表函式 Z_CUSTOM_READ_TABLE
連結配置 ApplicationServer
系統 ID SA1
SNC 密碼 xyz@gcp
SNC 模式 布林值,用於判斷您是否使用 SNC。如要使用 SNC,請將此值設為 true。
SNC 名稱 p:CN=EHP8_GCP_SA1, OU=IT, O=CSW, C=DE
SNC Qop 3
SNC PartnerName p:CN=SA1, OU=I0020070395, OU=SAP Web AS, O=SAP Trust Community, C=DE
查詢模式 不適用
可瀏覽的檢視畫面 不適用
詳細程度 5
節點數量下限 2
節點數量上限 50
主機地址 10.30.X.XX 或外部 SAP 系統的路由器字串。
驗證 以 X509Certificate 為基礎的驗證
X509Certificate 您可以指定 X509 憑證,方法是使用檔案路徑指向包含 PEM 格式 X509 憑證的檔案、以「-----BEGIN ...」標頭開頭的 PEM Blob,或是沒有「-----BEGIN ...」標頭的 PEM Blob。
版本 1

系統限制

SAP ERP 連接器每秒可處理 7 筆交易,每個節點也是如此,且會節流任何超出此限制的交易。根據預設,Integration Connectors 會為連線分配 2 個節點 (以提高可用性)。

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

在整合中,使用 SAP ERP 連線

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

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

實體、作業和動作

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

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

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

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

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

  • 動作: 動作是透過連接器介面提供給整合的第一類函式。動作可讓您變更一或多個實體,且因連接器而異。一般來說,動作會有一些輸入參數和輸出參數。不過,連接器可能不支援任何動作,此時 Actions 清單會是空白。

動作

本節提供 RFC 相關資訊,並列出連接器支援的動作。如要瞭解如何設定動作,請參閱動作範例

使用 RFC

本節提供必要 RFC 的相關資訊,以及如何使用 RFC。

必要 RFC

如果缺少任何必要 RFC,部分或所有功能可能無法運作。您可以使用 T-Code SE37 查看 SAP 中可用的函式模組。

SAP ERP 連接器會使用下列 RFC。

  • DDIF_FIELDINFO_GET
  • RFC_GET_FUNCTION_INTERFACE
  • RFC_GET_STRUCTURE_DEFINITION
  • RFC_GET_SYSTEM_INFO
  • RFC_GET_UNICODE_STRUCTURE
  • RFC_READ_TABLE
  • SLDAG_CHECK_FOR_UNICODE

讀取大量資料

本節說明從 SAP 後端讀取大量資料時,必須採取的做法。

SAP ERP 連接器會使用 SAP RFC_READ_TABLE 函式從 SAP 表格取得資料,而這個函式的大小固定為 512 位元組。每個資料列都可以緩衝,因此您選取的資料欄數量不得超過緩衝區可容納的數量。如果選取超過 512 個位元組,執行整合時會發生 DATA_BUFFER_EXCEEDED 例外狀況,表示您已超過每列允許的緩衝區大小上限,因此需要選取較少的資料欄。

如要解決這個問題,您可以加入 Custom RFC_READ_TABLE 的程式碼,這與 SAP RFC_READ_TABLE 類似,但緩衝區較大,可解決 DATA_BUFFER_EXCEEDED 問題。

使用自訂讀取資料表函式

這個連接器支援類似於 SAP RFC_READ_TABLECustom RFC_READ_TABLE,但緩衝區較大,因此可以解決 DATA_BUFFER_EXCEEDED 問題。

在 SAP 後端建立自訂 RFC_READ_TABLE

請按照下列步驟使用 範例自訂 RFC_READ_TABLE

  1. RFC_READ_TABLE 函式做為新函式的範本:選取交易代碼 SE37 和 SDTX 函式群組,然後將 RFC_READ_TABLE 複製到新的函式群組或工作函式群組。在本例中,RFC_READ_TABLE 會複製到 Z_CUSTOM_RFC_TABLE
  2. 在 SAP 頁面的「Attributes」分頁中,選取「Remote Enabled Module」
  3. 在「Tables」分頁中,將 DATA 參數設為 CHAR8000 (您可能需要按一下滑鼠右鍵,然後依序點選「Display」->「Change」)。
  4. 在「Source Code」(原始碼) 分頁中,輸入自訂讀取資料表 RFC 程式碼。如需參考資料,請參閱範例 Z_CUSTOM_RFC_TABLE_function.txt
  5. 按一下 [儲存]
  6. 請按照提供的自訂讀取資料表文件,定義匯入項目、資料表和例外狀況。
  7. 啟用函式模組。

ABAP 7.52 的自訂讀取資料表

如果您使用 ABAP 7.52 以上版本,請參閱範例 Z_CUSTOM_RFC_TABLE_function_ABAP752.txt。 範例函式適用於 ABAP 7.52 以上版本。這與 Z_CUSTOM_RFC_TABLE 函式類似,但會利用 ABAP 7.52 中新提供的關鍵字,在資料庫中執行分頁,而不是在 ABAP 指令碼本身中執行。這可大幅提升分頁效率,並改善處理大型表格時的效能。建議盡可能使用 Z_CUSTOM_RFC_TABLE_752 RFC

存取 RFC_READ_TABLE 函式

本節提供資訊,說明要指派給 SAP 使用者的角色,才能存取 RFC_READ_TABLE 函式。這項函式是支援遠端作業的函式模組,可讓您以一般方式讀取任意資料表。

如要在設定 SAP ERP 連接器工作時,將資料表列在「實體」下方,您必須在 SAP ERP 連線層級使用 RFC_READ_TABLE 函式,並授權存取 R/3 函式 RFC_READ_TABLE

為活動 03 (顯示) 新增授權 S_TABU_DIS,並為函式 RFC_READ_TABLE 新增授權群組「SC」。

以下是 RFC_READ_TABLE 的部分技術限制:

  • 系統只能讀取含有簡單資料類型的資料表。系統不支援 STRING 或 XSTRING 欄位。
  • 每行最多 512 個字元。
  • 傳回的記錄數量會受到記憶體門檻限制。

BAPI_MATERIAL_SAVEDATA 動作

這項動作可讓您執行特定工作。舉例來說,您可以使用這項服務在 SAP ERP 中建立或變更物料主檔資料。

BAPI_MATERIAL_SAVEDATA 動作的輸入參數

參數名稱 資料類型 必填 說明
HEADDATA 字串 輸入參數 HEADDATA。
CLIENTDATA 字串 輸入參數 CLIENTDATA。
CLIENTDATAX 字串 輸入參數 CLIENTDATAX。
MATERIALDESCRIPTION 字串 資料表 MATERIALDESCRIPTION。

BAPI_MATERIAL_SAVEDATA 動作的輸出參數

如果動作成功,這項操作會傳回狀態 200 (OK)。

如要瞭解如何設定 BAPI_MATERIAL_SAVEDATA 動作,請參閱「動作範例」。

ZFM_GCP_MULTIDATA_TAB 動作

使用者可透過這項動作執行特定工作。舉例來說,您可以在 SAP ERP 中建立多種資料型別的資料。

ZFM_GCP_MULTIDATA_TAB 動作的輸入參數

參數名稱 資料類型 必填 說明
ReturnTables 字串 以半形逗號分隔的清單,指定函式模組中應輸出的資料表。 如未指定,系統會輸出所有傳回的表格。
T_TABLE 字串 資料表 T_TABLE。
IM_INPUT_1 字串 輸入參數 IM_INPUT_1。
IM_INPUT_2 字串 輸入參數 IM_INPUT_2。

ZFM_GCP_MULTIDATA_TAB 動作的輸出參數

如果動作成功,這項操作會傳回狀態 200 (OK)。

如要瞭解如何設定 ZFM_GCP_MULTIDATA_TAB 動作,請參閱動作範例

PushIDoc Action

這項動作可讓您執行特定工作。舉例來說,您可以將資料從 SAP 轉移至外部系統。

PushIDoc 動作的輸入參數

參數名稱 資料類型 必填 說明
FileType 字串 檔案類型。允許的值為 XML、IDoc。
模式 字串 傳輸模式。允許的值為 Sync 和 ASync。
內容 字串 檔案內容。

PushIDoc 動作的輸出參數

如果動作成功,這項操作會傳回狀態 200 (OK)。

如要瞭解如何設定 PushIDoc 動作,請參閱「動作範例」。

ExecuteCustomQuery 動作

這項操作可讓您執行自訂查詢。

如要建立自訂查詢,請按照下列步驟操作:

  1. 請按照詳細說明 新增連接器工作
  2. 設定連接器工作時,請在要執行的動作類型中選取「動作」
  3. 在「動作」清單中,選取「執行自訂查詢」,然後按一下「完成」

    圖片:顯示 execute-custom-query-action 圖片:顯示 execute-custom-query-action

  4. 展開「Task input」(工作輸入) 區段,然後執行下列操作:
    1. 在「Timeout after」(逾時時間) 欄位中,輸入查詢執行前的等待秒數。

      預設值:180 秒。

    2. 在「資料列數量上限」欄位中,輸入要從資料庫傳回的資料列數量上限。

      預設值為 25

    3. 如要更新自訂查詢,請按一下「編輯自訂指令碼」。「指令碼編輯器」對話方塊隨即開啟。

      圖片:顯示自訂 SQL 查詢 圖片:顯示自訂 SQL 查詢

    4. 在「指令碼編輯器」對話方塊中輸入 SQL 查詢,然後按一下「儲存」

      您可以在 SQL 陳述式中使用問號 (?) 代表單一參數,該參數必須在查詢參數清單中指定。舉例來說,下列 SQL 查詢會從 Employees 資料表選取與 LastName 資料欄指定值相符的所有資料列:

      SELECT * FROM Employees where LastName=?

    5. 如果您在 SQL 查詢中使用問號,請為每個問號點按「+ 新增參數名稱」,加入參數。執行整合時,這些參數會依序取代 SQL 查詢中的問號 (?)。舉例來說,如果您新增了三個問號 (?),就必須依序新增三個參數。

      圖片:顯示 add-query-param 圖片:顯示 add-query-param

      如要新增查詢參數,請按照下列步驟操作:

      1. 在「類型」清單中,選取參數的資料類型。
      2. 在「值」欄位中輸入參數值。
      3. 如要新增多個參數,請按一下「+ 新增查詢參數」

執行成功後,這項動作會傳回狀態 200 (OK),以及含有查詢結果的回應內容。

動作範例

範例 - 建立記錄

本例使用 BAPI_MATERIAL_SAVEDATA 動作建立物料記錄。

  1. 在「Configure connector task」對話方塊中,按一下 Actions
  2. 選取 BAPI_MATERIAL_SAVEDATA 動作,然後按一下「完成」
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009001\",\"IND_SECTOR\":\"M\",\"MATL_TYPE\":\"HALB\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA" : "{\"MATL_GROUP\":\"00107\",\"BASE_UOM\":\"KG\"}",
    "CLIENTDATAX" : "{\"MATL_GROUP\":\"X\",\"BASE_UOM\":\"X\"}",
    "MATERIALDESCRIPTION" : "{\"LANGU\":\"E\",\"MATL_DESC\":\"Classification Google\"}"
    }
  4. 如果動作成功,BAPI_MATERIAL_SAVEDATA 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_MESSAGE": "The material 9001 has been created or extended",
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9001",
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

範例 - 更新記錄

這個範例會使用 BAPI_MATERIAL_SAVEDATA 動作更新物料記錄。

  1. 在「Configure connector task」對話方塊中,按一下 Actions
  2. 選取 BAPI_MATERIAL_SAVEDATA 動作,然後按一下「完成」
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"IND_SECTOR\":\"A\",\"MATL_TYPE\":\"FHMI\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA": "{\"MATL_GROUP\":\"013\",\"BASE_UOM\":\"ST\"}",
    "CLIENTDATAX": "{\"MATL_GROUP\":\"X\",\"BASE_UOM\":\"X\"}",
    "MATERIALDESCRIPTION": "{\"LANGU\":\"E\",\"MATL_DESC\":\"Classification Googlecloud\"}"
    }
  4. 如果動作成功,BAPI_MATERIAL_SAVEDATA 工作項目的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_MESSAGE": "The material 9000 has been created or extended",
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9000",
    "RETURN_PARAMETER": "",
    "RETURN_ROW": 0,
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

範例 - 刪除記錄

這個範例會使用 BAPI_MATERIAL_SAVEDATA 動作刪除物料記錄。

  1. 在「Configure connector task」對話方塊中,按一下 Actions
  2. 選取 BAPI_MATERIAL_SAVEDATA 動作,然後按一下「完成」
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA": "{\"DEL_FLAG\":\"X\"}",
    "CLIENTDATAX": "{\"DEL_FLAG\":\"X\"}"
    }
  4. 如果動作成功,BAPI_MATERIAL_SAVEDATA 工作項目的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9000",
    "RETURN_PARAMETER": "",
    "RETURN_ROW": 0,
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

範例 - 建立多資料類型資料

本例使用 ZFM_GCP_MULTIDATA_TAB 動作建立多資料類型資料。

  1. 在「Configure connector task」對話方塊中,按一下 Actions
  2. 選取 ZFM_GCP_MULTIDATA_TAB 動作,然後按一下「完成」
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "T_TABLE": "{\"ZACCP\":\"111\",\"ZCHAR\":\"CHARACTER1\",\"ZCLNT\":\"100\",\"ZCUKY\":\"INR\",\"ZCURR\": 200,\"ZDATS\": \"20231213\",\"ZINT1\": 45,\"ZINT2\":54,\"ZDEC\": 0.12,\"ZFLTP\": 1234,\"ZLANG\":\"E\",\"ZNUMC\":\"110\",\"ZPREC\": 3,\"ZQUAN\": 188.0,\"ZRAW\":\"01010008010101050401\",\"ZTIMS\": \"103056\",\"ZUNIT\":\"11\",\"ZINT4P\": 45,\"ZINT4\": 54,\"ZLRAW\":\"0101000801010105040100030101010300040000\"}",
    "IM_INPUT_1": "{\"ZACCP\":\"222\",\"ZCHAR\":\"CHARACTER1\",\"ZCLNT\":\"100\",\"ZCUKY\":\"INR\",\"ZCURR\": 200,\"ZDATS\": \"20231213\",\"ZINT1\": 45,\"ZINT2\":54,\"ZDEC\": 0.12,\"ZFLTP\": 1234,\"ZLANG\":\"E\",\"ZNUMC\":\"110\",\"ZPREC\": 3,\"ZQUAN\": 188.0,\"ZRAW\":\"01010008010101050401\",\"ZTIMS\": \"103056\",\"ZUNIT\":\"11\",\"ZINT4P\": 45,\"ZINT4\": 54,\"ZLRAW\":\"0101000801010105040100030101010300040000\"}",
    "IM_INPUT_2": "{\"ZSTRING\": \"HI Google\",\"ZSSTRING\": \"HI Google How are you\"}"
    }
  4. 如果動作成功,ZFM_GCP_MULTIDATA_TAB 工作項目的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "EX_OUTPUT_1_ZACCP": 222,
    "EX_OUTPUT_1_ZCHAR": "CHARACTER1",
    "EX_OUTPUT_1_ZCLNT": "100",
    "EX_OUTPUT_1_ZCUKY": "INR",
    "EX_OUTPUT_1_ZCURR": 200,
    "EX_OUTPUT_1_ZDATS": "2023-12-13",
    "EX_OUTPUT_1_ZRAW": "01010008010101050401",
    "EX_OUTPUT_1_ZTIMS": "10:30:56",
    "EX_OUTPUT_1_ZUNIT": "11",
    "EX_OUTPUT_1_ZINT4P": 45,
    "EX_OUTPUT_1_ZINT4": 54,
    "EX_OUTPUT_1_ZLRAW": "0101000801010105040100030101010300040000\u0000",
    "EX_OUTPUT_2_ZSTRING": null,
    "EX_OUTPUT_2_ZSSTRING": null,
    "RESULT_TABLE": null,
    "T_TABLE_ZACCP": null,
    "T_TABLE_ZCHAR": null,
    "T_TABLE_ZCLNT": null,
    "T_TABLE_ZQUAN": null,
    "T_TABLE_ZRAW": null,
    "T_TABLE_ZTIMS": null,
    "T_TABLE_ZUNIT": null
    },{
    "EX_OUTPUT_1_ZACCP": null,
    "EX_OUTPUT_1_ZCHAR": null,
    "EX_OUTPUT_1_ZCLNT": null,
    "EX_OUTPUT_1_ZCUKY": null,
    "EX_OUTPUT_1_ZRAW": null,
    "T_TABLE_ZLANG": null,
    "T_TABLE_ZNUMC": null,
    "T_TABLE_ZPREC": null,
    "T_TABLE_ZQUAN": null,
    "T_TABLE_ZRAW": null,
    "T_TABLE_ZTIMS": null,
    "T_TABLE_ZUNIT": null
    },{
    "EX_OUTPUT_1_ZACCP": null,
    "EX_OUTPUT_1_ZCHAR": null,
    "EX_OUTPUT_1_ZCLNT": null,
    "EX_OUTPUT_1_ZCUKY": null,
    "EX_OUTPUT_1_ZCURR": null,
    "EX_OUTPUT_1_ZDATS": null,
    "EX_OUTPUT_1_ZDEC": null,
    "EX_OUTPUT_1_ZQUAN": null,
    "T_TABLE_ZNUMC": 110,
    "T_TABLE_ZPREC": 3,
    "T_TABLE_ZQUAN": 188,
    "T_TABLE_ZRAW": "01010008010101050401",
    "T_TABLE_ZTIMS": "10:30:56",
    "T_TABLE_ZUNIT": "11"
    }]

範例 - 推送 IDoc

這個範例會將 IDoc 推送至 SAP ERP。

  1. 在「Configure connector task」對話方塊中,按一下 Actions
  2. 選取 PushIDoc 動作,然後按一下「完成」
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Content": "\n\n\n EDI_DC40\n 800\n 0000000008604824\n 740\n 53\n 2\n \n MATMAS05\n MATMAS\n ZLS_QA23\n LS\n ZLS_QA23\n SAPSA1\n LS\n SA1CLNT800\n 20230218\n 232556\n\n\n 005\n 000000000000000012\n 20170328\n 42039\n 20170727\n 42039\n KLVC\n FERT\n M\n 02\n BG\n 000\n 002\n 0.000\n 0.000\n KGM\n 0.000\n 0001\n 0.000\n 0.000\n 0.000\n 0.000\n 0.000\n",
    "FileType": "XML",
    "Mode": "ASync"
    }
  4. 。如果動作成功,PushIDoc 工作的 connectorOutputPayload 回應參數值會類似以下內容:

    [{
    "Result": "Success",
    "Message": "Push IDoc success"
    }]

實體作業範例

本節說明如何使用這個連接器執行部分實體作業。

範例 - 列出所有記錄

這個範例會列出 T001 實體中的所有記錄。

  1. 在「Configure connector task」對話方塊中,按一下 Entities
  2. Entity 清單中選取 T001
  3. 選取「List」作業,然後按一下「完成」
  4. (選用) 在「連結器」工作的「工作輸入」部分,您可以指定篩選子句,篩選結果集。請一律在單引號 (') 內指定篩選子句值。

範例 - 從實體取得記錄

這個範例會從 T001 實體取得具有指定 ID 的記錄。

  1. 在「Configure connector task」對話方塊中,按一下 Entities
  2. Entity 清單中選取 T001
  3. 選取「Get」作業,然後按一下「完成」
  4. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入) 區段中,按一下「EntityId」,然後在「Default Value」(預設值) 欄位中輸入 0001

    其中 0001T001 實體中的專屬記錄 ID。

使用 Terraform 建立連線

您可以使用 Terraform 資源建立新連線。

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

如要查看用於建立連線的 Terraform 範本範例,請參閱範本範例

使用 Terraform 建立這項連線時,您必須在 Terraform 設定檔中設定下列變數:

參數名稱 資料類型 必填 說明
用戶端 STRING 向 SAP 系統驗證的用戶端。
群組 STRING 使用的登入群組。連線至使用負載平衡的 SAP 系統時,通常只需要指定這個值。
message_server STRING 連線至使用負載平衡的 SAP 系統時,必須指定訊息伺服器。
read_table_function STRING 用於讀取表格資料的函式。
connection_scheme ENUM 指定您是否要連線至有訊息伺服器 (GroupServer) 的 SAP 系統,或沒有訊息伺服器 (ApplicationServer) 的 SAP 系統。支援的值包括:ApplicationServer、GroupServer
system_id STRING SAP 系統的系統 ID 或 R3Name 是字串,最多可包含三個字元。這項功能通常用於負載平衡連線。
system_number STRING 定義目標系統的數字。設定主機連線屬性時使用。
project_id STRING 包含 SAP JCo JAR 的 Cloud Storage 值區所屬 Google Cloud 專案的 ID。
值區 STRING 包含 sapjco3.jar 和 libsapjco3.so 檔案的 bucket 名稱
sapjco3_jar STRING sapjco3.jar 的物件 ID
libsapjco3_so STRING libsapjco3.so 的物件 ID
snc_lib STRING SNC 程式庫的物件 ID
snc_mode BOOLEAN 布林值,用於判斷您是否使用 SNC。如要使用 SNC,請將此值設為 true。
snc_name STRING 選填輸入欄位,可輸入 SNC 連線名稱。
snc_qop ENUM SNC 連線的保護品質。有效值為 1、2、3、8 或 9,分別對應下列保護等級:1 僅套用驗證。2 套用完整防護 (驗證)。3 套用隱私權保護措施 (完整性和驗證)。8 套用預設保護措施。9 套用最高防護等級。支援的值為:1、2、3、8、9
snc_partner_name STRING 應用程式伺服器的 SNC 名稱。使用 SNC 時,必須輸入這項資訊。
query_mode ENUM 決定要將哪些 SAP 資料表顯示為檢視區塊 (如有)。支援的值包括:Global、Local、All、None
table_mode ENUM 決定要將哪些 SAP 資料表顯示為檢視區塊 (如有)。支援的值包括:TransparentApplication、TransparentCustomer、TransparentSystem、Pooled、Cluster、All、None
詳細程度 STRING 連線的詳細程度,範圍為 1 到 5。詳細程度越高,記錄的通訊詳細資料就越多 (要求、回應和 SSL 憑證)。

排解 SAP 地端設定問題

如果 SAP 系統位於內部部署環境,您必須使用混合式 NEG 建立 Proxy 負載平衡器。

  1. 在允許的子網路之間,於地端部署系統和 Google Cloud 之間建立 IPsec 通道。
  2. 允許負載平衡子網路和 Proxy 子網路使用內部部署防火牆。
  3. 新增所有必要通訊埠,例如應用程式伺服器連線的 33XX、訊息伺服器/LB 伺服器連線的 36XX,以及 SNC-X509 連線的 48XX。其中 XX 是 SAP 系統的系統或執行個體編號。在 Google Cloud 專案的允許連入清單中,新增防火牆所需的 IP,例如 LB IP 和通訊埠、SAP 系統 IP 和通訊埠。
  4. 使用混合 NEG 設定區域性內部 Proxy 網路負載平衡器。詳情請參閱「Regional internal proxy Network LB with Hybrid NEG connectivity」(具有混合式 NEG 連線的區域內部 Proxy 網路負載平衡器)。

設定網路連線後,如果發生類似下列內容的錯誤,請使用下列解決方法,將端點附件 IP 加入許可清單。

Initialization of destination SAP--1910584855 failed: Connect from SAP gateway to RFC server failed
connection parameters: TYPE=A DESTINATION=SAP--1910584855 ASHOST=10.128.0.43 SYSNR=00 PCS=1 
LOCATION    SAP-Gateway on host DELVM05S15.bcone.com / sapgw00
ERROR       timeout during allocate
TIME        Wed Apr  3 17:24:40 2024
RELEASE     754
COMPONENT   SAP-Gateway
VERSION     2
RC          242
MODULE      D:/depot/bas/754_REL/src/krn/si/gw/gwr3cpic.c
LINE        2208
DETAIL      no connect of TP sapdp00 from host 10.128.0.43 after 20 sec

COUNTER 2
解決方法:在 SAP 設定檔層級的 gw/alternative_hostnames 中,新增您在 Google Cloud 中建立的連接器網路端點附件 IP。

SAP 詞彙表

SAP:SAP 是所有支援 SAP 版本的統稱。這通常表示 SAP ECC 6 以上版本。如要讓 SAP ERP 連接器正常運作,必須連線至支援 RFC SDK 的 SAP 版本。

函式模組:函式模組是 SAP 中的一種程式或函式,可用於執行幾乎所有作業。這些模組可透過 SE37 TCode 在 SAP 中測試及編寫。

RFC:遠端函式呼叫 (RFC) 是指呼叫特定 RFM/FM,可由外部應用程式執行。這包括使用 SAP 發布的程式庫 (安裝在 SAP 伺服器上),也可能從 sap.com 下載。特定 RFM 可能會或不會在 SAP 升級時維護。SAP 提供標準 RFM,因此舊版可能會有差異或沒有 RFM。自訂 RFM 可 (且經常) 用於支援整合,但必須由 SAP 客戶維護。按照慣例,自訂 RFM 的開頭為字母 Z。

BAPI:業務 API (BAPI) 是業務物件的 API 方法,而業務物件是 SAP 支援 RFC 的函式模組,可提供業務邏輯作業的存取權。舉例來說,光是與 Customer 物件相關的 BAPI 就有約 60 個。但實際上通常只會用到少數幾個。

SAP 資料表:SAP 資料表是指在 SAP 中儲存資料的資料表。這與業務物件不同。舉例來說,SAP 中沒有訂購單表格。而是包含許多含有訂購單資料的資料表,例如 EBAN、EBKN、EINA、EKPO 等。按照慣例,自訂資料表會以字母 Z 開頭。

SAP 查詢:SAP 查詢是 SAP 中儲存的物件,詳細說明要從一或多個資料表擷取的資訊。這些通常用於製作報表。

向 Google Cloud 社群尋求協助

如要發布問題及討論這個連接器,請前往 Cloud 論壇的 Google Cloud 社群。

後續步驟