Lihat konektor yang didukung untuk Application Integration.

Tugas For Each Loop

Tugas For Each Loop memungkinkan Anda melakukan panggilan berulang ke sub-integrasi dari integrasi saat ini (utama). Tugas ini melakukan iterasi pada variabel array yang dikonfigurasi dan memanggil sub-integrasi untuk setiap elemen dalam array. Jumlah pemanggilan sub-integrasi sama dengan ukuran variabel array.

ID Pemicu API dan Nama integrasi mengidentifikasi sub-integrasi yang ingin Anda jalankan.

Tugas ini juga memungkinkan Anda mengumpulkan respons dari setiap sub-integrasi yang dijalankan dan menyimpan nilai dalam integrasi saat ini untuk digunakan dalam tugas hilir. Anda dapat menggunakan salah satu pendekatan berikut untuk mengumpulkan respons:

  • Gabungkan respons setiap proses dalam variabel array, dengan setiap elemen array memiliki respons dari satu proses tertentu. Untuk mengumpulkan respons, konfigurasikan properti Collect values from sub-integration output(s).
  • Gabungkan respons semua proses dalam satu variabel. Untuk menggabungkan respons, konfigurasikan properti Response parameter override mapping.

Sebelum memulai

  • Pastikan Anda telah melampirkan akun layanan yang dikelola pengguna ke integrasi Anda. Jika integrasi Anda tidak memiliki akun layanan yang dikelola pengguna yang dikonfigurasi, maka secara default akun layanan default (service-PROJECT_NUMBER@gcp-sa-integrations.) akan digunakan untuk autentikasi.
  • Pastikan akun layanan Anda memiliki peran IAM Application Integration Invoker. Untuk mengetahui informasi tentang cara memberikan peran ke akun layanan, lihat Mengelola akses ke akun layanan.

Properti konfigurasi

Tabel berikut menjelaskan properti konfigurasi tugas For Each Loop.

Properti Data type Deskripsi
API Trigger ID String ID pemicu sub-integrasi yang akan dijalankan.

Nilai ini tersedia di kolom ID Pemicu dari Pemicu API dalam sub-integrasi.

Integration name String Nama sub-integrasi yang akan dijalankan.
List to iterate Array berjenis Boolean, String, Integer, Double, atau JSON. Daftar nilai yang akan menjalankan sub-integrasi. Sub-integrasi berjalan untuk setiap nilai dalam daftar, satu per satu.

Anda dapat meneruskan nilai yang diulang ke sub-integrasi dengan menetapkan properti Pemetaan sub-integrasi elemen iterasi. Dalam properti ini, tentukan variabel dalam sub-integrasi yang akan dipetakan ke nilai yang diulang.

Iteration element sub-integration mapping T/A Variabel dalam sub-integrasi yang elemen berulang saat ini harus ditetapkan.
Map to additional sub-integration input(s) T/A Nilai tambahan yang akan diteruskan dari integrasi saat ini ke sub-integrasi.

Nilai properti ini dalam bentuk pasangan nilai kunci, dengan kunci adalah variabel dalam integrasi saat ini, dan nilai adalah variabel input yang sesuai dalam sub-integrasi. Misalnya, anggaplah integrasi utama Anda memiliki variabel productID, yang ingin Anda petakan ke variabel sub-integrasi subIntProductID; Anda akan memilih productID dari drop-down Variabel integrasi yang akan dipetakan dari dan memilih subIntProductID di drop-down Input sub-integrasi yang akan dipetakan ke.

Collect values from sub-integration output(s) T/A Mengumpulkan hasil dari proses sub-integrasi.

Setiap kali sub-integrasi berjalan, Anda dapat menyimpan output sub-integrasi dalam variabel array integrasi saat ini. Pilih variabel output sub-integrasi dari drop-down Output sub-integrasi yang akan dikumpulkan dari dan variabel array dalam integrasi saat ini dari drop-down Variabel integrasi yang akan dikumpulkan ke. Setiap elemen array memiliki respons dari jalannya sub-integrasi tertentu. Misalnya, jika variabel array adalah resultsArray, resultsArray[0] memiliki respons dari run pertama dan resultsArray[1] memiliki respons dari run kedua.

Response parameter override mapping T/A Baca variabel output dari sub-integrasi yang berjalan dan simpan dalam variabel integrasi saat ini.

Pilih variabel output sub-integrasi dari drop-down Output sub-integrasi yang akan dipetakan dari, dan pilih variabel yang sesuai di integrasi saat ini dari drop-down Variabel integrasi yang akan diganti. Anda dapat mengirim variabel yang diganti dalam integrasi saat ini ke sub-integrasi berikutnya dengan memetakan variabel di properti Map to additional sub-integration input(s). Dengan demikian, Anda dapat menggabungkan respons secara kumulatif dari proses sub-integrasi.

Loop metadata Array JSON Variabel output yang memiliki detail eksekusi sub-integrasi seperti ID eksekusi sub-integrasi, pesan error, dan nilai variabel yang diteruskan selama eksekusi. Metadata loop berisi variabel termasuk variabel output berikut: current_iteration_count, sub_integration_execution_ids, failure_location, current_element, iteration_element, dan failure_message.

Contoh

Bagian berikut memberikan contoh mendetail tentang cara mengonfigurasi dan menggunakan tugas Loop Untuk Setiap untuk skenario tertentu. Contoh ini menggambarkan langkah-langkah konfigurasi untuk berbagai kasus penggunaan:

Lakukan iterasi dan teruskan setiap elemen

Asumsikan Anda memiliki integrasi utama dengan variabel array bernama productIds yang berisi nilai seperti ["P1", "P2", "P3"]. Untuk memanggil sub-integrasi bernama GetProductDetails untuk setiap ID produk, konfigurasi tugas For Each Loop sebagai berikut:

  • Tetapkan List to iterate ke productIds.
  • Tetapkan Pemetaan sub-integrasi elemen iterasi untuk memetakan elemen productIds saat ini ke variabel di GetProductDetails, misalnya, subIntProductId.

Setiap eksekusi GetProductDetails kemudian menerima satu ID produk dari productIds.

Mengumpulkan output sub-integrasi

Seperti pada contoh sebelumnya, asumsikan GetProductDetails menampilkan objek JSON dalam variabel output yang disebut productInfo.

Untuk mengumpulkan semua output productInfo dari setiap eksekusi sub-integrasi dan menyimpannya sebagai elemen dalam variabel array dalam integrasi utama:

  • Konfigurasi Kumpulkan nilai dari output sub-integrasi.
  • Pilih productInfo dari Sub-integration output to collect from.
  • Pilih variabel array di integrasi utama, misalnya, allProductDetails, dari Variabel integrasi yang akan dikumpulkan ke dalam.

Setelah loop selesai, allProductDetails adalah array yang setiap elemennya adalah JSON productInfo dari satu eksekusi sub-integrasi.

Menggabungkan hasil dengan penggantian respons

Misalkan Anda memiliki integrasi utama yang memanggil sub-integrasi (misalnya, GetProductDetails) untuk setiap item dalam daftar, dan Anda ingin menghitung total harga semua item. Untuk menjumlahkan nilai numerik yang ditampilkan oleh setiap eksekusi sub-integrasi:

  • Pastikan sub-integrasi menampilkan nilai dalam variabel output itemPrice.
  • Lakukan inisialisasi variabel totalPrice ke 0 dalam integrasi utama.
  • Konfigurasi Pemetaan penggantian parameter respons:
    • Petakan itemPrice (dari sub-integrasi) ke totalPrice (dalam integrasi utama).
  • Di bagian Map to additional sub-integration input(s):
    • Petakan totalPrice (dari integrasi utama) ke variabel input dalam sub-integrasi, misalnya, currentTotal.
  • Dalam logika sub-integrasi, tambahkan harga item saat ini ke currentTotal yang diterima dari integrasi utama. Kemudian, tampilkan jumlah baru ini dalam variabel output bernama itemPrice. Proses ini membuat agregasi kumulatif.

Meneruskan input tambahan

Jika sub-integrasi GetProductDetails memerlukan kode currency dari integrasi utama, maka:

  • Di bagian Map to additional sub-integration input(s):
    • Petakan variabel integrasi utama currencyCode ke variabel input sub-integrasi subIntCurrency.
  • currencyCode ini diteruskan ke setiap eksekusi sub-integrasi.

Pelajari contoh integrasi berikut untuk mendapatkan panduan langkah demi langkah yang praktis dan contoh yang dapat dieksekusi dari konsep yang dibahas di bagian sebelumnya:

Praktik terbaik

Untuk mengetahui informasi tentang batas penggunaan yang berlaku untuk tugas For Each Loop, lihat Batas penggunaan.

Strategi penanganan error

Strategi penanganan error untuk tugas menentukan tindakan yang harus dilakukan jika tugas gagal karena error sementara. Untuk mengetahui informasi tentang cara menggunakan strategi penanganan error, dan untuk mengetahui berbagai jenis strategi penanganan error, lihat Strategi penanganan error.

Kuota dan batas

Untuk mengetahui informasi tentang kuota dan batas, lihat Kuota dan batas.

Langkah berikutnya