Можно ли в Битрикс24 из объекта "Контакт" выполнить поиск по элементам смарт-процесса?

В Битрикс24 есть возможность выполнить поиск по элементам смарт-процесса из объекта "Контакт". Для этого необходимо использовать метод "SearchComponentWorkflowStatus" класса "Bitrix24CRMWrapper".

Прежде всего, следует убедиться, что у вас есть доступ к объекту "Контакт" и его атрибутам. После этого вы можете использовать следующий код для выполнения поиска по элементам смарт-процесса:

$contactId = 123; // ID контакта, для которого выполнить поиск
$workflowStatus = 'Completed'; // Статус смарт-процесса, который нужно найти
$searchQuery = 'some search query'; // Поисковый запрос

// Определяем объект контакта
$contact = new CCrmContact(false);
$contactData = $contact->GetByID($contactId);

// Если контакт найден, выполняем поиск по смарт-процессу
if($contactData)
{
    $workflow = new CBPWorkflow(false);
    
    // Входные параметры для поиска
    $arWorkflowParameters = array(
        'CONTACT_ID' => $contactId,
        'WORKFLOW_STATUS' => $workflowStatus,
        'SEARCH_QUERY' => $searchQuery,
    );
    
    // Ищем элементы смарт-процесса
    $arSearchResults = $workflow->SearchComponentWorkflowStatus($arWorkflowParameters);
    
    // Обработка результатов поиска
    if(is_array($arSearchResults) && count($arSearchResults) > 0)
    {
        foreach($arSearchResults as $arResult)
        {
            // Вывод информации о найденных элементах смарт-процесса
            echo 'Найден элемент смарт-процесса: ' . $arResult['ID'] . '<br>';
            echo 'Статус смарт-процесса: ' . $arResult['STATUS'] . '<br>';
            // Дополнительные параметры элемента смарт-процесса...
        }
    }
    else
    {
        echo 'Ничего не найдено';
    }
}
else {
    echo 'Контакт не найден';
}

Вышеуказанный код демонстрирует пример использования метода "SearchComponentWorkflowStatus" для поиска элементов смарт-процесса, связанных с определенным контактом. Вы можете адаптировать его под свои потребности, добавив или удалив дополнительные параметры поиска.

Если вы работаете с Битрикс24 через REST API, то можете использовать метод CRM.App.Workflow.Status.list для выполнения аналогичной операции поиска элементов смарт-процесса из объекта "Контакт".