Bagikan melalui


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 true 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:

Screenshot contoh spreadsheet dengan kolom Status.

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

  1. Masuk ke dalamnya Power Automate.

  2. Di panel kiri, pilih Alur saya.

  3. Pilih Alur baru>Alur alur cloud terjadwal.

Menambahkan pemicu ke alur Anda

  1. Beri nama alur Anda.

  2. Atur jadwal untuk menjalankan alur sekali sehari.

  3. 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

  1. Pilih langkah baru.

  2. 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.

  3. Pilih tindakan Daftar baris yang ada dalam tabel .

    Screenshot mencantumkan baris dalam tabel.

  4. Pilih Lokasi , Pustaka Dokumen, File , dan Tabel yang berisi data Anda.

    Screenshot bidang Lokasi, Pustaka Dokumen, File, dan Tabel di baris Daftar yang ada di kartu tabel.

Periksa kolom status setiap baris

  1. Pilih langkah baru.

  2. Cari terapkan untuk masing-masing, lalu pilih Terapkan ke masing-masing - Kontrol.

  3. Tambahkan token nilai ke kotak Pilih output dari langkah sebelumnya.

    Token nilai ini mewakili tabel spreadsheet dan semua datanya.

  4. Pilih Tambahkan tindakan pada Terapkan ke setiap kartu.

  5. Cari kondisi, lalu pilih kontrol Kondisi .

  6. 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 .

    Tangkapan layar ekspresi 'atau'.

Menghapus baris yang cocok dari spreadsheet

  1. Pilih Tambahkan tindakan pada cabang Jika ya dari kondisi.

    Cabang Jika ya berjalan jika kondisi OR dievaluasi ke true.

  2. Cari Hapus baris , pilihExcel Online (Bisnis), lalu pilihHapus baris .

  3. 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.

  4. Dalam daftar dropdown Kolom Kunci, pilih _PowerAppsId_ .

  5. Di bidang Nilai Kunci, masukkan nilai the _PowerAppsId_ dynamic.

  6. 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.

Screenshot spreadsheet saat ekspresi 'OR' 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 .

Tangkapan layar ekspresi 'dan'.

Jalankan alur dengan ekspresi 'dan'

Jika Anda telah mengikuti langkah-langkah dalam tutorial ini, spreadsheet Anda akan terlihat mirip dengan cuplikan layar berikut.

Cuplikan layar spreadsheet sebelum alur Anda berjalan.

Setelah alur Anda berjalan, spreadsheet Anda akan terlihat mirip dengan cuplikan layar berikut.

Cuplikan layar spreadsheet setelah alur Anda berjalan.

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.

Tangkapan layar dari ekspresi 'kosong'.

Setelah alur Anda berjalan, spreadsheet akan terlihat mirip dengan cuplikan layar berikut.

SScreenshot dari spreadsheet setelah 'kosong' berjalan.

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.

Tangkapan layar spreadsheet mereka yang belum membayar penuh.

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.

Tangkapan layar 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.

Pelatihan: Pengantar ekspresi dalam Power Automate (modul)