Versions Compared

Key

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

Özelleştirilmiş Aktivite (Custom Activity) tanımı yapma yazabilmek için izlenmesi gereken adımlar, hazırlanmış bir fonksiyonu içeri alma işlemleri ve konu ile ilgili hazır paket örnekler aşağıdaki gibidir:

Panel

Table of Contents

Kurulum

Panel
borderStyledashed
  1. Custom Activity için gerekli template ve yardımcı uygulamalar için visual studio için yazılmış eklentinin çalıştırılması gerekmektedir.

    Image Modified
    Image Modified
  2. Kurulum tamamlandıktan sonra Visual Studio uygulamasını açıp, aşağıdaki menü üzerinden Extentions And Updates ekranını açılır.

Image Modified

Aşağıdaki gibi eklentinin yüklenme durumu gözlemlenir.

Image Modified

Aktivite Oluşturulması

Panel
borderStyledashed
  1. Visual Studio’da New Project üzerinden “LFlow.Custom.Activity” template seçilir.
    Image Modified
  2. Oluşturulan proje detayı aşağıdaki gibidir:
    Image Modified
  3. Açılan projede aktivite tasarımı için örnek sınıflar yer almaktadır.
    Üç farklı tipte aktivite tasarlanabilir:
    • CustomBaseActivity :  İş akış bu aktivite adımına geldiğinde “Execute” metodu çalıştırılır ve akış sonraki adıma geçer. Bu adımda flow değişkenlerinin değerinde değişiklik yapılırsa sonraki adımda yeni değerler görünür.
      Bu tip aktivite oluşturmak için oluşturulacak sınıf, INCustomBaseActivity interface’inden türetilmelidir.
    • AjmBMCustomActivity : AJM aktiviteleri asenkron çalıştırılan aktivitelerdir. İş akış bu aktivitenin adımına geldiğinde, ajm servis üzerinden bu aktivite adımı çalıştırılır.
      Bu tip aktivite oluşturmak için oluşturulacak sınıf,  INAjmBMCustomActivity interface’inden türetilmelidir.
    • AjmTaskCustomActivity : AJM Task aktivitesi, asenkron olarak belli zaman aralıklarında tekrarlı şekilde bu aktivite içinde yer alan işlemlerin çalıştırılmasını sağlar. Tanımlanan görev ayarlarına bağlı olarak belli zamanlarda “Execute” metodu çalıştırılır.
      Bu tip aktivite oluşturmak için oluşturulacak sınıf,  INAjmTaskCustomActivity interface’inden türetilmelidir.
  4. İş akışı, özelleştirilmiş aktivite adımına geldiğinde “Execute” metodundaki işlemler çalıştırılır. Akış içerisindeki mevcut tüm değişkenler method a parametre olarak gelmektedir. Değişiklik yapıldığında ilgili değişken değerleri değişmesi sağlanmaktadır.
    Image Modified
  5. Akış için gerekli değişken ve parametreleri tanımlanabilinmektedir.
    1. “NCustomActivityExpressionVariable” attribute ile oluşturulduğunda roslyn editör ile istenilen c# kodu yazılıp sonuç döndürülmesi sağlanabilir.
    2. “TypeConverter(typeof(ExpandableObjectConverter))”  attribute ile oluşturulduğunda sınıf (nesne) olarak parametere alınabilir.
    3. “TypeConverter(typeof(StringConverter))” standart tipli değişken dönüşümleri için.
    4. “Editor(typeof(BrowseForFolderEditor), typeof(DialogPropertyValueEditor))” dosya seçim ekranını açıp, değer seçilmesini sağlamaktadır.
  6. Testleri ve geliştirimi tamamlanan özelleştirilmiş aktivite projesi sağ tıklanarak Publish edilebilir.
    Image Modified
  7. .lflowcustom uzantılı bir dosya belirtilen dosya yoluna oluşturulur.

    Image Modified
    Image Modified


Tasarım Aracı Üzerinde Özelleştirilmiş Aktivite Kullanımı

Panel
borderStyledashed
  1. LogoFlow tasarım aracı “Akış” altında “Özelleştirilmiş Aktiviteler” açılır.
    Image Modified
  2. Önceden eklenmiş paketler burada görüntülenir. Yeni aktivite paketleri de “İçeri Aktar” ile aktarılır.
    Image Modified
  3. Özelleştirilmiş aktivite paketi eklendikten sonra tasarım aracının sol menüsündeki akvite listesine tanımalanan yeni aktiviteler özellikleri ile birlikte kullanılabilir.
    Image ModifiedImage Modified
  4. Oluşturulan aktiviteler için parametre ekran ayarları.

 

...

Image Modified

Versiyon

Panel
borderStyledashed

Aynı özelleştirilmiş aktivite projesi için farklı versiyonlar oluşturulabilir.

Aktivitenin daha güncel bir versiyonu yüklendiğinde önceki versiyon ile başlatılmış olanlar o versiyon ile çalışmaya devam ederler. Özelleştirilmiş aktivitenin güncel versiyonu eklendikten sonra iş akış kaydedildikten sonra son versiyondan çalıştırılır.

Portal Üzerinden Görüntülenmesi

Panel
borderStyledashed
  1. Oluşturulan akış başlatıldığında, tasarlanan ekran üzerinden e-fatura dosya adı alınıp, E-Logo üzerinden bunun zip olarak indirilmesi. Sonrasında bunun içerisinden pdf dosyasının çıkartılıp, Ekran üzerinde link ile indirilebilir, gözlenebilir şekilde sonlandırılmasını içermektedir.

    Image Modified
    Image Modified
    Image Modified
  2. İşlemler sırasında kulanılan file log activity ve signalr ile yazılmış anlık ileti özelliği ile akışın durumu izlenmiş , loglanmış oldu.

Image Modified


Image Modified


Örnek İndir

Panel
borderStyledashed

Not : Yukarıdaki örnekler için oluşturulmuş projelere için oluşturulan *.nxm ve *.lflowcustom dosyalarına aşağıdan ulaşabilirsiniz.