DOCS

Managing rules

/

Aturan Lanjutan

SEGERA HADIR

Zonos mendukung kustomisasi lanjutan tentang bagaimana perhitungan dilakukan di akun Anda melalui penggunaan aturan. Aturan dapat digunakan untuk menambahkan buffer ke berbagai bagian dari perhitungan, menyesuaikan biaya, dan lainnya. 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 GraphQL API.

Penting: Aturan adalah fitur lanjutan, dan penyalahgunaan dapat menyebabkan berbagai konsekuensi yang tidak diinginkan dengan bagaimana Zonos berperilaku dan menghitung untuk Anda.

Lihat aturan

Dashboard
GraphQL

Untuk mengelola aturan dalam Dashboard:

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

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

Aturan

Buat aturan

Dashboard
GraphQL

Untuk membuat aturan baru di dalam Dashboard:

  1. Masuk ke akun Zonos Dashboard.
  2. Navigasikan ke Pengaturan -> aturan.
  3. Klik Buat aturan.
  4. Tambahkan nama untuk aturan Anda agar 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. 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 akhir tertentu untuk aturan Anda (opsional).
  9. Atur aturan Anda ke Diaktifkan atau Dinonaktifkan.
  10. Klik Simpan.

Tentukan tanggal mulai dan akhir

Aturan dapat memiliki tanggal mulai, tanggal akhir, atau keduanya secara opsional. 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 sensitif waktu lainnya.

Perilaku aturan

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

Tentukan kondisi aturan

Setiap aturan memerlukan kondisi yang ditentukan untuk menentukan apa yang diterapkan dan variabel mana yang tersedia pada saat aturan dijalankan. Dengan kata lain, kondisi menentukan apakah aturan harus dijalankan sama sekali dan kapan. Berbagai kondisi memiliki opsi yang berbeda tersedia.

Sebagai contoh, jika Anda memilih “Pengangkut pengiriman” sebagai kondisi, itu memungkinkan Anda untuk memilih pengangkut mana yang merupakan bagian dari kondisi, yang mungkin Anda gunakan jika Anda mengatur buffer hanya untuk pengangkut tertentu.

Aturan hanya mendukung satu kondisi masing-masing, dan tidak mendukung logika kompleks seperti “else if”, “dan/atau”, atau istilah serupa. Jika Anda ingin menghubungkan aturan, sebaiknya pikirkan bagaimana Anda dapat mencapai logika yang sama dengan beberapa aturan dibandingkan satu aturan besar yang kompleks.

Tentukan tindakan aturan

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

Sebagai contoh, jika Anda ingin menambahkan buffer hanya untuk pengangkut pengiriman tertentu, Anda akan mengatur tindakan menjadi “terapkan buffer” dan masukkan jumlah buffer Anda dan apa yang diterapkan. Anda kemudian dapat mengontrol pengangkut mana yang tepat yang diterapkan buffer dengan menentukan itu dalam kondisi aturan.

Sama seperti kondisi, aturan hanya mendukung satu tindakan masing-masing. Jika Anda ingin beberapa tindakan, sebaiknya pikirkan bagaimana Anda dapat mencapai logika yang sama dengan beberapa aturan dibandingkan satu aturan besar yang kompleks.

Aturan Pembaruan

Memperbarui aturan yang ada tidak mungkin dilakukan dengan cara kerja sistem kami. Ini karena kami perlu menjaga jejak sejarah yang dapat dilacak tentang aturan mana yang diterapkan dalam situasi mana dan apa yang dilakukan aturan tersebut saat dijalankan. Sebagai alternatif, Anda dapat mengarsipkan dan membuat ulang sebuah aturan, dengan memasukkan nilai yang diubah, secara efektif mencapai "pembaruan" pada aturan tersebut.

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

Mutasi

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

Variabels

1
2
3
4
5
6
7
8
{
  "ruleId": "rule_935ee1ca-0c4d-4147-826a-1cb0894d9f43",
  "action": "amount = amount + 5 % amount",
  "condition": "ship_to_country == CA",
  "context": "SHIPMENT_RATING_BUFFER",
  "description": "test",
  "name": "test"
}

Aturan arsip

Dasbor
GraphQL

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

Aturan dapat diaktifkan atau dinonaktifkan satu per satu dari “Edit a rule” screen, atau secara massal dengan menggunakan kotak centang di samping setiap aturan pada “All rules” screen.

Daftar semua konteks aturan yang mungkin

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

Kueri

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

Respon

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
{
  "data": {
    "ruleContexts": [
      {
        "name": "SHIPMENT_RATING_BUFFER",
        "context": "buffer",
        "variables": [
          {
            "ruleTokenType": "MONEY",
            "value": "amount"
          },
          {
            "ruleTokenType": "NUMBER",
            "value": "item_count"
          },
          {
            "ruleTokenType": "MONEY",
            "value": "items_total"
          },
          {
            "ruleTokenType": "COUNTRY",
            "value": "ship_from_country"
          },
          {
            "ruleTokenType": "COUNTRY",
            "value": "ship_to_country"
          },
          {
            "ruleTokenType": "WEIGHT",
            "value": "weight"
          },
          {
            "ruleTokenType": "STRING",
            "value": "service_level"
          },
          {
            "ruleTokenType": "STRING",
            "value": "carrier"
          }
        ]
      }
    ]
  }
}

Apakah halaman ini membantu?