0 امتیاز
قبل در کامپیوتر و اینترنت توسط (6 امتیاز)
با سلام
چطور میشه بر روی تخصیص فعالیت بر اساس History در activiti شرط گذاشت. به این معنی که ما در ابتدای فرآیند فعالیتی داریم که بر اساس شرایطی به نقش های مختلف در یک سازمان تخصیص داده می‌شود. اما می خواهیم زمانی که فرآیند برای دفعات بعد به این فعالیت بازگشت، تخصیص فعالیت بر اساس شرایط اولیه نباشد و به سمتی تخصیص یابد که قبلا این فعالیت را انجام داده است.
این فعالیت بیش از یک ورودی دارد و میخواهیم بر روی هر یک از این ورودی ها شرط گذاری کنیم که کدام یک از History استفاده کند و کدام یک بر اساس History نباشد.

با تشکر از توجه شما

1 پاسخ

0 امتیاز
قبل توسط (1.4هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

شرط فعالسازی را می‌توانیم با این سناریو تعریف کنیم:

  1. در مسیرهای منتهی به User Task موردنظر که میخواهیم از آن مسیر History غیرفعال شود، متغیری تعریف و مقداردهی کنیم.
  2. در شرط فعالسازی History از آن متغیر استفاده کرده و History را غیرفعال کنیم.

نکته: در صورتی که فرآیند تا به حال به User Task موردنظر نرسیده باشد، معیار History به صورت خودکار ignore می‌شود. بنابراین نیازی به درنظرگرفتن این حالت نیست.

مثال: فرض کنید میخواهیم در Task 1 از History استفاده کنیم. که وقتی از مسیر a به Task 1 می‌رسیم، History غیرفعال باشد وگرنه فعال باشد:

  • روی یال a یک Execution Listener از نوع Script برای ایجاد متغیر ignoreTask1History با مقدار true ایجاد می‎کنیم.
execution.setVariable('ignoreTask1History', true);
  • در فیلد Activation Condition از History در تخصیصِ کار Task 1، مقدار عبارت زیر را قرار می‌دهیم. دقت کنید: وجودنداشتن ignoreTask1History: فعال‌بودنِ History.
${!execution.hasVariable('ignoreTask1History') || !ignoreTask1History}
  • در Task 1 یک Task Listener از نوع Script برای false کردن مقدار متغیر ignoreTask1History اضافه می‎کنیم؛ این مرحله لازم است، زیرا می‎خواهیم از سایر مسیرها History فعال باشد. توجه: در تعریف Script، مقدار event باید برابر create باشد تا این مقداردهی با رسیدن به task بلافاصله انجام شود.
task.execution.setVariable('ignoreTask1History', false);

سوالات مشابه

0 امتیاز
1 پاسخ 222 بازدید
0 امتیاز
0 پاسخ 321 بازدید
+2 امتیاز
1 پاسخ 263 بازدید
سوال شده 6 سال قبل در کامپیوتر و اینترنت توسط nirvana (89 امتیاز)
0 امتیاز
1 پاسخ 412 بازدید
0 امتیاز
1 پاسخ 735 بازدید
+2 امتیاز
1 پاسخ 535 بازدید
0 امتیاز
2 پاسخ 752 بازدید
+1 امتیاز
1 پاسخ 241 بازدید
+1 امتیاز
0 پاسخ 382 بازدید
...