Merhabalar,
Ax da bildiğiniz gibi ürün kategorileri hiyerarşik şekilde tutulmakta. Bir kategorinin tüm alt kırılımlarında yer alan kategorileri öğrenmek için aşağıdaki sorguyu kullanabilirsiniz. Ax kategorilerde Nested Set Model‘i kullandığı için aşağıdaki sorguyu aynı yapıyı kullanan diğer yerlere de uyarlayabilirsiniz.
Aynı şekilde where koşulundan eşittirleri kaldırarak parent kategorinin kendisinin gelmesini engelleyebilirsiniz. Level alanına sabit değer vererek de sadece istediğiniz kırılım seviyesindekilerin gelmesini sağlayabilirsiniz.
// Güven Şahin
// guvensahin.com
static void PRGCategoryNestedModel(Args _args)
{
EcoResCategory childEcoResCategory;
EcoResCategory parentEcoResCategory = EcoResCategory::find(22565422694); // parent cat
Counter counter;
while select childEcoResCategory
where childEcoResCategory.Level >= parentEcoResCategory.Level
&& childEcoResCategory.NestedSetLeft >= parentEcoResCategory.NestedSetLeft
&& childEcoResCategory.NestedSetRight <= parentEcoResCategory.NestedSetRight
&& childEcoResCategory.CategoryHierarchy == parentEcoResCategory.CategoryHierarchy
{
counter++;
info(childEcoResCategory.name);
}
info(strFmt("Toplam: %1", counter));
}
Hoşçakalın.