فیلدهای انتخابگر حرفی اساسا برای خواندن داده ها از پایگاههای خارج از سیستم مدیریت فرایندها به کار می رود. این فیلدها براساس نحوه استخراج داده ها و موقعیت پایگاه داده های مبدا نسبت به پایگاه فرایندها به دو نوعند:
1-فیلدهای انتخابگر حرفی با SQL View در سیستم مدیریت فرایندها
در این حالت کافی است یک view در پایگاه مدیریت فرایندها تعریف کنیم و آن را در تنظیمات فیلد انتخابگر حرفی تعیین نماییم. در این مدل فرض می شود که پایگاه داده های مبدا با پایگاه مدیریت فرایندها در یک سرور قرار دارند.
2-فیلدهای انتخابگر حرفی با تابع گردش کار
در مواردی مثل وجود view در خارج از پایگاه مدیریت فرایندها و یا عدم امکان ایجاد view، باید از یک تابع خاص و با استفاده از موجود WorkADOSelect و تعیین پارامترهای مناسب، داده های فیلد انتخابگر حرفی را از پایگاه مبدا استخراج کنیم. از این جهت مدلهای زیر قابل پیش بینی است:
2-1) view در خارج از سیستم مدیریت فرایندها
در این مدل یک view در پایگاه مبدا (مثلا سیستم مالی نوسا) ایجاد می شود و سپس در سیستم مدیریت فرایندها از طریق یک تابع گردش کار و با استفاده از WorkADOSelect داده های این view خوانده می شود. حال بسته به موقعیت پایگاه مبدا این مدل خود به دو نوع تقسیم می شود:
2-1-1) پایگاه مبدا و سیستم مدیریت فرایندها در یک سرور
همانطور که در شکل زیر مشاهده می کنید، در این حالت باید از تابع گردش کار و پارامترهای processedParams استفاده کنید:
توضیح اینکه این یک مدل فرضی و ساده شده است که با هدف آموزش نوشتن تابع گردش کار توضیح داده می شود.
2-1-2) پایگاه مبدا در خارج از شبکه محلی سیستم مدیریت فرایندها
در این مدل، نسبت به مدل قبلی یک ماژول بنام CPUConnector اضافه می شود که وظیفه اتصال و انتقال درخواستها از پایگاه فرایندها به پایگاه مبدا و سپس دریافت پاسخ و تحویل آن به سیستم مدیریت فرایندها را به عهده دارد. توضیح این که این ماژول با استفاده از پروتکل Rest کار می کند. در شکل زیر شماتیک این مدل را ملاحظه می کنید:
- این مدل شکل واقعی مدل قبلی است و در عمل این مدل است که باید پیاده سازی شود. به عبارت دیگر تنها زمانی View را در پایگاه مبدا ایجاد می کنیم که پایگاه مبدا در خارج از شبکه محلی سیستم مدیریت فرایندهاست.
2-2) دسترسی مستقیم به داده های پایگاه مبدا (بدون view)
اگر به دلیل امنیت اطلاعات یا هر دلیل دیگر امکان پیاده سازی SQL View در پایگاه داده های مبدا وجود نداشته باشد آنگاه باید از طریق موجود WorkADOSelect با پارامترهای مناسب بتوانیم داده های مورد نظر خود را به شکل مستقیم استخراج کنیم. این مدل نیز بسته به موقعیت پایگاه مبدا نسبت به پایگاه فرایندها خود به دو نوع می باشد:
2-2-1) پایگاه مبدا در شبکه محلی سیستم مدیریت فرایندها
در این مدل که شماتیک آن را در شکل زیر مشاهده می کنید، view وجود ندارد و باید از تابع گردش کار با پارامترهای rawParams استفاده کنیم:
توضیح: این مدل در واقعیت اتفاق نمی افتد و صرفا با هدف آموزش تابع استخراج دادها ساده سازی شده است. در واقع در حالتی که پایگاه داده های مبدا و سیستم مدیریت فرایندها در یک شبکه محلی هستند، احتمال استفاده از rawParams نزدیک به صفر است و ممکن است فقط در موارد بسیار نادر انجام شود.
2-2-2) پایگاه مبدا در خارج از شبکه محلی سیستم مدیریت فرایندها
در این مدل نیز نسبت به مدل قبلی یک ماژول با نام CPUConnector اضافه شده است که وظیفه آن، انتقال درخواستهای سیستم مدیریت فرایندها به پایگاه مبدا و دریافت پاسخ و تحویل آن به سیستم مدیریت فرایندهاست. لازم به توضیح است که این ماژول با تکنولوژی Rest کار می کند.
توضیح: این مدل، الگوی واقعی مدل قبلی است. در واقع زمانی از rawParams استفاده می کنیم که سرور پایگاه داده های مبدا در خارج از شبکه محلی سیستم مدیریت فرایندها بوده و امکان نوشتن View در پایگاه میدا را نداشته باشیم.
سخن آخر: در حالتی که پایگاه داده مبدا در شبکه محلی سیستم مدیریت فرایندها قرار دارد اصولا نیازی به استفاده از تابع گردش کار نیست و از مدل 1 (View در سیستم مدیریت فرایندها) استفاده می شود. این مدل علاوه بر سادگی پیاده سازی، مزیت مهم دیگری دارد که امکان ویرایش View از طریق Management Studio را نیز به Admin سیستم مدیریت فرایندها می دهد.