top_ua
Головна сторінка

Підтримка24

Як створити послідовні завдання різним користувачам (для коробкової версії)

Рейтинг:

Завдання - необхідно вирішити питання з послідовним створенням завдань. Тобто: при виконанні якоїсь великої та комплексної роботи завдання по її виконання ставляться одразу кільком користувачам. Але вони повинні створюватися таким чином, щоб кожний наступний користувач починав працювати зі своїм завданням тільки після того, як попередній завершить виконання своєї. Як це реалізувати?

Дійсно, такі завдання мають місце досить часто. При виконанні комплексних робіт буває необхідно зберігати послідовність дій співробітниками, щоб не порушувати порядок виконання. За допомогою стандартних інструментів створення завдань вирішити дане питання неможливо, але його можна вирішити за допомогою нескладного бізнес-процесу.

Створення процесу та налаштування параметрів шаблону

Створіть новий процес.

Виберіть назву і задайте опис процесу. Виберіть картинку за вашим бажанням.

Після цього можна приступати до створення та налаштування шаблону бізнес-процесу. Для роботи нам знадобляться три змінні типу Прив'язка до співробітника:

  • Вибраний співробітник - змінна потрібна для зберігання співробітника, для якого створюється кожне конкретне завдання.
  • Виконуючі перше завдання - список співробітників, для яких ставиться завдання на першому етапі.
  • Виконуючі друге завдання - список співробітників, для яких ставиться завдання на другому етапі.

Останні дві змінні повинні бути множинними, тому що завдання на кожному етапі може бути поставлене як одному працівнику, так і декільком. Але при цьому воно необов'язкове, тому що завдання може взагалі не ставитися.

Створення шаблону

На самому початку бізнес-процесу ми встановимо дію Запит додаткової інформації, за допомогою якогї користувачу потрібно буде вибрати працівників, що виконують завдання.

Завдання для користувачів будуть створюватися за допомогою Циклу.

Важливою особливістю нашого завдання є те, що завдання створюються окремо для кожного співробітника, а не для всіх одночасно. Для цього з множинної змінної, що зберігає список співробітників, потрібно отримати окремий елемент. Зробити це стандартними методами не можна, тому доведеться використовувати дію PHP код.

$root = $this->GetRootActivity();
$users = $root->GetVariable('UserMultiple');
$user = array_shift($users);
$root->SetVariable("UserSelected", $user);
$root->SetVariable("UserMultiple", $users);

У результаті в змінну UserSelected буде записаний черговий користувач із масиву, який стане коротшим на один елемент. Цикл повторюється до тих пір, поки в масиві співробітників не залишиться жодного елемента. Це ми вказали в налаштуваннях циклу.

Цю ж змінну ми будемо використовувати для створення завдання. Для цього потрібно розмістити дію Завдання. Налаштуємо параметри дії для створення завдання.

Потрібно поставити Так у полі Зупинити процес на час виконання завдання. Завдяки цьому завдання будуть створювати не відразу, а по черзі: для кожного наступного завдання користувача завдання буде створюватися тільки після того, як попередній завершив виконання свого.

Заповнити поля Постановник та Відповідальний можна за допомогою форми "Вставка значення". Всі інші поля дії можна заповнити залежно від специфіки створюваних завдань.

Дані дії повторюються для кожного передбаченого в процесі завдання. Ознайомитись з шаблоном повністю можна тут.


Дякую, допомогло! Дякуємо :) Не допомогло Дуже шкода :(
Дізнайтесь, чому:
Це не те, що я шукаю
Дуже складно і незрозуміло

Не знайшли відповідь на своє питання?

ПОСТАВТЕ ПИТАННЯ КОМАНДІ ПІДТРИМКИ24
Створювати звернення в техпідтримку можуть тільки користувачі комерційних тарифів. Користувачі безкоштовної версії мають доступ до безлічі навчальних статей та відео, а також записів вебінарів по Бітрікс24. З усіма питаннями по встановленню, впровадженню та доопрацюванню вам допоможуть наші партнери