Lihat konektor yang didukung untuk Application Integration.

Memanggil integrasi untuk peristiwa Pengambilan Data Perubahan (CDC) Salesforce

Pelajari cara membuat contoh integrasi dalam 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 dalam Application Integration untuk peristiwa Salesforce Change Data Capture (CDC) seperti yang ditunjukkan pada gambar berikut:

Contoh diagram urutan Contoh diagram urutan

Pemicu Salesforce berlangganan ke saluran peluang Salesforce. Perubahan data pada peluang Salesforce akan memicu 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 statusnya tetap terbuka, integrasi akan mengirimkan pesan ke topik pub/sub menggunakan konektor.

Langkah-langkah berikut menjelaskan cara mengonfigurasi pemicu, tugas, profil autentikasi, edge, variabel, dan pemetaan data yang diperlukan untuk menjalankan integrasi yang berhasil.

Sebelum memulai

  • Pastikan akun developer Salesforce Anda telah mengaktifkan Pengambilan Data Perubahan (CDC). Tutorial ini mengasumsikan bahwa Anda sudah memiliki akun developer Salesforce dengan penyiapan pengguna dan kumpulan izin yang diperlukan. Untuk informasi tentang penyiapan pengguna dan kumpulan izin Salesforce, lihat Mengonfigurasi pemicu Salesforce.
  • Tetapkan peran IAM berikut ke Application Integration Service Agent(service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com) di project Google Cloud Anda.
    • Editor Pub/Sub
    • Admin Konektor
    • Invoker Integrasi Aplikasi
    Untuk mengetahui informasi selengkapnya tentang penetapan peran IAM, lihat Peran dan izin IAM.
  • Buat tabel Cloud SQL untuk menyimpan data CDC Salesforce.
    1. Di konsol Google Cloud, buka halaman Instance Cloud SQL dan hubungkan ke instance MySQL Anda. Lihat Menghubungkan ke Cloud SQL untuk MySQL dari Cloud Shell.

      Buka instance Cloud SQL

    2. 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;
      
    3. Verifikasi bahwa tabel sudah dibuat dengan menjalankan perintah berikut.
      SELECT * FROM OPPORTUNITIES;
  • Membuat koneksi Cloud SQL untuk MySQL di Konektor. Lihat Membuat koneksi Cloud SQL untuk MySQL untuk mengetahui informasi selengkapnya.
  • Membuat koneksi Cloud Pub/Sub di Konektor. Lihat Membuat koneksi Cloud Pub/Sub untuk mengetahui informasi selengkapnya.

Membuat integrasi baru

Untuk membuat integrasi baru, lakukan langkah-langkah berikut:

  1. Di konsol Google Cloud, buka halaman Application Integration.

    Buka Application Integration

  2. Di menu navigasi, klik Integrasi. Halaman Integrations List akan muncul.
  3. Klik Create integration.
  4. Masukkan nama dan deskripsi dalam dialog Create Integration. Contoh, Demo-CDC-Opportunities.
  5. Pilih region untuk integrasi.
  6. Klik Create untuk membuka desainer integrasi.

Menambahkan dan mengonfigurasi pemicu Salesforce

Untuk menambahkan dan mengonfigurasi pemicu Salesforce ke integrasi, lakukan langkah-langkah berikut:

  1. Di desainer integrasi, pilih Add a task/trigger > Triggers untuk menampilkan daftar pemicu yang tersedia.
  2. Klik dan tempatkan elemen pemicu Salesforce dalam desainer integrasi.
  3. Klik elemen pemicu Salesforce di kanvas untuk membuka panel konfigurasi pemicu.
  4. 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 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.
    • Konfigurasi saluran Salesforce: Klik opsi + Tambahkan konfigurasi saluran Salesforce baru dari menu drop-down.

      Dialog Tambahkan saluran Salesforce akan muncul.

      • Salesforce object name: Masukkan Opportunity.
      • Klik Tambahkan.
    • Operasi: Pilih Update 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 guna menyisipkan data ke dalam tabel Cloud SQL yang ada menggunakan koneksi Cloud SQL untuk MySQL:

  1. Pilih +Tambahkan tugas/pemicu > Tasks di desainer integrasi untuk menampilkan daftar tugas yang tersedia.
  2. Klik dan tempatkan elemen Connectors di desainer integrasi.
  3. Klik elemen tugas Connectors pada desainer untuk melihat Connectors task configuration panel.
  4. Klik dan ubah nama Konektor sebagai Insert row to Cloud SQL.
  5. Klik Konfigurasi tugas.

    Dialog Configure Connector task akan muncul.

  6. Lakukan tindakan berikut dalam dialog Configure Connector task:
    1. Pilih region koneksi.
    2. Setelah wilayah dipilih, kolom Koneksi akan muncul. Pilih koneksi Cloud SQL untuk MySQL Anda dari daftar koneksi yang tersedia.
    3. Setelah koneksi dipilih, kolom Jenis akan muncul. Pilih Entitas, lalu PELUANG dari daftar entitas yang tersedia.
    4. Setelah jenis dipilih, kolom Operation akan muncul. Pilih Create.
    5. 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 guna memublikasikan pesan Pub/Sub menggunakan koneksi Cloud Pub/Sub:

  1. Pilih +Tambahkan tugas/pemicu > Tasks di desainer integrasi untuk menampilkan daftar tugas yang tersedia.
  2. Klik dan tempatkan elemen Connectors di desainer integrasi.
  3. Klik elemen tugas Connectors pada desainer untuk melihat Connectors task configuration panel.
  4. Klik dan ubah nama Konektor sebagai Publish to cloud pub/sub.
  5. Klik Konfigurasi tugas.

    Dialog Configure Connector task akan muncul.

  6. Lakukan tindakan berikut dalam dialog Configure Connector task:
    1. Pilih region koneksi.
    2. Setelah wilayah dipilih, kolom Koneksi akan muncul. Pilih koneksi Pub/Sub dari daftar koneksi yang tersedia.
    3. Setelah koneksi dipilih, kolom Jenis akan muncul. Pilih Tindakan, lalu publishMessage dari daftar tindakan yang tersedia.
    4. Klik Done untuk menyelesaikan konfigurasi koneksi dan menutup panel.

Mengonfigurasi tugas Pemetaan Data

Lakukan hal berikut untuk mengonfigurasi tugas Data Mapping.:

  1. Pilih Tambahkan tugas/pemicu > Tasks untuk menampilkan daftar tugas yang tersedia.
  2. Klik dan tempatkan elemen Pemetaan Data di desainer integrasi.
  3. Klik elemen Data Mapping pada desainer untuk membuka panel konfigurasi tugas.
  4. Klik Open Data Mapping Editor.

    Data Mapping Editor memungkinkan Anda memetakan variabel input ke variabel output yang diinginkan, menggunakan fungsi transformasi yang tersedia. Outputnya kemudian tersedia sebagai variabel untuk pemicu atau tugas integrasi lainnya. Untuk detail selengkapnya tentang meneruskan data sebagai variabel, lihat Menggunakan variabel dalam Application Integration.

  5. Klik + Tambahkan variabel baru, lalu buat variabel output berikut:
    Nama variabel output Jenis data
    OpportunityIsClosed Boolean
    OpportunityId String
    PubSubMessage String
  6. Buat pemetaan berikut antara variabel SalesforceTriggerCdcPayload dan variabel Payload input konektor seperti yang 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)
  7. Setelah pemetaan selesai, tutup panel tersebut. Setiap perubahan akan disimpan 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.

  1. Tambahkan koneksi edge dari elemen pemicu Salesforce ke elemen Pemetaan Data.
  2. Tambahkan koneksi edge dari elemen Data Mapping ke elemen Insert row to Cloud SQL Connector dengan kondisi edge berikut:
      $OpportunityIsClosed$ = TRUE
  3. Tambahkan koneksi edge lainnya dari elemen Data Mapping ke elemen Cloud Pub/Sub Connector dengan kondisi edge berikut:
      $OpportunityIsClosed$ = FALSE
Gambar contoh yang menunjukkan sambungan tepi Gambar contoh yang menunjukkan sambungan tepi

Menguji integrasi

Untuk menguji integrasi baru:

  1. Klik Test di toolbar desainer integrasi, lalu pilih Pemicu Salesforce.

    Dialog Test Integration akan muncul.

  2. 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 lainnya tentang peluang, tetapi biarkan status peluang "terbuka".

Untuk informasi selengkapnya tentang pengujian, lihat Menguji dan memublikasikan integrasi.

Untuk memverifikasi keberhasilan integrasi Anda:

  • Buka halaman Cloud SQL.

    Buka Cloud SQL

    Periksa database dan log Cloud SQL Anda untuk mengonfirmasi penyisipan baris baru.
  • Buka halaman Pub/Sub.

    Buka Pub/Sub

    Pilih topik Pub/Sub Anda, lalu klik View messages untuk mengonfirmasi penerimaan pesan yang dikirim oleh integrasi.
  • Periksa log Application Integration untuk melihat status integrasi yang diberikan. Untuk melihat log:
    1. Klik Logs di toolbar desainer integrasi.
    2. Di halaman Log Eksekusi, Anda dapat melihat detail setiap upaya untuk menjalankan integrasi. Setiap entri menyertakan detail upaya eksekusi, termasuk:
      • Nama integrasi
      • ID eksekusi
      • Status
      • Waktu mulai
      • Durasi
      • Versi integrasi
      • ID Pemicu
    3. Klik panah peluas (>) di samping integrasi yang dijalankan untuk melihat daftar tugas dan variabel yang diperluas dalam integrasi, beserta status tugas dan payload variabel.