تولید و ارسال خودکار اعلامیه های گردش کار
همانطور که می دانید. یکی از امکانات سیستم مدیریت فرایندها تولید و ارسال اعلامیه ها به شکل پیامک و پست الکترونیک است. این اعلامیه ها از طریق یک شیوه اطلاع رسانی (پیامک یا پست الکترونیک) به یک گیرنده با شماره موبایل / آدرس پست الکترونیک مشخص ارسال می شود. تا قبل از این نسخه، فرض بر این بود که سیستم بطور خودکار و از طریق برنامه گردش کار، اعلامیه ها را با یک شیوه اطلاع رسانی معین و به گیرنده های مشخص و تعیین شده ارسال می نماید. اما نکته اینجاست که همواره چنین نیست و در مواردی باید ناچار اعلامیه ها تولید شوند و در یک مرحله دیگر یک کاربر انسانی تصمیم به تکمیل اطلاعات اعلامیه و ارسال آنها را بگیرد.
ارسال اعلامیه ها با دخالت عامل انسانی
در بعضی از موارد مشخص نیست که اعلامیه ها باید دقیقا به چه گیرنده ای و با چه شیوه ای اطلاع رسانی شود. این ابهام ممکن است به دلایل زیر باشد:
- شخص گیرنده اعلامیه ثابت نیست و مرتب تغییر می کند.
- شماره شخص گیرنده مشخص و در دسترس نیست.
- مشخص نیست که باید به گیرنده پیامک بزنیم یا اینکه به شکل پست الکترونیک اطلاع رسانی کنیم.
در این موارد، سیستم ابتدا و به شکل اتوماتیک اعلامیه ها را با درج اطلاعاتی مانند نام گیرنده و یادداشت های توضیحی تولید می کند و در مرحله بعد یک کاربر انسانی با تماس با مرکز گیرنده، از شیوه اطلاع رسانی و شماره تلفن/آدرس ایمیل گیرنده مطلع می شود و با تکمیل دستی این اطلاعات در اعلامیه، آن را ارسال می کند.
نکته مهم : توجه کنیدکه تنها و تنها اعلامیه هایی که از طریق برنامه و با استفاده از تابع WorkNotifUtils.CreateNotification تولید می شوند قابل ویرایش هستند. بنابراین اعلامیه هایی که به شکل دستی تولید می شوند قابل ویرایش نیستند.
برای توضیح دقیق تر بهتر است ابتدا نگاهی به تابع CreateNotification بیندازیم:
function CreateNotification (informServiceCode, rcvNumOrAddr, messageText, attachments, workKey, groupID, note, rcvCode, rcvName, rcvCC, rcvBCC)
از میان پارامترهای متعدد این تابع، پارامتر اول (informationServiceCode) شیوه اطلاع رسانی و پارامتر دوم (rcvNumOrAddr) شماره تلفن/آدرس پست الکترونیک گیرنده را تعیین می کند. حال اگر این دو پارامتر به شکل Null یا "تعیین نشده" باشند آنگاه اعلامیه تولید می شود و در فهرست اعلامیه های تولید شده قابل مشاهده است اما ارسال آن تا زمان ویرایش به شکل دستی و تعیین این دو پارامتر به تعویق می افتد. برای نمونه به مثال زیر توجه کنید:
function WorkTaskTestNotifs() {
const msgText="فراخوان كتابهاي تازه" ;
const msgNote="اين پیام به مدير مالي ارسال شود";
const recName="شرکت مشاورین الف"
WorkNotifUtils.CreateNotification("", "", msgText, "", WorkState.WorkKey, msgNote, "", recName);
}
ملاحظه می کنید که در اینجا ادمین سیستم مطمئن نیست که اولا مدیر مالی شرکت کیست و دوم این که شیوه اطلاع رسانی به این شخص کدام است. حال به این اعلامیه در فهرست اعلامیه های تولید شده در گردش کار توجه کنید:
ملاحظه می کنید که برای این اعلامیه، آیکون ویرایش که در شکل با فلش قرمزرنگ مشخص شده است، فعال است و به این معنی است که این اعلامیه قابل ویرایش است. با کلیک روی این آیکون یا دبل کلیک روی اعلامیه، محاوره ویرایش اعلامیه به شکل زیر روی صفحه باز می شود:
حال در این محاوره کاربر مسئول ارسال اعلامیه ها با شرکت مشاورین الف تماس می گیرد و شماره تلفن/آدرس ایمیل مدیر مالی را پیدا می کند و با تکمیل این اعلامیه، درنهایت آن را ارسال می کند.
نکته مهم: توجه کنید که در این محاوره تنها فیلدهای شماره تلفن/آدرس ایمیل گیرنده و شیوه اطلاع رسانی قابل ویرایش است و موارد دیگر شامل کد گیرنده ، نام گیرنده و یادداشت قابل ویرایش نیستند و تنها کارکرد توصیفی و دارند و برای راهنمایی کاربر نمایش داده می شود.
و اما اگر اعلامیه به شکل دستی تولید شده باشد، همانند شکل زیر، آیکون ویرایش اعلامیه غیرفعال خواهد بود:
حال با دبل کلیک روی اعلامیه با پیغام خطای زیر روبرو خواهید شد: