Memanggil integrasi untuk peristiwa Salesforce Change Data Capture (CDC)
Pelajari cara membuat contoh integrasi di Application Integration 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 Application Integration untuk peristiwa Salesforce Change Data Capture (CDC) seperti yang ditunjukkan pada gambar berikut:
Pemicu Salesforce berlangganan ke saluran peluang Salesforce. Perubahan data pada peluang Salesforce memanggil Integrasi Aplikasi 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 status tetap terbuka, integrasi akan mengirimkan pesan ke topik pub/sub menggunakan konektor.
Langkah-langkah berikut menjelaskan cara mengonfigurasi pemicu, tugas, profil autentikasi, tepi, variabel, dan pemetaan data yang diperlukan untuk menjalankan integrasi yang berhasil.
Sebelum memulai
- Pastikan akun developer Salesforce Anda telah mengaktifkan Change Data Capture (CDC). Tutorial ini mengasumsikan bahwa Anda memiliki akun developer Salesforce yang sudah ada dengan penyiapan pengguna dan set izin yang diperlukan. Untuk mengetahui informasi tentang penyiapan pengguna dan set izin Salesforce, lihat Mengonfigurasi pemicu Salesforce.
- Tetapkan peran IAM berikut ke Agen Layanan Integrasi Aplikasi(
service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com) di project Google Cloud Anda.- Editor Pub/Sub
- Admin Konektor
- Pemanggil Integrasi Aplikasi
- Buat tabel Cloud SQL untuk menyimpan data CDC Salesforce.
- Di Konsol Google Cloud , buka halaman Instance Cloud SQL, lalu 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 mendetail.
- Buat koneksi Cloud Pub/Sub di Konektor. Lihat Membuat koneksi Cloud Pub/Sub untuk mengetahui informasi mendetail.
Membuat integrasi baru
Untuk membuat integrasi baru, lakukan langkah-langkah berikut:
- Di konsol Google Cloud, buka halaman Application Integration.
- Klik Integrasi dari menu navigasi kiri untuk membuka halaman Integrasi.
- Klik Buat integrasi.
- Masukkan nama dan deskripsi dalam dialog Buat Integrasi. Contoh,
Demo-CDC-Opportunities. - Pilih region untuk integrasi.
- Klik Buat untuk membuka perancang integrasi.
Menambahkan dan mengonfigurasi pemicu Salesforce
Untuk menambahkan dan mengonfigurasi pemicu Salesforce ke integrasi, lakukan langkah-langkah berikut:
- Di perancang integrasi, pilih Tambahkan tugas/pemicu > Pemicu untuk menampilkan daftar pemicu yang tersedia.
- Klik dan tempatkan elemen pemicu Salesforce di perancang integrasi.
- Klik elemen pemicu Salesforce di kanvas untuk membuka panel konfigurasi pemicu.
- Konfigurasi kolom berikut di bagian Input Pemicu:
- Jenis peristiwa: Pilih Change Data Capture (CDC) dari daftar drop-down.
- Konfigurasi instance Salesforce: Klik opsi + Tambahkan konfigurasi instance Salesforce baru dari daftar drop-down.
Dialog Tambahkan konfigurasi instance Salesforce 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 halaman 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 daftar 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 akan 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 guna menyisipkan data ke dalam tabel Cloud SQL yang ada menggunakan koneksi Cloud SQL untuk MySQL:
- Pilih +Tambahkan tugas/pemicu > Tugas di perancang integrasi untuk menampilkan daftar tugas yang tersedia.
- Klik dan tempatkan elemen Konektor di perancang integrasi.
- Klik elemen tugas Konektor di perancang untuk melihat panel konfigurasi tugas Konektor.
- Klik dan ubah nama Konektor menjadi
Insert row to Cloud SQL. - Klik Configure task.
Dialog Konfigurasi tugas konektor akan muncul.
- Lakukan hal berikut dalam dialog Configure connector task:
- Pilih wilayah koneksi.
- Setelah region 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 Entitas, lalu PELUANG dari daftar entitas yang tersedia.
- Setelah jenis dipilih, kolom Operasi akan muncul. Pilih Buat.
- Klik Selesai untuk menyelesaikan konfigurasi koneksi dan menutup panel.
Mengonfigurasi tugas Konektor dengan koneksi Cloud Pub/Sub
Lakukan langkah-langkah berikut untuk mengonfigurasi tugas Konektor guna memublikasikan pesan Pub/Sub menggunakan koneksi Cloud Pub/Sub:
- Pilih +Tambahkan tugas/pemicu > Tugas di perancang integrasi untuk menampilkan daftar tugas yang tersedia.
- Klik dan tempatkan elemen Konektor di perancang integrasi.
- Klik elemen tugas Konektor di perancang untuk melihat panel konfigurasi tugas Konektor.
- Klik dan ubah nama Konektor menjadi
Publish to cloud pub/sub. - Klik Configure task.
Dialog Konfigurasi tugas konektor akan muncul.
- Lakukan hal berikut dalam dialog Configure connector task:
- Pilih wilayah 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 Selesai untuk menyelesaikan konfigurasi koneksi dan menutup panel.
Mengonfigurasi tugas Pemetaan Data
Lakukan langkah-langkah berikut untuk mengonfigurasi tugas Pemetaan Data:
- Pilih Tambahkan tugas/pemicu > Tugas untuk menampilkan daftar tugas yang tersedia.
- Klik dan tempatkan elemen Pemetaan Data di perancang integrasi.
- Klik elemen Pemetaan Data di perancang untuk membuka panel konfigurasi 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 kemudian tersedia sebagai variabel untuk tugas atau pemicu integrasi lainnya. Untuk mengetahui detail selengkapnya tentang meneruskan data sebagai variabel, lihat Menggunakan variabel di Application Integration.
- Klik + Add new variable dan buat variabel output berikut:
Nama variabel output Jenis data OpportunityIsClosedBooleanOpportunityIdStringPubSubMessageString - Buat pemetaan berikut antara variabel SalesforceTriggerCdcPayload dan variabel Connector input payload seperti yang ditunjukkan dalam tabel berikut:
Input Output SalesforceTriggerCdcPayload.GET_PROPERTY("IsClosed").TO_BOOLEAN()OpportunityIsClosedSalesforceTriggerCdcPayload.GET_PROPERTY("Id").TO_STRING()OpportunityIdOpportunityId.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")PubSubMessagePubSubMessageconnectorInputPayload.message(Publish to cloud pub/sub)
Setelah pemetaan selesai, tutup panel. Setiap perubahan akan disimpan otomatis.
Menambahkan koneksi tepi
Edge adalah koneksi antara dua elemen dalam integrasi dan kondisi edge memungkinkan Anda menentukan kondisi yang harus dipenuhi agar kontrol integrasi diteruskan ke tugas yang terhubung oleh edge. Untuk mengetahui informasi selengkapnya tentang edge dan kondisi edge, lihat Edge.
- Tambahkan koneksi tepi 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 perancang integrasi, lalu pilih Salesforce Trigger.
Dialog Test Integration akan muncul.
- Klik Uji integrasi.
Uji tugas Cloud SQL dengan login ke instance Salesforce dan mengubah status peluang menjadi "ditutup".
Uji tugas Pub/Sub dengan login ke instance Salesforce dan mengubah detail lain tentang peluang, tetapi biarkan 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 database dan Cloud SQL 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 Aplikasi untuk melihat status integrasi tertentu. Untuk melihat log:
- Klik Log di toolbar perancang integrasi.
- Di halaman Log Eksekusi, Anda dapat melihat detail tentang setiap upaya untuk menjalankan integrasi.
Setiap entri mencakup detail untuk upaya eksekusi, termasuk:
- Nama integrasi
- ID eksekusi
- Status
- Waktu mulai
- Durasi
- Versi integrasi
- ID Pemicu
- Klik panah peluas (>) di samping integrasi yang dijalankan untuk melihat daftar tugas dan variabel yang diperluas dalam integrasi, beserta status tugas dan payload variabel.