Menggunakan ekspresi dalam kondisi untuk memeriksa beberapa nilai
Dalam tutorial ini, Anda akan belajar menggunakan ekspresi dan kondisi untuk membandingkan beberapa nilai dalam mode Lanjutan.
Saat membuat alur cloud, Anda dapat menggunakan kartu Kondisi dalam mode dasar untuk membandingkan satu nilai dengan nilai lain dengan cepat. Namun, ada kalanya Anda perlu membandingkan beberapa nilai. Misalnya, Anda mungkin ingin memeriksa nilai beberapa kolom dalam spreadsheet atau tabel database.
Anda dapat menggunakan kombinasi ekspresi logis berikut dalam kondisi Anda.
Expression | Description | Contoh |
---|---|---|
dan | Mengambil dua argumen dan mengembalikan true jika kedua nilai benar. Catatan: Kedua argumen harus Boolean. |
Ekspresi ini mengembalikan false:and(greater(1,10),equals(0,0)) |
atau | Mengambil dua argumen dan mengembalikan true jika salah satu argumen benar. Catatan: Kedua argumen harus Boolean. |
Ekspresi ini mengembalikan true:or(greater(1,10),equals(0,0)) |
sama dengan | Mengembalikan benar jika dua nilai sama. | Misalnya, jika parameter1 adalah someValue, ekspresi ini mengembalikan true:equals(parameters('parameter1'), 'someValue') |
kurang | Mengambil dua argumen dan mengembalikan true jika argumen pertama kurang dari argumen kedua. Catatan: Jenis yang didukung adalah bilangan bulat, float, dan string. |
Ekspresi ini mengembalikan true:less(10,100) |
kurangAtauSama | Mengambil dua argumen dan mengembalikan true jika argumen pertama kurang dari atau sama dengan argumen kedua. Catatan: Jenis yang didukung adalah bilangan bulat, float, dan string. |
Ekspresi ini mengembalikan true:lessOrEquals(10,10) |
lebih | Mengambil dua argumen dan mengembalikan true jika argumen pertama lebih besar dari argumen kedua. Catatan: Jenis yang didukung adalah bilangan bulat, float, dan string. |
Ekspresi ini mengembalikan false:greater(10,10) |
Lebih besar atau sama dengan | Mengambil dua argumen dan mengembalikan true jika argumen pertama lebih besar dari atau sama dengan argumen kedua. Catatan: Jenis yang didukung adalah bilangan bulat, float, dan string. |
Ekspresi ini mengembalikan false:greaterOrEquals(10,100) |
kosong | Mengembalikan true jika objek, array, atau string kosong. | Ekspresi ini mengembalikan true:empty('') |
bukan | Mengembalikan kebalikan dari nilai Boolean. | Ekspresi ini mengembalikan true:not(contains('200 Success','Fail')) |
if | Mengembalikan nilai tertentu jika ekspresi menghasilkan true atau false. | Ekspresi ini mengembalikan "yes":if(equals(1, 1), 'yes', 'no') |
Prasyarat
Inilah yang Anda perlukan untuk menyelesaikan panduan ini.
- Akses ke. Power Automate
- Spreadsheet Anda sendiri dengan tabel yang dijelaskan nanti dalam panduan ini. Pastikan untuk menyimpan spreadsheet Anda di lokasi seperti Dropbox atau Microsoft OneDrive sehingga dapat Power Automate mengaksesnya.
- Microsoft 365 Outlook (Saat kami menggunakan Outlook di sini, Anda dapat menggunakan layanan email yang didukung dalam alur Anda.)
Menggunakan ekspresi 'atau'
Terkadang alur kerja Anda perlu mengambil tindakan jika nilai item adalah valueA atau valueB. Misalnya, Anda mungkin melacak status tugas dalam tabel spreadsheet. Asumsikan bahwa tabel memiliki kolom bernama Status dan nilai yang mungkin dalam kolom ini adalah:
- selesai
- buntu
- tidak perlu
- belum dimulai
Berikut adalah contoh tampilan spreadsheet:
Mengingat spreadsheet sebelumnya, Anda ingin menggunakannya Power Automate untuk menghapus semua baris dengan kolom Status yang disetel ke selesai atau tidak perlu.
Mari kita buat alurnya.
Mulailah dengan alur kosong
Masuk ke dalamnya Power Automate.
Di panel kiri, pilih Alur saya.
Pilih Alur baru>Alur alur cloud terjadwal.
Menambahkan pemicu ke alur Anda
Beri nama alur Anda.
Atur jadwal untuk menjalankan alur sekali sehari.
Pilih tombol Buat untuk melanjutkan ke langkah berikutnya.
Catatan
Power Automate menggunakan perancang alur cloud klasik atau perancang alur cloud dengan Copilot. Untuk mengidentifikasi desainer mana yang Anda gunakan, buka bagian Catatan di Memahami perancang alur cloud dengan kemampuan copilot.
Pilih spreadsheet dan dapatkan semua baris
Pilih langkah baru.
Cari baris, lalu pilih Excel Online (Bisnis).
Pilih tindakan dapatkan baris yang sesuai dengan spreadsheet yang Anda gunakan. Misalnya, jika Anda menggunakan Google Spreadsheet, pilih Google Spreadsheet - Dapatkan baris.
Pilih tindakan Daftar baris yang ada dalam tabel .
Pilih Lokasi , Pustaka Dokumen, File , dan Tabel yang berisi data Anda.
Periksa kolom status setiap baris
Pilih langkah baru.
Cari terapkan untuk masing-masing, lalu pilih Terapkan ke masing-masing - Kontrol.
Tambahkan token nilai ke kotak Pilih output dari langkah sebelumnya.
Token nilai ini mewakili tabel spreadsheet dan semua datanya.
Pilih Tambahkan tindakan pada Terapkan ke setiap kartu.
Cari kondisi, lalu pilih kontrol Kondisi .
Tambahkan ekspresi Or berikut . Ekspresi Or ini memeriksa nilai setiap baris dalam tabel. Jika nilai kolom Status selesai Atautidak perlu, ekspresi Or dievaluasi menjadi "true".
Berikut adalah contoh kartu Kondisi .
Menghapus baris yang cocok dari spreadsheet
Pilih Tambahkan tindakan pada cabang Jika ya dari kondisi.
Cabang Jika ya berjalan jika kondisi OR dievaluasi ke true.
Cari Hapus baris , pilihExcel Online (Bisnis), lalu pilihHapus baris .
Pada kartu Hapus baris , atur kotak Lokasi , Pustaka Dokumen, File , dan Tabel persis seperti yang Anda atur kotak ini pada baris Daftar yang ada dalam kartu tabel sebelumnya dalam tutorial ini.
Dalam daftar dropdown Kolom Kunci, pilih _PowerAppsId_ .
Di bidang Nilai Kunci, masukkan nilai the _PowerAppsId_ dynamic.
Simpan alur Anda.
Jalankan alur dengan ekspresi 'atau'
Alur berjalan setelah Anda menyimpannya. Jika Anda membuat spreadsheet yang ditampilkan sebelumnya dalam tutorial ini, berikut tampilannya setelah eksekusi selesai.
Perhatikan semua data dari baris yang telah selesai atau tidak perlu di kolom Status telah dihapus.
Menggunakan ekspresi 'dan'
Asumsikan Anda memiliki tabel spreadsheet dengan dua kolom. Nama kolom adalah Status dan Ditetapkan. Asumsikan juga bahwa Anda ingin menghapus semua baris jika nilai kolom Status diblokir dan nilai kolom Ditetapkan adalah John Wonder. Untuk menyelesaikan tugas ini, ikuti semua langkah sebelumnya dalam tutorial ini, tetapi saat Anda mengedit kartu Kondisi dalam mode lanjutan, gunakan ekspresi dan yang ditampilkan di sini.
@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))
Berikut adalah contoh kartu Kondisi .
Jalankan alur dengan ekspresi 'dan'
Jika Anda telah mengikuti langkah-langkah dalam tutorial ini, spreadsheet Anda akan terlihat mirip dengan cuplikan layar berikut.
Setelah alur Anda berjalan, spreadsheet Anda akan terlihat mirip dengan cuplikan layar berikut.
Menggunakan ekspresi 'kosong'
Perhatikan bahwa ada beberapa baris kosong di spreadsheet sekarang. Untuk menghapusnya, gunakan ekspresi kosong untuk mengidentifikasi semua baris yang tidak memiliki teks di kolom Ditetapkan dan Status .
Untuk menyelesaikan tugas ini, ikuti semua langkah yang tercantum di bagian Menggunakan ekspresi 'dan' sebelumnya dalam tutorial ini. Saat Anda mengedit kartu Kondisi dalam mode lanjutan, gunakan ekspresi kosong berikut .
@and(empty(item()?['Status']), empty(item()?['Assigned']))
Kartu Kondisi Anda akan terlihat mirip dengan tangkapan layar berikut.
Setelah alur Anda berjalan, spreadsheet akan terlihat mirip dengan cuplikan layar berikut.
Perhatikan baris tambahan dihapus dari tabel.
Gunakan ekspresi 'lebih besar'
Bayangkan Anda telah membeli tiket bisbol untuk rekan kerja Anda dan Anda menggunakan spreadsheet untuk memastikan bahwa Anda diganti oleh setiap orang. Anda dapat dengan cepat membuat alur cloud yang mengirim email harian ke setiap orang yang belum membayar jumlah penuh.
Gunakan ekspresi yang lebih besar untuk mengidentifikasi karyawan yang belum membayar jumlah penuh. Anda kemudian dapat secara otomatis mengirim email pengingat kepada mereka yang belum membayar penuh.
Berikut adalah tampilan spreadsheet.
Berikut adalah implementasi ekspresi yang lebih besar yang mengidentifikasi semua orang yang telah membayar kurang dari jumlah yang harus dibayar dari mereka.
@greater(item()?['Due'], item()?['Paid'])
Gunakan ekspresi 'kurang'
Bayangkan Anda telah membeli tiket bisbol untuk rekan kerja Anda, dan Anda menggunakan spreadsheet untuk memastikan bahwa Anda diganti oleh setiap orang pada tanggal yang disepakati semua orang. Anda dapat membuat alur cloud yang mengirim email pengingat ke setiap orang yang belum membayar jumlah penuh jika tanggal saat ini kurang dari satu hari sebelum tanggal jatuh tempo.
Gunakan ekspresi and dengan ekspresi yang lebih sedikit karena ada dua kondisi yang divalidasi.
Kondisi untuk memvalidasi | Ekspresi yang akan digunakan | Contoh |
---|---|---|
Apakah jumlah penuh yang jatuh tempo telah dibayarkan? | lebih besar | @greater(item()?['Due'], item()?['Paid']) |
Apakah tanggal jatuh tempo kurang dari satu hari lagi? | kurang | @less(item()?['DueDate'], addDays(utcNow(),1)) |
Gabungkan ekspresi 'lebih besar' dan 'kurang' dalam ekspresi 'dan'
Gunakan ekspresi yang lebih besar untuk mengidentifikasi karyawan yang telah membayar kurang dari jumlah penuh yang jatuh tempo dan gunakan ekspresi yang lebih kecil untuk menentukan apakah tanggal jatuh tempo pembayaran kurang dari satu hari dari tanggal saat ini. Anda kemudian dapat menggunakan tindakan Kirim email untuk mengirim email pengingat kepada karyawan yang belum membayar penuh dan tanggal jatuh tempo kurang dari satu hari lagi.
Berikut adalah tampilan tabel spreadsheet.
Berikut adalah implementasi ekspresi dan yang mengidentifikasi semua karyawan yang telah membayar kurang dari jumlah yang harus dibayar dari mereka dan tanggal jatuh tempo kurang dari satu hari dari tanggal saat ini.
@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))
Menggunakan fungsi dalam ekspresi
Beberapa ekspresi mendapatkan nilainya dari tindakan runtime yang mungkin belum ada saat alur cloud mulai berjalan. Untuk mereferensikan atau bekerja dengan nilai-nilai ini dalam ekspresi, Anda dapat menggunakan fungsi yang disediakan oleh Bahasa Definisi Alur Kerja. Informasi lebih lanjut. Untuk mempelajari selengkapnya, buka Panduan referensi untuk fungsi ekspresi alur kerja di Azure Logic Apps dan Power Automate.