Versions Compared

Key

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

...

Panel

Workflow Definition Oluşturma Ekranı

Workflow servisi kurulduktan sonra Logo CRM Uyarlama Araçlarından Designer açılarak Workflow sekmesine gelinir ve Sağ Tık > Yeni tıklanır. 

Image Modified

Tanım, Properties ve Designer olmak üzere iki sekmeden oluşur.

Properties sekmesinde temel özellikler girilir. Name alanına tanım ismi yazılır, Target Object Type alanında kontrol edilmek istenen hedef nesne işaretlenir. Workflow'un hedef nesne oluşturulduğunda tetiklenmesini istiyorsak "Object Is Created" , hedef nesne bir kriterde olduğunda tetiklenmesini istiyorsak "Objects Fits Criteria" işaretlenir. Eğer "Allow Multiple Runs" özelliği işaretli değilse, iş akışı, kriterlere uyan her hedef nesne için bir kez çalışır. Nesne kriterlere uyduğu sürece iş akışını birden fazla kez tekrarlamak istiyorsanız bu seçeneği işaretleyin.

Designer sekmesi 3 bölmeden oluşur; sağ bölmede araç kutusu yer alır, bir iş akışı oluşturmak için birleştirebileceğiniz etkinlikleri içerir. Ortada tasarım alanı bulunur, araç kutusundaki etkinlikler sürükle-bırak yöntemiyle burada birleştirilip iş akışı oluşturulur. Sol bölmede ise tasarım yüzeyinde seçili etkinliğin özellikleri listelenir.


...

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:

  1. Definition yaratıldıktan sonra Properties ekranında Target Object Type: Teklif ve Automatically start when: Object is created işaretlenir. Çünkü hedef nesnemiz teklif ve yeni bir teklif yaratıldığında akışın çalışmasını istiyoruz.


Image Modified


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:  

 
Image Modified


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. 

 
Image Modified 

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.


Image Modified


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.


Image Modified


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.


Image Modified 

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.


Image Modified 

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.


Image Modified