Kuralları görüntüle
Kuralları Dashboard içinde yönetmek için:
- Zonos Dashboard hesabınıza giriş yapın.
- Ayarlar -> Kurallar bölümüne gidin.
“Kurallar” sayfasında, Zonos hesabınızla ilişkili tüm kuralları görüntüleyebilir, kuralları filtreleyebilir ve kuralları hızlı bir şekilde etkinleştirebilir veya devre dışı bırakabilirsiniz.
Kural Oluşturma
Gösterge Paneli içinde yeni bir kural oluşturmak için:
- Zonos Gösterge Paneli hesabınıza giriş yapın.
- Ayarlar -> kurallar bölümüne gidin.
- Kural oluştur butonuna tıklayın.
- Kuralınızı daha sonra tanıyabilmeniz için bir isim ekleyin. Bu isimler yalnızca organizasyonunuzdaki ekip üyeleri tarafından görünür.
- Aşağıdaki “Kural koşulunu belirt” bölümündeki adımları izleyerek kuralınıza bir koşul ekleyin.
- Aşağıdaki “Kural eylemini belirt” bölümündeki adımları izleyerek kuralınıza bir eylem ekleyin.
- İsteğe bağlı olarak, ek bağlam için bir yorum ekleyebilirsiniz. Bu yorumlar yalnızca organizasyonunuzdaki ekip üyeleri tarafından görünür.
- Kuralınıza belirli bir başlangıç ve/veya bitiş tarihi eklemek için aşağıdaki adımları izleyin (isteğe bağlı).
- Kuralınızı Etkin veya Devre Dışı olarak ayarlayın.
- Kaydet butonuna tıklayın.
Başlangıç ve Bitiş Tarihlerini Belirtme
Kurallar isteğe bağlı olarak bir başlangıç tarihi, bir bitiş tarihi veya her ikisine sahip olabilir. Başlangıç ve bitiş tarihleri, kuralınızın ne zaman ve nasıl aktif olacağını kontrol eder ve yalnızca belirli dönemler için aktif olan kurallar oluşturmak için kullanılabilir, örneğin mevsimsel indirimler veya diğer zaman sınırlı durumlar.
Kural Davranışı
Tarihler | Davranış |
---|---|
Başlangıç ve bitiş tarihi | Kural, belirtilen başlangıç ve bitiş tarihi arasında aktif olacaktır. |
Sadece bir başlangıç tarihi, bitiş tarihi yok | Kural, belirtilen başlangıç tarihinden sonra aktif hale gelecek ve manuel olarak devre dışı bırakılmalıdır. |
Ne başlangıç ne de bitiş tarihi | Kural, manuel olarak devre dışı bırakılmadığı sürece her zaman aktif olacaktır. |
Kural Koşulunu Belirtme
Her kuralın, neye uygulanacağını ve kural çalıştığında hangi değişkenlerin mevcut olduğunu belirlemek için bir koşul belirtilmesi gerekir. Diğer bir deyişle, koşul, kuralın ne zaman çalışması gerektiğini belirler. Farklı koşulların farklı seçenekleri vardır.
Örneğin, koşul olarak “Nakliye taşıyıcısı”nı seçerseniz, bu, koşulun bir parçası olan hangi taşıyıcıyı ek olarak seçmenize olanak tanır; bu, yalnızca belirli bir taşıyıcı için bir tampon ayarlıyorsanız kullanışlı olabilir.
Kurallar yalnızca bir koşul destekler ve “aksi takdirde”, “ve/veya” gibi karmaşık mantığı desteklemez. Kuralları zincirleme yapmak istiyorsanız, aynı mantığı bir devasa, karmaşık kural yerine birden fazla kural ile nasıl elde edebileceğinizi düşünmek en iyisidir.
Kural Eylemini Belirtme
Bir kuralın eylemi, koşulu karşılandığında ne olacağını belirler. Koşullarda olduğu gibi, her biri farklı seçeneklere sahip çeşitli eylemler mümkündür.
Örneğin, yalnızca belirli bir nakliye taşıyıcısına bir tampon eklemek istiyorsanız, eylemi “bir tampon uygula” olarak ayarlayabilir ve tampon miktarınızı ve neye uygulandığını girebilirsiniz. Daha sonra, tamponun tam olarak hangi taşıyıcıya uygulandığını kuralın koşulunda belirterek kontrol edebilirsiniz.
Koşullarda olduğu gibi, kurallar yalnızca bir eylem destekler. Birden fazla eylem istiyorsanız, aynı mantığı bir devasa, karmaşık kural yerine birden fazla kural ile nasıl elde edebileceğinizi düşünmek en iyisidir.
Güncelleme kuralları
Sistemimizin çalışma şekli nedeniyle mevcut kuralları güncellemek mümkün değildir. Bunun nedeni, hangi kuralların hangi durumlarda uygulandığını ve kuralın çalıştığında ne yaptığını izlenebilir bir geçmişte tutmamız gerektiğidir. Alternatif olarak, bir kuralı arşivleyip yeniden oluşturabilir, değiştirilen değerleri geçirebilir ve böylece kuralda bir "güncelleme" gerçekleştirebilirsiniz.
Bu örnek mutasyon, bu davranışı elde etmek için ruleArchive
ve ruleCreate
mutasyonlarını nasıl birleştirebileceğinizi göstermektedir:
Mutasyon
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
}
}
Değişkenler
{
"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"
}
Arşiv kuralları
Eklendikten sonra, kurallar kolayca etkinleştirilebilir veya devre dışı bırakılabilir, böylece hesaplamalarınızı etkileyip etkilemeyeceğine karar verebilirsiniz. Bir kuralı manuel olarak etkinleştirmek veya devre dışı bırakmak, kuralın içindeki başlangıç ve bitiş tarihine dayalı mantığı geçersiz kılacaktır.
Kurallar, “Bir kuralı düzenle” screen üzerinden tek tek veya “Tüm kurallar” screen üzerindeki her kuralın yanındaki onay kutularını kullanarak topluca etkinleştirilebilir veya devre dışı bırakılabilir.
Tüm olası kural bağlamlarını listele
Kuralların nasıl çalıştığını keşfetmek, kuralların üzerine kullanıcı arayüzleri oluşturmak vb. için yararlı olan bazı küresel sorgular sunuyoruz. Bunlar tüm kullanıcılara uygulanır, organizasyona özgü değildir ve kolaylık sağlamak amacıyla sunulmuştur. Bu sorgu, kuralların ait olabileceği tüm olası bağlamların bir listesini döndürür. Bir kural bağlamı, bir kuralın ne zaman çalıştığını ve hangi değişkenlerin mevcut olduğunu belirler.
Sorgu
query {
ruleContexts {
name
context
variables {
ruleTokenType
value
}
}
}
Yanıt
{
"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"
}
]
}
]
}
}
Gelişmiş kurallar
YAKINDA
Zonos hesaplamaların nasıl gerçekleştiğini kurallar kullanarak hesabınızda gelişmiş özelleştirmeyi destekler. Kurallar, hesaplamanın farklı bölümlerine tampon eklemek, ücretleri özelleştirmek ve daha fazlası için kullanılabilir. Zonos'un kuralları nasıl yönettiğine dair tam bir döküm için, tüm olası kural türlerinin listesini içeren kurallar döküm belgelerimize bakın. Kurallar, Zonos Dashboard veya GraphQL API aracılığıyla yönetilebilir.