Kısa Tanım:
 
Flow onay sisteminde manuel SQL yazılarak istenilen kullanıcı/kullanıcılara dinamik onaya gönderme işlemi yapılması anlatılmıştır.
 
Açıklama:
 
Aşağıdaki iki dokümanda anlatılan kullanıcı onayının oluşturulması ile ilgili genel bir örnek tasarımına aşağıdaki dokümanlardan ulaşabilirsiniz.

https://docs.logo.com.tr/pages/viewpage.action?pageId=30002001

https://docs.logo.com.tr/pages/viewpage.action?pageId=30002072

Daha spesifik bir örnek olması açısından bu dökümanda flow' da ki hiyerarşiye ait bir üst amirine onaya gönderilecek dinamik bir kullanıcı onay yapısı kullanılmıştır.

Kod örneğinde göreceğiniz gibi birçok değişik sorgu hazırlayarak onaya gönderme işlemleri yapabilirsiniz. Context.CurrentUser.UserId veya Username ile mevcut formu açan kullanıcıyı alıp, kullanıcı listesinde sql sorgusunda bu kullanıcıya ait herhangi bir sql yazabilirsiniz. Bu durumda kullanıcı adınız bir şekilde eşleştiği sürece üst amir bilgisine herhangi bir yapıdan ulaşabilirsiniz. Bu örnekte anlaşılabilir olması için ve bazen üst amirler bölgelere ayrılıp, farklı bölgelerde farklı hiyerarşilerde aynı amir ismi seçilebiliyor. Formu açan kullanıcının amiri hangi bölgede olursa olsun bir üsttekine gideceği için bu şekilde üst amire onaya gönderim sağlanabilir.

Kod Örneği:

"SELECT (SELECT USERNAME FROM LFLOW..IDPUSERS WHERE USERID=PARENTSSOID) AS USERNAME,PARENTSSOID AS USERID from LFLOW..VIEW_NWFORGHIERARCHY

WHERE PARENTSSOID<>SSOID AND SSOID="+Context.CurrentUser.UserId.toSql();

Akış Dosyası (.xnm):
 
Aşağıdaki dosyayı indirerek uygulamaya aktarabilirsiniz. İçeri aktarma işleminin nasıl yapıldığına dair bilgi için Aktar bölümünü inceleyebilirsiniz.

Dinamik Kullanıcı Listesi ile Amire onay atama işlemi.nxm