DOCS

Aturan

Aturan lanjutan

SEGERA HADIR

Zonos mendukung kustomisasi lanjutan tentang bagaimana perhitungan terjadi di akun Anda melalui penggunaan aturan. Aturan dapat digunakan untuk menambahkan buffer ke berbagai bagian perhitungan, menyesuaikan biaya, dan banyak lagi. Untuk rincian lengkap tentang bagaimana Zonos menangani aturan, termasuk daftar semua jenis aturan yang mungkin, lihat dokumen rincian aturan kami. Aturan dapat dikelola melalui Zonos Dashboard atau melalui API GraphQL.

Penting: Aturan adalah fitur lanjutan, dan penggunaan yang salah dapat menyebabkan berbagai konsekuensi yang tidak diinginkan tentang bagaimana Zonos berperilaku dan melakukan perhitungan untuk Anda.

Untuk mengelola aturan dalam Dashboard:

  1. Masuk ke akun Zonos Dashboard Anda.
  2. Navigasikan ke Pengaturan -> Aturan.

Di halaman "Aturan", Anda dapat melihat semua aturan yang terkait dengan akun Zonos Anda, memfilter aturan, dan dengan cepat mengaktifkan atau menonaktifkan aturan.

Untuk membuat aturan baru dalam Dashboard:

  1. Masuk ke akun Zonos Dashboard Anda.
  2. Navigasikan ke Pengaturan -> aturan.
  3. Klik Buat aturan.
  4. Tambahkan nama ke aturan Anda sehingga Anda dapat mengidentifikasinya nanti. Ini hanya terlihat oleh anggota tim di organisasi Anda.
  5. Ikuti langkah-langkah di bagian "Tentukan kondisi aturan" di bawah untuk menambahkan kondisi ke aturan Anda.
  6. Ikuti langkah-langkah di bagian "Tentukan tindakan aturan" di bawah untuk menambahkan tindakan ke aturan Anda.
  7. Secara opsional, Anda dapat menambahkan komentar untuk konteks tambahan. Ini hanya terlihat oleh anggota tim di organisasi Anda.
  8. Ikuti langkah-langkah di bawah untuk menambahkan tanggal mulai dan/atau tanggal akhir tertentu untuk aturan Anda (opsional).
  9. Atur aturan Anda ke Diaktifkan atau Dinonaktifkan.
  10. Klik Simpan.

Tentukan tanggal mulai dan akhir

Aturan dapat secara opsional memiliki tanggal mulai, tanggal akhir, atau keduanya. Tanggal mulai dan akhir mengontrol kapan dan bagaimana aturan Anda menjadi aktif dan dapat digunakan untuk membuat aturan yang hanya aktif untuk periode tertentu, seperti diskon musiman atau situasi peka waktu lainnya.

Perilaku aturan

TanggalPerilaku
Tanggal mulai dan akhirAturan akan aktif antara tanggal mulai dan akhir yang ditentukan.
Hanya tanggal mulai, tanpa tanggal akhirAturan akan menjadi aktif setelah tanggal mulai yang ditentukan dan harus dinonaktifkan secara manual.
Tanpa tanggal mulai atau akhirAturan akan selalu aktif kecuali dinonaktifkan secara manual.

Tentukan kondisi aturan

Setiap aturan memerlukan kondisi untuk ditentukan untuk menentukan apa yang berlaku padanya dan variabel mana yang tersedia pada saat aturan berjalan. Dengan kata lain, kondisi menentukan apakah aturan harus berjalan sama sekali dan kapan. Kondisi yang berbeda memiliki opsi yang berbeda-beda.

Misalnya, jika Anda memilih "Pembawa pengiriman" sebagai kondisi, ini memungkinkan Anda untuk memilih tambahan pembawa mana yang merupakan bagian dari kondisi, yang mungkin Anda gunakan jika Anda menyiapkan buffer hanya untuk pembawa tertentu.

Aturan hanya mendukung satu kondisi masing-masing, dan tidak mendukung logika kompleks seperti "else if", "and/or", atau istilah serupa. Jika Anda ingin merantai aturan, lebih baik memikirkan tentang bagaimana Anda dapat mencapai logika yang sama dengan beberapa aturan dibandingkan dengan satu aturan besar yang kompleks.

Tentukan tindakan aturan

Tindakan aturan adalah apa yang terjadi setelah kondisinya terpenuhi. Seperti kondisi, ada berbagai tindakan yang mungkin, masing-masing dengan opsi yang berbeda.

Misalnya, jika Anda ingin menambahkan buffer hanya ke pembawa pengiriman tertentu, Anda akan menetapkan tindakan ke "terapkan buffer" dan masukkan jumlah buffer Anda dan apa yang berlaku padanya. Anda kemudian dapat mengontrol pembawa mana dengan tepat buffer berlaku dengan menentukan itu dalam kondisi aturan.

Seperti kondisi, aturan hanya mendukung satu tindakan masing-masing. Jika Anda menginginkan beberapa tindakan, lebih baik memikirkan tentang bagaimana Anda dapat mencapai logika yang sama dengan beberapa aturan dibandingkan dengan satu aturan besar yang kompleks.

Memperbarui aturan di tempat tidaklah mungkin dengan bagaimana sistem kami bekerja. Ini karena kami perlu menyimpan riwayat yang dapat dilacak tentang aturan mana yang diterapkan dalam situasi mana dan apa yang dilakukan aturan saat dijalankan. Atau, Anda dapat mengarsipkan dan membuat ulang aturan, melewatkan nilai yang diubah, secara efektif mencapai "pembaruan" ke aturan.

Contoh mutasi ini menunjukkan bagaimana Anda mungkin menggabungkan mutasi ruleArchive dan ruleCreate untuk mencapai perilaku ini:

1mutation ruleUpdate(
2$ruleId: ID!
3$action: String!
4$condition: String!
5$context: String!
6$description: String!
7$name: String!
8) {
9 ruleArchive(id: $ruleId)
10 ruleCreate(
11 input: {
12 action: $action
13 condition: $condition
14 context: $context
15 name: $name
16 description: $description
17 }
18 ) {
19 id
20 action
21 context
22 condition
23 }
24}

Setelah ditambahkan, aturan dapat dengan mudah diaktifkan atau dinonaktifkan untuk menentukan apakah mereka harus mempengaruhi perhitungan Anda. Secara manual mengaktifkan atau menonaktifkan aturan akan menimpa logika berbasis tanggal mulai dan tanggal akhir apa pun yang terdapat dalam aturan.

Aturan dapat diaktifkan atau dinonaktifkan satu per satu dari layar "Edit aturan", atau secara massal dengan menggunakan kotak centang di sebelah setiap aturan di layar "Semua aturan".

Kami menawarkan beberapa kueri global untuk menangani aturan yang berguna untuk menemukan cara kerja aturan di balik layar, membuat UI di atas aturan, dll. Ini berlaku untuk semua pengguna, bukan spesifik organisasi, dan ditawarkan untuk kenyamanan. Kueri ini mengembalikan daftar semua konteks yang mungkin tempat aturan dapat dimiliki. Konteks aturan menentukan kapan aturan berjalan dan variabel mana yang tersedia.

1query {
2 ruleContexts {
3 name
4 context
5 variables {
6 ruleTokenType
7 value
8 }
9 }
10}
Pesan demo

Apakah halaman ini bermanfaat?