Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku pada: Azure Logic Apps (Standar)
Panduan ini menunjukkan cara menambahkan operator aritmatika dan logis ke aturan di set aturan Anda menggunakan Microsoft Rules Composer.
Prasyarat
Unduh dan instal Microsoft Rules Composer.
File XML yang berisi set aturan yang ingin Anda kerjakan.
Menambahkan operator aritmatika ke aturan
Anda dapat menambahkan operator aritmatika ke kondisi atau tindakan dalam aturan. Tabel berikut ini menjelaskan operator aritmatika yang tersedia:
| Operator aritmatika | Deskripsi |
|---|---|
| Tambahkan | Operator tambahan yang menambahkan arg1 ke arg2. |
| Pengurangan | Operator pengurangan yang mengurangi arg1 dari arg2. |
| Perkalian | Operator perkalian yang mengalikan arg1 dengan arg2. |
| Pembagian | Operator divisi yang membagi arg1 dengan arg2. |
| Bilangan Sisa | Operator sisa yang melakukan arg1 modulo arg2. |
Di Microsoft Rules Composer, muat file XML yang berisi penyimpanan aturan yang ingin Anda kerjakan.
Di jendela RuleSet Explorer , temukan dan pilih aturan yang Anda inginkan.
Di jendela Facts Explorer, pilih tab Kosa Kata.
Di bawah Vocabularies>Fungsi>Versi 1.0, seret operator aritmatika yang Anda inginkan ke sebuah argumen dalam kondisi di editor kondisi atau tindakan di editor tindakan.
Dalam argumen kondisi atau tindakan, tentukan nilai untuk operand kiri dan kanan.
Jika operand memiliki jenis yang berbeda, mesin aturan melakukan promosi numerik otomatis di mana mesin mengonversi jenis operand yang lebih kecil ke jenis operand yang lebih besar.
Misalnya, Anda menggunakan operator Tambahkan pada operand yang memiliki jenis int dan operand yang memiliki jenis panjang . Sebelum mesin melakukan operasi Tambahkan , mesin mengonversi jenis int ke jenis panjang .
Jika mesin dapat mempromosikan kedua operand ke jenis umum, mesin mendukung promosi ganda.
Misalnya, Anda menggunakan operator Tambahkan pada operand yang memiliki jenis int dan operand yang memiliki jenis uint . Sebelum mesin melakukan operasi Tambahkan , mesin mengonversi kedua jenis operand ke jenis panjang .
Menambahkan operator logis ke aturan
Anda dapat menambahkan operator logis ke predikat dalam kondisi. Tabel berikut ini menjelaskan operator logis yang tersedia:
| Operator logis | Deskripsi |
|---|---|
| DAN | Gabungkan dua atau beberapa predikat untuk membentuk ekspresi AND logis. Mengembalikan true jika kedua predikat dievaluasi ke true. Jika tidak, mengembalikan false. |
| ATAU | Gabungkan dua atau beberapa predikat untuk membentuk ekspresi OR logis. Mengembalikan true jika satu predikat dievaluasi ke true. Jika tidak, mengembalikan false. |
| TIDAK | Meniadakan ekspresi atau predikat logis. Mengembalikan true jika predikat mengevaluasi ke false. Jika tidak, mengembalikan false. |
Di Microsoft Rules Composer, muat file XML yang berisi penyimpanan aturan yang ingin Anda kerjakan.
Di jendela RuleSet Explorer , temukan dan pilih aturan yang Anda inginkan.
Di panel IF, yang merupakan editor kondisi, dari menu pintasan Kondisi, pilih salah satu perintah berikut ini:
Operator logis Deskripsi Tambahkan AND Logis Gabungkan dua atau beberapa predikat untuk membentuk ekspresi AND logis. Menambahkan OR logis Gabungkan dua atau beberapa predikat untuk membentuk ekspresi OR logis. Tambahkan NOT logis Meniadakan ekspresi atau predikat logis. Di editor kondisi, buka menu pintasan operator, dan tambahkan predikat atau operator logis berlapis yang Anda inginkan.
Jika operand memiliki jenis yang berbeda, mesin aturan mengonversi jenis untuk satu operand agar sesuai dengan jenis untuk operand lain, atau mengonversi jenis untuk kedua operand ke jenis umum sebelum mengevaluasi ekspresi.
Menangani nilai null
Bagian berikut menjelaskan perilaku yang diharapkan untuk nilai null yang terkait dengan berbagai jenis dan menyediakan opsi untuk memeriksa null atau keberadaan bidang atau anggota tertentu.
Kelas .NET
Untuk jenis yang berasal dari jenis Objek , Anda dapat mengatur bidangnya ke null.
Anda dapat meneruskan null sebagai argumen untuk parameter yang bukan tipe nilai, tetapi Anda mungkin mendapatkan kesalahan saat runtime, tergantung pada implementasi anggota tersebut.
Anda tidak dapat menggunakan null untuk perbandingan jika jenis pengembalian bukan jenis Objek .
Elemen XML
Dokumen XML tidak pernah mengembalikan nilai XML sebagai null. Sebaliknya, nilai ini adalah string kosong atau kesalahan "tidak ada". Untuk string kosong, kesalahan mungkin terjadi untuk konversi jenis tertentu, seperti bidang yang ditentukan sebagai jenis bilangan bulat saat Anda membuat aturan.
Microsoft Rules Composer tidak memungkinkan Anda mengatur bidang ke null atau mengatur tipe bidang ke Objek.
Melalui model objek, Anda dapat mengatur jenis ke Objek. Dalam hal ini, nilai yang dikembalikan memiliki jenis yang dievaluasi XPath, seperti Float, Boolean, atau String, berdasarkan ekspresi XPath.
Periksa nilai null atau keberadaan
Saat Anda menulis aturan, Anda secara alami ingin memeriksa bahwa bidang ada sebelum Anda membandingkan nilainya. Namun, jika bidang null atau tidak ada, membandingkan nilai menyebabkan kesalahan.
Misalnya, Anda memiliki aturan berikut:
IF Product/Quantity Exists AND Product/Quantity > 1
Jika Produk/Kuantitas tidak ada, aturan akan melemparkan kesalahan. Untuk mengatasi masalah ini, Anda dapat meneruskan node induk ke metode pembantu yang mengembalikan nilai Produk/Kuantitas jika elemen tersebut ada, atau mengembalikan sesuatu yang lain jika elemen tersebut tidak ada.
Contoh berikut menunjukkan aturan metode pembantu yang diperbarui dan baru:
Aturan 1
IF Exists(Product/Quantity) THEN Assert(CreateObject(typeof(Helper), Product/Quantity))
Aturan 2
IF Helper.Value == X THEN...
Sebagai solusi lain yang mungkin, Anda dapat membuat aturan seperti contoh berikut:
IF Product/Quantity Exists THEN CheckQuantityAndDoSomething(Product/Quantity)
Dalam contoh sebelumnya, <CheckQuantityAndDoSomething> fungsi memeriksa nilai parameter dan menjalankan jika kondisi terpenuhi.
Untuk menentukan apakah argumen yang ada bernilai null, gunakan komposer:
argument is equal to <null>
Catatan
Atau, Anda dapat memodifikasi properti XPath Field pada fakta XML untuk mengatasi kesalahan, tetapi pendekatan ini tidak disarankan.