Для создания задачи на основе двух разных сделок в двух разных воронках вам потребуется использовать возможности Bitrix24 API для создания и настройки задач. Ниже приведен подробный алгоритм действий:
1. Получение информации о сделках: Сначала необходимо использовать Bitrix24 API для получения информации о двух сделках. Для этого вы можете воспользоваться методом "crm.deal.get", передавая идентификаторы сделок в параметрах запроса.
Пример запроса:
use Bitrix24CRMDeal; $deal1 = Deal::getById(1234); $deal2 = Deal::getById(5678);
2. Проверка условий: После получения информации о сделках, вам необходимо проверить, что они находятся в нужных воронках и соответствуют другим условиям, чтобы создать задачу. Например, вы можете проверить значения полей сделок, сроки выполнения и другие параметры.
Пример проверки условий:
if ($deal1['STAGE_ID'] == 'WON' && $deal2['STAGE_ID'] == 'WON' && $deal1['ASSIGNED_BY_ID'] == $deal2['ASSIGNED_BY_ID']) { // условия выполняются - создаем задачу } else { // условия не выполняются - выходим из функции }
3. Создание задачи: Если условия выполняются, мы можем создать задачу на основе информации из сделок.
Пример создания задачи:
use Bitrix24Task; $taskFields = array( 'TITLE' => 'Задача на основе двух сделок', 'DESCRIPTION' => 'Описание задачи', 'DEADLINE' => '2022-12-31', 'RESPONSIBLE_ID' => $deal1['ASSIGNED_BY_ID'], 'UF_CRM_TASK' => array('D_' . $deal1['ID'], 'D_' . $deal2['ID']), ); $task = Task::add($taskFields);
4. Обработка результатов: После создания задачи, вы можете обработать результаты операции, чтобы убедиться, что задача была успешно создана.
Пример обработки результатов:
if ($task) { echo 'Задача успешно создана с идентификатором ' . $task; } else { echo 'Произошла ошибка при создании задачи: ' . Task::getLastError(); }
Весь код приведен в примере написан на PHP с использованием библиотеки Bitrix24 PHP SDK, однако вы можете использовать любой язык программирования или среду разработки, совместимые с Bitrix24 API.
Обратите внимание, что в примере использованы только основные параметры создания задачи, и вы можете добавить или настроить дополнительные поля, в соответствии с вашими требованиями. Также необходимо учесть, что данное решение является примером и может быть доработано и оптимизировано в зависимости от ваших потребностей.