Как добавить обработку события изменения сделки в коробке Битрикс24?
Из-за чего при импорте товаров могло перестать создаваться категории?
И как прописать категории более 4-ого уровня
$usersWithPosition = [];
try
{
$position = "Кладовщик";
$users = \Bitrix\Main\UserTable::getList([
'select' => ['ID'],
'filter' => [
'=WORK_POSITION' => $position
]
]);
foreach( $users as $user )
{
$usersWithPosition[] = "user_".$user['ID'];
}
}
catch( \Throwable $e )
{
$this->WriteToTrackingService($e->getMessage(), 0, \CBPTrackingType::Error);
}
$this->SetVariable('UsersWithTargetPosition', $usersWithPosition);
Как сделать БП, который будет каждый день сверять прошел ли год с этой даты?
Как в представлении списка, в разделах CRM системы вывести миниатюры изображений (фотографий)?
Но проблема в том, что в таком случае возвращаются абсолютно все поля у задачи, даже те, которые мне не нужны.
Кто сталкивался переноса сетевого окружения и cms bitrix24 c centos7 на убунту?
Подскажите пожалуйста решение.
\Bitrix\Main\Loader::requireModule('crm');
/**
* Телефон который будем искать
* @var string
*/
$phone = '2131164';
/**
* Список всех ID лидов с этим телефонным номером
* @var int[]
*/
$leadIds = [];
$adapter = \Bitrix\Crm\EntityAdapterFactory::create([
'FM' => [
'PHONE' => [
['VALUE' => $phone]
]
]
],
\CCrmOwnerType::Lead
);
$dups = (new \Bitrix\Crm\Integrity\ContactDuplicateChecker())
->findDuplicates(
$adapter,
new \Bitrix\Crm\Integrity\DuplicateSearchParams([
'FM.PHONE'
])
);
foreach($dups as &$dup)
{
if(!($dup instanceof \Bitrix\Crm\Integrity\Duplicate))
{
continue;
}
$entities = $dup->getEntities();
if(!(is_array($entities) && !empty($entities)))
{
continue;
}
//Each entity type limited by 50 items
foreach($entities as &$entity)
{
if(!($entity instanceof \Bitrix\Crm\Integrity\DuplicateEntity))
{
continue;
}
if ( $entity->getEntityTypeID() != \CCrmOwnerType::Lead)
{
continue;
}
$leadIds[] = $entity->getEntityID();
}
}
AddEventHandler("crm", "OnBeforeCrmLeadAdd", "CheckOnBeforeCrmLeadAdd");
AddEventHandler("crm", "OnAfterCrmLeadAdd", "CheckOnBeforeCrmLeadAdd");
AddEventHandler("crm", "OnAfterExternalCrmLeadAdd", "CheckOnBeforeCrmLeadAdd");
function CheckOnBeforeCrmLeadAdd(&$arFields) {
file_put_contents($_SERVER["DOCUMENT_ROOT"]."/log_lead.log",print_r($arFields,true)."\n",FILE_APPEND);
}
\Bitrix\Main\Loader::IncludeModule('crm');
$obLead = new \CCrmLead(false);
$ID = $obLead->Add(
$leadfields = ['TITLE'=>'test'],
true,
array("REGISTER_SONET_EVENT" => true, "DISABLE_USER_FIELD_CHECK" => true)
);