Pelajari cara membuat contoh integrasi di Integrasi Apigee menggunakan pemicu Salesforce. Langkah-langkah berikut menjelaskan cara mengonfigurasi pemicu, tugas, konektor, dan pemetaan data yang diperlukan untuk menjalankan integrasi lengkap.
Dalam panduan memulai ini, Anda akan menggunakan pemicu Salesforce untuk memanggil integrasi di Integrasi Apigee untuk peristiwa Pengambilan Data Perubahan (CDC) Salesforce seperti yang ditampilkan dalam gambar berikut:
Pemicu Salesforce berlangganan ke saluran peluang Salesforce. Perubahan data pada peluang Salesforce memanggil Integrasi Apigee yang mengekstrak status peluang Salesforce. Jika statusnya ditutup, integrasi akan mengekstrak detail peluang dan menulis data ke instance Cloud SQL menggunakan konektor. Jika ada perubahan data, tetapi statusnya tetap terbuka, integrasi akan mengirimkan pesan ke topik pub/sub menggunakan konektor.
Langkah-langkah berikut menjelaskan cara mengkonfigurasi pemicu, tugas, profil autentikasi, tepi, variabel, dan pemetaan data yang diperlukan untuk menjalankan integrasi yang berhasil.
Sebelum memulai
- Pastikan akun developer Salesforce Anda mengaktifkan Pengambilan Data Perubahan (CDC). Tutorial ini mengasumsikan bahwa Anda sudah memiliki akun developer Salesforce dengan penyiapan pengguna dan izin yang diperlukan. Untuk informasi tentang penyiapan pengguna dan kumpulan izin Salesforce, lihat Mengonfigurasi pemicu Salesforce.
- Tetapkan peran IAM berikut ke Apigee Integration Service Agent(
service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com
) di project Google Cloud Anda.- Editor Pub/Sub
- Admin Konektor
- Invoker Integrasi Apigee
- Buat tabel Cloud SQL untuk menyimpan data CDC Salesforce.
- Di Konsol Google Cloud, buka halaman Cloud SQL Instances dan hubungkan ke instance MySQL Anda. Lihat Menghubungkan ke Cloud SQL untuk MySQL dari Cloud Shell.
- Buat database MySQL berikut di instance Cloud SQL Anda:
CREATE DATABASE SALESFORCE_TRIGGER_DEMO; USE SALESFORCE_TRIGGER_DEMO; CREATE TABLE OPPORTUNITIES ( ID INT NOT NULL AUTO_INCREMENT, NAME VARCHAR(150) NOT NULL, AMOUNT DOUBLE NOT NULL, DT_CLOSE VARCHAR(150) NOT NULL, PRIMARY KEY (ID) ); COMMIT;
- Pastikan tabel dibuat dengan menjalankan perintah berikut.
SELECT * FROM OPPORTUNITIES;
- Buat koneksi Cloud SQL untuk MySQL di Konektor. Lihat Membuat koneksi Cloud SQL untuk MySQL untuk mengetahui informasi selengkapnya.
- Buat koneksi Cloud Pub/Sub di Konektor. Lihat Membuat koneksi Cloud Pub/Sub untuk informasi selengkapnya.
Membuat integrasi baru
Untuk membuat integrasi baru, lakukan langkah-langkah berikut:
- Di UI Apigee, pilih Organisasi Apigee Anda.
- Klik Develop > Integrasi.
- Klik Create integration.
- Masukkan nama dan deskripsi dalam dialog Create Integration. Contoh,
Demo-CDC-Opportunities
. - Pilih region untuk integrasi.
- Klik Create untuk membuka desainer integrasi.
Menambahkan dan mengonfigurasi pemicu Salesforce
Untuk menambahkan dan mengonfigurasi pemicu Salesforce ke integrasi, lakukan langkah-langkah berikut:
- Di desainer integrasi, pilih Add a task/trigger > Pemicu untuk menampilkan daftar pemicu yang tersedia.
- Klik dan tempatkan elemen pemicu Salesforce di desainer integrasi.
- Klik elemen Pemicu Salesforce di kanvas untuk membuka panel konfigurasi pemicu.
- Konfigurasikan kolom berikut di bagian Input Pemicu:
- Jenis peristiwa: Pilih Change Data Capture (CDC) dari menu drop-down.
- Konfigurasi instance Salesforce: Klik opsi + Tambahkan konfigurasi instance Salesforce baru dari menu drop-down.
Dialog Add Salesforce instance configuration akan muncul.
- Nama koneksi instance Salesforce: Masukkan nama koneksi untuk instance Salesforce. Contoh,
CDC-PlatformUser
. - Domain Salesforce: Masukkan nama domain Salesforce Anda. Anda dapat menemukan informasi ini dari Akun Salesforce > Lihat profil.
- Profil autentikasi: Pilih profil autentikasi. Jika Anda tidak memiliki profil autentikasi, buat profil baru. Untuk mengetahui informasinya, lihat Membuat profil autentikasi baru.
- Klik Tambahkan.
- Nama koneksi instance Salesforce: Masukkan nama koneksi untuk instance Salesforce. Contoh,
- Konfigurasi saluran Salesforce: Klik opsi + Tambahkan konfigurasi saluran Salesforce baru dari menu drop-down.
Dialog Tambahkan saluran Salesforce akan muncul.
- Nama objek Salesforce: Masukkan
Opportunity
. - Klik Tambahkan.
- Nama objek Salesforce: Masukkan
- Operasi: Pilih Perbarui dari menu drop-down
Perubahan pada properti disimpan secara otomatis.
Menambahkan dan mengonfigurasi tugas
Tutorial ini menggunakan tugas Konektor dan Pemetaan Data. Detail konfigurasi untuk setiap tugas ini dijelaskan sebagai berikut.
Mengonfigurasi tugas Konektor dengan koneksi Cloud SQL untuk MySQL
Lakukan langkah-langkah berikut untuk mengonfigurasi tugas Konektor untuk menyisipkan kumpulan data ke tabel Cloud SQL yang ada menggunakan koneksi Cloud SQL untuk MySQL:
- Pilih +Tambahkan tugas/pemicu > Tugas di desainer integrasi untuk menampilkan daftar tugas yang tersedia.
- Klik dan tempatkan elemen Konektor di desainer integrasi.
- Klik elemen tugas Konektor pada desainer untuk melihat tugas Konektor panel konfigurasi.
- Klik
Insert row to Cloud SQL
.
dan ubah nama Connectors sebagai - Klik Configure task.
Dialog Configure Connector task akan muncul.
- Lakukan hal berikut dalam dialog Configure Connector task:
- Pilih region koneksi.
- Setelah wilayah dipilih, kolom Koneksi akan muncul. Pilih koneksi Cloud SQL untuk MySQL Anda dari daftar koneksi yang tersedia.
- Setelah koneksi dipilih, kolom Jenis akan muncul. Pilih Entity, lalu PELUANG dari daftar entity yang tersedia.
- Setelah jenis dipilih, kolom Operation akan muncul. Pilih Create.
- Klik Done untuk menyelesaikan konfigurasi koneksi dan menutup panel.
Mengonfigurasi tugas Konektor dengan koneksi Cloud Pub/Sub
Lakukan langkah-langkah berikut untuk mengonfigurasi tugas Konektor untuk memublikasikan pesan Pub/Sub menggunakan koneksi Cloud Pub/Sub:
- Pilih +Tambahkan tugas/pemicu > Tugas di desainer integrasi untuk menampilkan daftar tugas yang tersedia.
- Klik dan tempatkan elemen Konektor di desainer integrasi.
- Klik elemen tugas Konektor pada desainer untuk melihat tugas Konektor panel konfigurasi.
- Klik
Publish to cloud pub/sub
.
dan ubah nama Connectors sebagai - Klik Configure task.
Dialog Configure Connector task akan muncul.
- Lakukan hal berikut dalam dialog Configure Connector task:
- Pilih region koneksi.
- Setelah wilayah dipilih, kolom Koneksi akan muncul. Pilih koneksi Pub/Sub Anda dari daftar koneksi yang tersedia.
- Setelah koneksi dipilih, kolom Jenis akan muncul. Pilih Actions, lalu publishMessage dari daftar tindakan yang tersedia.
- Klik Done untuk menyelesaikan konfigurasi koneksi dan menutup panel.
Mengonfigurasi tugas Pemetaan Data
Lakukan hal berikut untuk mengonfigurasi tugas Pemetaan Data:
- Pilih Tambahkan tugas/pemicu > Tasks untuk menampilkan daftar tugas yang tersedia.
- Klik dan tempatkan elemen Pemetaan Data di desainer integrasi.
- Klik elemen Data Mapping pada desainer untuk membuka panel konfigurasi dari tugas.
- Klik Open Data Mapping Editor.
Editor Pemetaan Data memungkinkan Anda memetakan variabel input ke variabel output yang diinginkan, menggunakan fungsi transformasi yang tersedia. Output-nya kemudian tersedia sebagai variabel untuk tugas atau pemicu integrasi lainnya. Untuk mengetahui detail selengkapnya tentang meneruskan data sebagai variabel, lihat Menggunakan variabel dalam Integrasi Apigee.
- Klik + Tambahkan variabel baru, lalu buat variabel output berikut:
Nama variabel output Jenis data OpportunityIsClosed
Boolean
OpportunityId
String
PubSubMessage
String
- Buat pemetaan berikut antara variabel SalesforceTriggerCdcPayload dan variabel Payload input konektor seperti ditunjukkan dalam tabel berikut:
Input Output SalesforceTriggerCdcPayload.GET_PROPERTY("IsClosed").TO_BOOLEAN()
OpportunityIsClosed
SalesforceTriggerCdcPayload.GET_PROPERTY("Id").TO_STRING()
OpportunityId
OpportunityId.TO_DOUBLE()
connectorInputPayload.ID(Insert row to Cloud SQL)
SalesforceTriggerCdcPayload.GET_PROPERTY("Name").TO_STRING()
connectorInputPayload.NAME(Insert row to Cloud SQL)
SalesforceTriggerCdcSnapshot.GET_PROPERTY("Amount").TO_DOUBLE()
connectorInputPayload.AMOUNT(Insert row to Cloud SQL)
SalesforceTriggerCdcSnapshot.GET_PROPERTY("CloseDate").TO_STRING()
connectorInputPayload.DT_CLOSE(Insert row to Cloud SQL)
OpportunityId.CONCAT(" is still open")
PubSubMessage
PubSubMessage
connectorInputPayload.message(Publish to cloud pub/sub)
Setelah pemetaan selesai, tutup panel tersebut. Setiap perubahan akan disimpan secara otomatis.
Tambahkan koneksi edge
Edge adalah koneksi antara dua elemen dalam integrasi dan kondisi edge memungkinkan Anda menentukan kondisi yang harus dipenuhi agar kontrol integrasi dapat diteruskan ke tugas yang dihubungkan oleh edge. Untuk mengetahui informasi selengkapnya tentang kondisi tepi dan tepi, lihat Edge.
- Tambahkan koneksi edge dari elemen pemicu Salesforce ke elemen Pemetaan Data.
- Tambahkan koneksi edge dari elemen Pemetaan Data ke elemen Sisipkan baris ke Konektor Cloud SQL dengan kondisi edge berikut:
$OpportunityIsClosed$ = TRUE
- Tambahkan koneksi edge lain dari elemen Pemetaan Data ke elemen Konektor Cloud Pub/Sub dengan kondisi edge berikut:
$OpportunityIsClosed$ = FALSE
Menguji integrasi
Untuk menguji integrasi baru:
- Klik Test di toolbar desainer integrasi, lalu pilih Pemicu Salesforce.
Dialog Test Integration akan muncul.
- Klik Uji integrasi.
Uji tugas Cloud SQL dengan login ke instance Salesforce dan mengubah status peluang menjadi "tertutup".
Uji tugas Pub/Sub dengan login ke instance Salesforce dan mengubah detail lain tentang peluang, tetapi membiarkan status peluang "terbuka".
Untuk mengetahui informasi selengkapnya tentang pengujian, lihat Menguji dan memublikasikan integrasi.
Untuk memverifikasi keberhasilan integrasi Anda:
- Buka halaman Cloud SQL. Periksa log Cloud SQL dan database Anda untuk mengonfirmasi penyisipan baris baru.
- Buka halaman Pub/Sub. Pilih topik Pub/Sub Anda, lalu klik View messages untuk mengonfirmasi penerimaan pesan yang dikirim oleh integrasi.
- Periksa log Integrasi Apigee untuk melihat status integrasi tertentu. Untuk melihat log:
- Klik Logs di toolbar desainer integrasi.
- Di halaman Execution Logs, Anda dapat melihat detail tentang setiap upaya untuk menjalankan integrasi.
Setiap entri menyertakan detail upaya eksekusi, termasuk:
- Nama integrasi
- ID eksekusi
- Status
- Waktu mulai
- Durasi
- Versi integrasi
- ID Pemicu
- Klik panah luaskan (>) di samping integrasi yang dijalankan untuk melihat daftar tugas dan variabel dalam integrasi, bersama dengan status tugas dan {i>payload<i} variabel.