Lihat konektor yang didukung untuk Integration Aplikasi.
Pemicu SAP ERP
Pemicu SAP ERP adalah Pemicu Peristiwa Konektor konektor SAP ERP yang memungkinkan Anda melakukan operasi penyisipan, penghapusan, pembaruan, dan pembacaan pada data SAP ERP.
Sebelum memulai
- Jika Anda berencana membuat atau mengonfigurasi koneksi baru untuk pemicu SAP ERP, pastikan Anda memiliki peran IAM berikut di project:
- Connector Admin (
roles/connectors.admin
)
Untuk mengetahui informasi tentang cara memberikan peran, lihat Mengelola akses.
- Connector Admin (
- Berikan peran IAM berikut ke akun layanan yang ingin Anda gunakan untuk pemicu SAP ERP:
- Application Integration Invoker (
roles/integrations.integrationInvoker
)
Untuk informasi tentang cara memberikan peran ke akun layanan, lihat Mengelola akses ke akun layanan.
- Application Integration Invoker (
- Di konsol Google Cloud, buka halaman Integrasi Aplikasi.
- Di menu navigasi, klik Integrations
Halaman Daftar Integrasi akan muncul yang mencantumkan semua integrasi yang tersedia di project Google Cloud.
- Pilih integrasi yang ada atau klik Buat integrasi untuk membuat integrasi baru.
Jika Anda membuat integrasi baru:
- Masukkan nama dan deskripsi di panel Buat Integrasi.
- Pilih region untuk integrasi.
- Pilih akun layanan untuk integrasi. Anda dapat mengubah atau memperbarui detail akun layanan integrasi kapan saja dari panel Ringkasan integrasi di toolbar integrasi.
- Klik Create.
Tindakan ini akan membuka integrasi di editor integrasi.
- Di menu navigasi editor integrasi, klik Pemicu untuk melihat daftar pemicu yang tersedia.
- Klik dan tempatkan elemen pemicu SAP ERP di editor integrasi.
- Klik elemen pemicu SAP ERP di editor integrasi untuk membuka panel konfigurasi pemicu.
- Klik Konfigurasi pemicu.
- Berikan detail konfigurasi berikut di halaman Editor Pemicu Peristiwa Konektor:
- Region: Pilih region koneksi SAP ERP Anda.
- Koneksi: Pilih koneksi SAP ERP yang ingin Anda gunakan.
Integrasi Aplikasi hanya menampilkan koneksi SAP ERP yang aktif dan mengaktifkan langganan peristiwa.
- Masukkan nama kolom jenis peristiwa. Kolom ini mengidentifikasi jenis peristiwa yang terkait dengan permintaan peristiwa yang masuk.
{ "event_type": "user.created", ... // other request fields ... }
- Service Account: Pilih akun layanan dengan peran IAM yang diperlukan untuk pemicu SAP ERP.
- Klik Selesai untuk menyelesaikan konfigurasi pemicu dan menutup halaman.
- Klik elemen pemicu SAP ERP di editor integrasi untuk membuka panel konfigurasi pemicu.
- Klik Konfigurasi pemicu.
- Lewati kolom Region.
- Klik Connection, lalu pilih opsi Create Connection dari menu drop-down.
- Di bagian Connection Details, selesaikan tindakan berikut:
- Konektor: Pilih SAP ERP dari menu drop-down Konektor yang tersedia.
- Versi konektor: Pilih versi Konektor dari menu drop-down versi yang tersedia.
- Di kolom Connection Name, masukkan nama untuk instance Connection.
Nama koneksi harus memenuhi kriteria berikut:
- Nama koneksi dapat menggunakan huruf, angka, atau tanda hubung.
- Huruf harus berupa huruf kecil.
- Nama koneksi harus diawali dengan huruf dan diakhiri dengan huruf atau angka.
- Nama koneksi tidak boleh melebihi 49 karakter.
- Untuk konektor yang mendukung langganan peristiwa, nama koneksi tidak boleh diawali dengan awalan "goog".
- Secara opsional, masukkan Description untuk koneksi.
- Secara opsional, aktifkan Cloud Logging, lalu pilih level log. Secara default, level log ditetapkan ke
Error
. - Service Account: Pilih akun layanan yang memiliki peran yang diperlukan.
- Untuk menggunakan koneksi untuk langganan peristiwa, pilih Aktifkan langganan peristiwa. Dengan memilih
opsi ini, opsi berikut akan ditampilkan:
- Aktifkan langganan peristiwa dengan entity dan tindakan: Pilih opsi ini untuk menggunakan koneksi untuk langganan peristiwa dan operasi konektor (entity dan tindakan).
- Aktifkan hanya langganan peristiwa: Pilih opsi ini untuk menggunakan koneksi hanya untuk langganan peristiwa. Jika Anda memilih opsi ini, klik Berikutnya, lalu konfigurasi langganan peristiwa.
- Klien: Klien yang melakukan autentikasi ke sistem SAP.
- ID Sistem: ID Sistem atau R3Name Sistem SAP adalah string dengan maksimum tiga karakter. Ini sering digunakan dalam koneksi load balancing.
- Nomor Sistem: Nomor yang digunakan untuk menentukan sistem target. Digunakan saat menetapkan properti Koneksi host.
- Project ID: ID project Google Cloud tempat bucket GCS yang berisi jar SAP JCo berada.
- Bucket: Nama bucket yang berisi file sapjco3.jar dan libsapjco3.so.
- ID objek jar Jaco: ID objek jar JCo.
- ID objek libsapjco3: ID objek jar libsapjco3.
- Mode tabel: Pilih tabel SAP yang akan ditampilkan sebagai tampilan.
- Fungsi baca tabel: Nama fungsi yang akan digunakan untuk membaca tabel. Untuk informasi selengkapnya, lihat Menggunakan fungsi tabel baca kustom.
- ID Sistem: ID sistem atau R3Name sistem SAP. Anda dapat memasukkan maksimal 3 karakter.
- Mode kueri: Pilih tabel SAP yang harus ditampilkan sebagai tampilan.
-
Tampilan yang dapat dijelajahi: Masukkan daftar tampilan yang dipisahkan koma yang akan ditampilkan.
Contoh,
ViewA,ViewB,ViewC
. - Language: Tetapkan properti ini ke bahasa yang Anda tentukan saat login ke SAP. Properti ini adalah kode ISO 639-1 untuk bahasa yang digunakan sistem SAP. Secara default, EN akan digunakan.
- Entri layanan: Entri layanan yang akan digunakan untuk koneksi.
-
Mode SNC: Pilih opsi ini untuk mengaktifkan SNC guna autentikasi antara Integrasi Aplikasi dan sistem SAP Anda. Jika Anda memilih opsi ini, tentukan detail berikut:
- ID objek SNC_LIB: ID objek library SNC.
- Nama PSE: Nama file Personal Security Environment (PSE) yang berlaku untuk bucket. File PSE menyimpan pasangan kunci publik dan pribadi serta sertifikat X.509 dalam struktur ASN.1.
- Kode sandi SNC: Pilih secret Secret Manager dari kode sandi library SNC.
- Versi secret: Pilih versi secret.
- Nama SNC: Masukkan nama untuk koneksi SNC.
-
SNC qop: Pilih tingkat perlindungan. Berikut adalah level yang didukung:
- 1 - Hanya terapkan autentikasi.
- 2 - Terapkan perlindungan integritas. Hal ini juga mencakup perlindungan autentikasi.
- 3 - Terapkan perlindungan privasi. Hal ini juga mencakup perlindungan integritas dan autentikasi.
- 8 - Menerapkan perlindungan default.
- 9 - Menerapkan perlindungan maksimum.
- Nama partner SNC: Masukkan nama SNC Server Aplikasi.
-
Skema koneksi: Tentukan apakah Anda terhubung ke sistem SAP dengan Server Pesan (Server Grup) atau Server Aplikasi. Untuk mengetahui informasi tentang prasyarat yang harus Anda penuhi untuk terhubung ke sistem SAP dengan Server Pesan, lihat Jenis koneksi Server Pesan (Server Grup).
Jika memilih GroupServer, Anda harus menentukan detail berikut:
- Message Server: Tentukan Message Server saat terhubung ke sistem SAP yang menggunakan load balancing.
- Layanan Server Pesan: Layanan Server Pesan yang ingin Anda hubungkan.
- Grup: Grup login yang digunakan. Anda hanya boleh menentukannya saat terhubung ke sistem SAP yang menggunakan load balancing.
Jika terhubung ke sistem SAP dengan Server Pesan (Server Grup), Anda tidak perlu menentukan alamat host di bagian Tujuan.
- Secara opsional, konfigurasikan Setelan node koneksi:
- Jumlah node minimum: Masukkan jumlah minimum node koneksi.
- Maximum number of nodes: Masukkan jumlah maksimum node koneksi.
Node adalah unit (atau replika) koneksi yang memproses transaksi. Semakin banyak node yang diperlukan untuk memproses lebih banyak transaksi untuk koneksi, dan sebaliknya, semakin sedikit node yang diperlukan untuk memproses lebih sedikit transaksi. Untuk memahami pengaruh node terhadap harga konektor, lihat Harga untuk node koneksi. Jika Anda tidak memasukkan nilai apa pun, secara default, node minimum ditetapkan ke 2 (untuk ketersediaan yang lebih baik) dan node maksimum ditetapkan ke 50.
- Secara opsional, klik + TAMBAHKAN LABEL untuk menambahkan label ke Koneksi dalam bentuk pasangan kunci/nilai.
- Klik Berikutnya.
- Di bagian Destinations, masukkan detail host jarak jauh (sistem backend) yang ingin Anda hubungkan. Jika terhubung ke sistem SAP dengan Server Pesan, Anda tidak perlu menentukan alamat host.
- Jenis Tujuan: Pilih Jenis Tujuan.
- Pilih Host address dari daftar untuk menentukan nama host atau alamat IP tujuan.
- Jika Anda ingin membuat koneksi pribadi ke sistem backend, pilih Endpoint attachment dari daftar, lalu pilih lampiran endpoint yang diperlukan dari daftar Endpoint Attachment.
Jika ingin membuat koneksi publik ke sistem backend dengan keamanan tambahan, Anda dapat mempertimbangkan untuk mengonfigurasi alamat IP keluar statis untuk koneksi Anda, lalu mengonfigurasi aturan firewall untuk hanya mengizinkan alamat IP statis tertentu.
Untuk memasukkan tujuan tambahan, klik +Tambahkan tujuan.
- Klik Berikutnya.
- Jenis Tujuan: Pilih Jenis Tujuan.
-
Di bagian Authentication, masukkan detail autentikasi.
- Pilih Jenis autentikasi dan masukkan detail yang relevan.
Jenis autentikasi berikut didukung oleh koneksi SAP ERP:
- Autentikasi berbasis sertifikat X509
- Nama pengguna dan sandi
- Klik Berikutnya.
Untuk memahami cara mengonfigurasi jenis autentikasi ini, lihat Mengonfigurasi autentikasi.
- Pilih Jenis autentikasi dan masukkan detail yang relevan.
- Jika Anda telah mengaktifkan langganan peristiwa, bagian Detail Langganan Peristiwa akan muncul di halaman pembuatan koneksi. Untuk memahami cara mengonfigurasi detail langganan peristiwa, lihat Mengonfigurasi langganan peristiwa.
- Tinjau: Tinjau detail koneksi dan autentikasi Anda.
- Klik Create.
-
Autentikasi Berbasis X509Certificate
- X509Certificate: Sertifikat X509 yang digunakan untuk login.
- Versi secret: Pilih versi secret.
-
Nama pengguna dan sandi
- Nama pengguna: Nama pengguna untuk konektor
- Sandi: Secret Manager Secret yang berisi sandi yang terkait dengan konektor.
-
Pilih salah satu jenis autentikasi berikut untuk pemroses peristiwa.
- Google Authentication. Jika Anda mengaktifkan opsi ini, ikuti langkah-langkah di bagian Mengautentikasi menggunakan Token Web JSON untuk mengonfigurasi autentikasi untuk ABAP SDK. Selain itu, pastikan akun layanan memiliki peran roles/connectors.listener yang token aksesnya digunakan untuk autentikasi.
- Autentikasi Kunci API. Jika memilih opsi ini, Anda harus membuat kunci API, lalu menyimpan kunci tersebut sebagai secret Secret Manager. Untuk informasi selengkapnya, lihat Membuat kunci API.
-
Masukkan nama kolom jenis peristiwa. Kolom ini mengidentifikasi jenis peristiwa yang terkait dengan permintaan peristiwa masuk.
{ "event_type": "user.created", ... // other request fields ... }
- Pilih Aktifkan konektivitas pribadi untuk konektivitas aman antara aplikasi backend dan koneksi Anda. Jika memilih opsi ini, Anda harus melakukan langkah konfigurasi tambahan setelah membuat koneksi. Untuk mengetahui informasi selengkapnya, lihat Konektivitas pribadi untuk langganan peristiwa.
- Masukkan konfigurasi dead-letter. Jika Anda mengonfigurasi dead-letter, koneksi akan menulis peristiwa yang belum diproses ke topik Pub/Sub yang ditentukan. Masukkan detail berikut:
- Project ID dead-letter: Project ID Google Cloud tempat Anda mengonfigurasi topik dead-letter Pub/Sub.
- Topik dead-letter: Topik Pub/Sub tempat Anda ingin menulis detail peristiwa yang tidak diproses.
- Gunakan fungsi
RFC_READ_TABLE
sebagai template untuk fungsi baru. Pilih kode transaksiSE37
dan grup fungsiSDTX
, lalu salinRFC_READ_TABLE
ke grup fungsi baru atau grup fungsi yang sedang Anda gunakan. Dalam contoh ini,RFC_READ_TABLE
disalin keZ_CUSTOM_READ_TABLE
. - Di tab Attributes pada layar SAP, pilih
Remote Enabled Module
. - Pada tab Tables, tetapkan parameter
DATA
keCHAR8000
. Klik kanan layar, lalu klik Display -> Change. - Di tab Kode Sumber, tempel contoh kode sumber untuk modul fungsi
RFC_READ_TABLE
pengganti yang terletak di subfolderdb
di direktori penginstalan. Kode ini terletak diZ_CUSTOM_READ_TABLE.txt
, meskipunZ_CUSTOM_READ_TABLE_752.txt
lebih disukai jika instance SAP ERP Anda menjalankan ABAP versi 7.52 atau yang lebih baru. - Klik Simpan.
- Tentukan impor, tabel, dan pengecualian seperti yang didokumentasikan dalam tabel baca kustom yang disediakan.
- Aktifkan modul fungsi dan di string koneksi, tetapkan
ReadTableFunction
keZ_CUSTOM_READ_TABLE
, atau nama modul fungsi Anda. - Pelajari semua tugas dan pemicu.
- Pelajari cara menguji dan memublikasikan integrasi.
- Pelajari penanganan error.
- Pelajari log eksekusi integrasi.
Menambahkan pemicu SAP ERP
Untuk menambahkan pemicu SAP ERP ke integrasi Anda, lakukan langkah-langkah berikut:
Untuk mengonfigurasi pemicu SAP ERP, Anda dapat menggunakan koneksi SAP ERP yang ada di Konektor Integrasi, atau membuat koneksi SAP ERP baru menggunakan opsi pembuatan koneksi inline.
Mengonfigurasi pemicu SAP ERP menggunakan koneksi yang ada
Pemicu SAP ERP adalah Pemicu Peristiwa Konektor, sehingga Anda hanya dapat menggunakan koneksi SAP ERP dengan langganan peristiwa yang diaktifkan untuk mengonfigurasi pemicu.
Untuk informasi tentang cara mengonfigurasi pemicu SAP ERP menggunakan koneksi SAP ERP baru, lihat Mengonfigurasi pemicu SAP ERP menggunakan koneksi baru
Untuk mengonfigurasi pemicu SAP ERP menggunakan koneksi SAP ERP yang ada, lakukan langkah-langkah berikut:
Mengonfigurasi pemicu SAP ERP menggunakan koneksi baru
Mengonfigurasi autentikasi
Masukkan detail berdasarkan autentikasi yang ingin Anda gunakan.
Mengonfigurasi untuk langganan peristiwa
Jika mengaktifkan langganan peristiwa, Anda harus mengonfigurasi ABAP SDK. Untuk informasi tentang cara mengonfigurasi ABAP SDK, lihat Ringkasan ABAP SDK untuk Google Cloud.
Masukkan nilai berikut di bagian Event Subscription Details:
Menggunakan fungsi tabel baca kustom
RFC_READ_TABLE
Konektor menggunakan fungsi RFC_READ_TABLE
SAP untuk mendapatkan data dari tabel SAP.
Namun, fitur ini memiliki batasan tertentu. Misalnya, pertimbangkan pengecualian
DATA_BUFFER_EXCEEDED
. RFC_READ_TABLE
SAP memiliki ukuran tetap 512 byte. Buffer ini dapat menyimpan
setiap baris data, sehingga Anda tidak dapat memilih lebih banyak kolom daripada jumlah yang
sesuai dengan buffer ini. Jika Anda memilih lebih dari 512 byte, pengecualian akan terjadi
yang menunjukkan bahwa Anda telah melebihi ukuran buffer maksimum yang diizinkan per baris dan perlu
memilih lebih sedikit kolom.
RFC_READ_TABLE2
Konektor SAP ERP mendukung fungsi baca tabel RFC_READ_TABLE2
. Anda dapat mengalihkan fungsi pembacaan tabel aktif ke RFC_READ_TABLE2
dengan menetapkan ReadTableFunction
ke /SAPDS/RFC_READ_TABLE2
.
Fungsi tabel baca kustom
Konektor menyertakan RFC tabel baca kustom, Z_CUSTOM_READ_TABLE
yang mirip dengan SAP RFC_READ_TABLE
, tetapi dengan buffering yang lebih besar untuk mengatasi masalah DATA_BUFFER_EXCEEDED
dan mengabaikan batasan RFC_READ_TABLE
.
Untuk menggunakan RFC tabel baca kustom yang disertakan guna mengabaikan batasan dengan RFC_READ_TABLE
default, ikuti langkah-langkah berikut:
Tabel Baca Kustom ABAP 7.52
Bersama dengan Z_CUSTOM_READ_TABLE.txt
, ada juga file Z_CUSTOM_READ_TABLE_752.txt
, untuk ABAP versi 7.52 dan yang lebih baru. Fungsi ini mirip dengan Z_CUSTOM_READ_TABLE
, tetapi memanfaatkan kata kunci yang baru tersedia di ABAP 7.52 untuk melakukan paging dalam database,
bukan dalam skrip ABAP itu sendiri. Hal ini membuat paging menjadi efisien saat menangani tabel besar.
Sebaiknya gunakan RFC Z_CUSTOM_READ_TABLE_752
.
Mengonfigurasi autentikasi di SAP
Konfigurasikan autentikasi di SAP dengan mengikuti petunjuk dalam panduan Ringkasan autentikasi untuk ABAP SDK untuk Google Cloud edisi cloud atau on-premise.
Memvalidasi pemicu
Untuk memvalidasi pemicu, Anda dapat membuat program ABAP. Berikut adalah contoh program ABAP yang dapat Anda gunakan sebagai referensi. Kolom ls_event_payload
berubah berdasarkan persyaratan Anda:
*&---------------------------------------------------------------------* *& Report ZR_TEST_INT_CONNECTOR *&---------------------------------------------------------------------* *& *&---------------------------------------------------------------------* REPORT zr_test_int_connector. PARAMETERS: p_auth TYPE char1 RADIOBUTTON GROUP rbg1 USER-COMMAND uc DEFAULT 'X', p_apik TYPE char1 RADIOBUTTON GROUP rbg1. DATA: lv_p_projects_id TYPE string, lv_p_locations_id TYPE string, lv_p_connections_id TYPE string, ls_input TYPE /goog/cl_connectors_v1=>ty_103. TYPES: BEGIN OF event_payload, event_type TYPE string, event_id TYPE string, name TYPE string, org_id TYPE string, END OF event_payload. DATA: ls_event_payload TYPE event_payload. ls_event_payload = VALUE #( event_type = 'create-entity' event_id = '1' name = 'demo-org' org_id = 'SAP' ). TRY. IF p_Auth = abap_true. DATA(lv_client_key) = 'IC_DEMO_GOOGLE_AUTH'. lv_p_connections_id = 'conn-event-triggers-from-sap-erp'. ELSE. lv_client_key = 'IC_DEMO_GOOGLE_APIK'. lv_p_connections_id = 'conn-event-triggers-from-sap-erp-apik'. ENDIF. * Open HTTP Connection DATA(lo_client) = NEW /goog/cl_connectors_v1( iv_key_name = CONV #( lv_client_key ) ). * Populate relevant parameters lv_p_projects_id = lo_client->gv_project_id. lv_p_locations_id = 'us-central1'. GET REFERENCE OF ls_event_payload INTO ls_input-payload . * Call API method: connectors.projects.locations.connections.listenEvent CALL METHOD lo_client->listen_event_connections EXPORTING iv_p_projects_id = lv_p_projects_id iv_p_locations_id = lv_p_locations_id iv_p_connections_id = lv_p_connections_id is_input = ls_input IMPORTING * es_raw = es_output = DATA(ls_output) ev_ret_code = DATA(lv_ret_code) ev_err_text = DATA(lv_err_text) es_err_resp = DATA(ls_err_resp). IF lo_client->is_success( lv_ret_code ). MESSAGE 'Success' TYPE 'S'. ELSE. MESSAGE lv_err_text TYPE 'E'. ENDIF. * Close HTTP Connection lo_client->close( ). CATCH /goog/cx_sdk INTO DATA(lo_exception). MESSAGE lo_exception->get_text( ) TYPE 'E'. ENDTRY.
Kuota dan batas
Untuk mengetahui informasi tentang kuota dan batas, lihat Kuota dan batas.