Page History
...
Panel |
---|
Örnek Workflow Tasarımı Senaryosu Örnek senaryoda LogoCRM üzerinde yeni oluşturulan Teklif kaydına bağlı olarak, üç adet ilişkili görev oluşması; İlişkili görevlerin Tanım ve Atanan Departman bilgilerinin iş akışında atanmış şekilleriyle gelmesini tasarlayalım:
2. Designer ekranına geçilir. Temel bilgilerde anlatıldığı üzere tasarıma ObjectTransactionScope aracıyla başlanır. 3. Hedef nesne olan Teklif'e referans atamak için GetObjectByKey<MT_Proposals> etkinliği sürükleyip bırakılır ve Key alanına targetObjectId parametresi girilir. 4. Etkinliğin Result bölümüne bağlamak için türü MT_Proposals olan değişken oluşturulur ve özellik penceresinde Result alanına yazılır: 5. Daha sonra yeni yaratılacak nesne için CreateObject<MT_Task> sürükleyip bırakılır ve Result bölümüne bağlamak için türü MT_Task olan değişken oluşturulup özellik penceresinde Result alanına yazılır. 6.Yalnız biz burada görevin ayrı bir nesne olarak değil teklife ilişkili bir nesne olarak yaratılmasını istiyoruz ve türler arasında teklife ilişkili görevi karşılayan alan bulunmuyor. Task içinde Proposal Oid collection olarak tutulmaktadır. Bu sebeple AddToCollection<MT_Proposals> fonksiyonunu kullanarak yaratılacak görevi teklife ilişkilendireceğiz. Collection alanına task.ProposalOid yazıyoruz ve Item alanına proposal değişkenini yazıyoruz. 7. Ardından yaratılacak görevin özelliklerini doldurmaya başlayabiliriz. Öncelikle görevin Tanım (Subject) özelliğini doldurmak istiyoruz. Sol taraf (To) değerine yarattığımız nesneye bağladığımız değişkenin doldurmak istediğimiz alanına karşılık gelen ifade olarak task.Subject yazıyoruz. Alan adı veritabanından kontrol edilerek doğru şekilde yazılmalıdır yoksa hata verecektir. Subject alanı String türündedir, bu sebeple sağ taraf (Value) değerine çift tırnak içinde istediğimiz Tanımı yazıyoruz. Tür uyuşmazlığı olması durumunda yine hata ile karşılaşılacaktır. 8. Bir başka özellik olarak Atanan Departman (AssignedDepartment) alanını doldurmak istiyoruz. Bu alan CT_User_Departments türünde karşımıza çıkmaktadır. Öncelikle GetObjectByKey<CT_User_Departments> etkinliğini kullanarak istediğimiz kullanıcı departmanını Guid üzerinden almamız gereklidir. Bunun için etkinliğin Key kısmına Guid.Parse("istenilen departmanın Oid değeri") yazılır. Etkinliğin Result bölümüne bağlamak üzere, türü CT_User_Departments olan bir değişken oluşturulur ve Result alanına yazılır.
9. Daha sonra Assign etkinliği ile AssignedDepartment alanı doldurulur. Value alanına kullanıcı departmanını karşılayan değişken yazılır.
10. Toplamda 3 adet ilişkili görev yaratılması istendiği için aynı işlemler iki defa daha tekrarlanır. Assign edilecek Tanım ve Atanan Departman özellikleri farklı olacağı için sağ taraf ve Guid değerleri değiştirilir. Tasarım bittikten sonra kaydedilir ve aktifleştirilir. Workflow servisi Restart edilir. Ardından LogoCRM'de yeni Teklif kaydı oluşturuldupunda akışın çalışarak istenilen özelliklerde 3 ilişkili görev kaydı yarattığı görülür. |