Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Kullanıcı tanımlı iş kuralları ile Backoffice üzerinden, pop-up seçim (browser) ya da değer giriş formlarıyla veri giriş/seçim yapılmasından sonra, alınan değerin bir kural ile çalıştırılarak, işlem yapılmasını sağlayan kullanıcı tanımlı (etkileşimli) iş kuralı çalıştırma özelliği ürünümüze eklenmiştir.
Bu özellik, sevkiyat Planlama gibi fişlerde yoğunlukla kullanılan personel atama, peron atama, araç atama ya da öncelik belirleme gibi işlemlerin kullanıcı etkileşimli iş kurallarıyla yapılabilmesi amacıyla geliştirilmiştir.

Planlama fiş satırlarına personel atama işleminin iş kurallarıyla nasıl yapılacağının işlem adımları aşağıda sıralanmıştır.

1. Sistem işletmeni ekranından İş kuralları formu açılır.
Image Added

Anchor
page2
page2
İş kurallı çalıştırılırken hangi tip (Seçim formu, Değer giriş formu)veri giriş formunun kullanılacağı 1.
Işlem de seçilir.
Seçim Formu: Kullanıcı, Adres, Araç browserlarının popup açılıp seçim yapılmasını sağlar. Değer giriş Formu: Metin, Tam Sayı, Numeric, Tarih tipinden popup açılacak ekrandan değer girilmesini sağlar.
Image Added

  1. Anchor
    page3
    page3
    Sağ tık ile kullanıcı tanımlı kural çalışltırma menü seçeneğinde görünecek kural ismi Kural Adı bölümüne yazılır. (Planlama Satır Kullanıcı Belirle)

Image Added

  1. Anchor
    page4
    page4
    Kural 1. Satırında İşlem türü olarak Seçim Formu seçilir ardından Detaylar bölümünden Kullanıcı browserının açılması için "Kullanıcı" listeden seçilir. Kural Sonucu Başarılıysa tik işaretlenir.

Image Added

  1. Anchor
    page5
    page5
    Scrip editörden Rule scripti açılarak bu kod parçası scripte eklenir. Browserdan seçilen değer {Actions.1.RuleResponse} içinde kuralda kullanılır.


Bu script Planlama fiş satırlarınında dönerek planlama fiş satırlarının AssignTo alanına browserdan seçilen kullanıcıyı yazar.

BeginForm(PlanlamaSatırlarıKullaniciBelirle)
Set(@userId, {Actions.1.RuleResponse})
If(@userId != "")
For(@i,1,@GridSelectList.rowCount,1)
Warehouse.Get(@[email protected])
PlanningSlip.Get(@[email protected])
If(@@PlanningSlip!="")
PlanningSlipLine.List("SlipId=@@PlanningSlip.Id", "" , @PlanningSlipLine)
For(@k,1,@PlanningSlipLine.rowCount,1)
PlanningSlipLine.Get(@[email protected])
If(@@PlanningSlipLine!="")
User.Get(@userId)
PlanningSlipLine.Save()
EndIf()
Next()
EndIf()
Next()
EndIf()
ExitForm:
Set(@test,1)
EndForm()

  1. Anchor
    page6
    page6
    Kural tanımının 2. Satırına "Ön Koşulu" 1. Eylem, "Durumu" Başarılıysa seçilerek, "İşlem Türü" Komut çalıştır olarak belirlenir. Detaylar dan PlanlamaSatirlariKullaniciBelirle seçilerek kural işletme adım tanımları tamamlanır.

Image Added

  1. Anchor
    page7
    page7
    Belirlenen kuralın nerede çalışacağını belirlemek için ""Menüye Eklle" işaretlenir, Listeden kuralın nereye bağlanacağı seçilir ""Planlama Fişi"



Planlama browserında seçilen planlama'nın satırları için bu kural çalıştırılacaktır.
Bu kuralı değiştirerek planlama fiş satırlarına bağlayarakta satır bazında seçimle çalıştırmakta mümkündür.
Image Added

Anchor
page8
page8
Kural tanımlandıktan sonra Backoffice açıldığında yazılan kural, ilgili form'un sağ tık ile gelen "Kullanıcı tanımlı Kural" menü seçeneği altında görünecektir. Seçim yapılan satır için ilgili kural kullanıcı tarafından seçilerek çalıştırılır.
Image Added
Anchor
page9
page9
Planlama fişi satırlarında incele modunda öncelik belirlemek için örnek kural ;


BeginForm(PlanlamaSatirlariOncelikBelirle)
Set(@Oncelik, {Actions.1.RuleResponse})
If(@Oncelik != "")
For(@i,1,@GridSelectList.rowCount,1)
Warehouse.Get(@[email protected])
If(@@Warehouse!="")
PlanningSlip.Get(@[email protected])
PlanningSlipLine.Get(@[email protected])
If(@@PlanningSlipLine!="")
PlanningSlipLine.Set({"Priority": "@Oncelik"})
PlanningSlipLine.Save()
EndIf()
EndIf()
Next()
EndIf()
ExitForm:
Set(@test,1)
EndForm()


Planlama browserında Araç atama için örnek kural ;

BeginForm(PlanlamaAracBelirle)
Set(@VehicleId, {Actions.1.RuleResponse})
If(@VehicleId != "")
For(@i,1,@GridSelectList.rowCount,1)
Warehouse.Get(@[email protected])
If(@@Warehouse!="")
PlanningSlip.Get(@[email protected])
If(@@PlanningSlip!="")
Vehicle.Get(@VehicleId)
Warehouse.Get(@@PlanningSlip.WarehouseId)
PlanningSlip.Save()
EndIf()
EndIf()
Next()
EndIf()
ExitForm:
Set(@test,1)
EndForm()
Anchor
page10
page10
Planlama fişi satırlarında incele modunda kullanıcı atama

BeginForm(PlanlamaSatirlariKullaniciBelirle)
Set(@userId, {Actions.1.RuleResponse})
If(@userId != "")
For(@i,1,@GridSelectList.rowCount,1)
Warehouse.Get(@[email protected])
If(@@Warehouse!="")
PlanningSlip.Get(@[email protected])
PlanningSlipLine.Get(@[email protected])
If(@@PlanningSlipLine!="")
User.Get(@userId)
PlanningSlipLine.Save()
EndIf()
EndIf()
Next()
EndIf()
ExitForm:
Set(@test,1)
EndForm()