15.04.2024
02:24
15.04.2024 02:24:23
Компании
получить компанию
$companyId = intval($arFields["COMPANY_ID"]);
$arFilter = array("ID"=>$companyId,"CHECK_PERMISSIONS"=>"N");
$arSelect = array("TITLE", UF_CRM_TARIFF,UF_CRM_COMPANY_TIME);
$rsCompany = CCrmCompany::GetList(Array(),$arFilter,$arSelect);
if($arComp = $rsCompany->Fetch()){
}
|
обновить компанию
$company = new \CCrmCompany( false );
$arUpdateData = [UF_CRM_COMPANY_TIME => $newTime];
$arOptions = [
//'DISABLE_USER_FIELD_CHECK' => true,
"CURRENT_USER"=> 1,
"ENABLE_SYSTEM_EVENTS" =>true
];
$upRes = $company->Update($companyId, $arUpdateData, true, true, $arOptions);
|
добавить запись в историю компании (лида, сделки, контакта)
$CCrmEvent = new CCrmEvent();
$CCrmEvent->Add(
array(
'ENTITY_TYPE'=> "COMPANY", //LEAD, CONTACT, DEAL
'ENTITY_ID' => $id,
'EVENT_ID' => 'INFO',
'EVENT_TEXT_1' => 'Просмотр карточки ais за '.date("d.m.Y", $date), //какой-то текст
//'FILES' => array(CFile::MakeFileArray('/bitrix/templates/bitrix24/images/template_sprite_21.png')),
//'DATE_CREATE' => ConvertTimeStamp(time() + CTimeZone::GetOffset(), 'FULL', SITE_ID), //по умолчанию текущее время
)
); |
Контакт
добавить контакт
$arFields = array(
"NAME" => "Имя",
"LAST_NAME" => "Фамилия",
"SECOND_NAME" => "Отчество",
"HONORIFIC" => "HNR_RU_1",
"POST" => "Должность",
"ADDRESS" => "Улица, дом, корпус, строение",
"ADDRESS_2" => "Квартира / офис",
"ADDRESS_CITY" => "Город",
"ADDRESS_POSTAL_CODE" => "Почтовый индекс",
"ADDRESS_REGION" => "Район",
"ADDRESS_PROVINCE" => "Область",
"ADDRESS_COUNTRY" => "Страна",
"ADDRESS_COUNTRY_CODE" => "",
"SOURCE_DESCRIPTION" => "Описание",
"SOURCE_ID" => "SELF",
"TYPE_ID" => "SHARE",
"POST" => "не указано",//должность
//"OPENED" => "N", //открыто для других пользователей
"EXPORT" => "Y",//участвует в экспорте
'FM' => array(//почта, телефон
'EMAIL' => array(
'n0' => array('VALUE' => $arNewUser["EMAIL"], 'VALUE_TYPE' => 'WORK')
),
'PHONE' => array(
'n0' => array('VALUE' => $arNewUser["PERSONAL_MOBILE"], 'VALUE_TYPE' => 'WORK')
)
),
//"COMPANY_ID" => $companyId, раньше только к одной можно было привязать
"COMPANY_IDS"=>array(1,2,3), //массив id компаний, сейчас можно так
"ASSIGNED_BY_ID" => $manager,//id ответственного менеджера
);
//создаем контакт
$oContact = new \CCrmContact(false);
$oContact->add($arFields);
if($oContact->LAST_ERROR != ""){
//не создался контакт
}
|
обновить контакт
$arFields = array(
"NAME" => "Имя",
"LAST_NAME"=> "Фамилия"
);
$oContact = new CCrmContact(false);
$oContact->Update($contactId,$arFields); |
получить контактов по компании и отвязать их от компании
$arDelete = array();
$res = CCrmContact::GetContactByCompanyId($companyId);
while ($ar = $res->Fetch()) {
$arDelete[] = $ar['ID'];
}
$CCrmContact = new CCrmContact();
$CCrmContact->UpdateCompanyId($arDelete, 0); |
Еще вариант получить контактов по компании
$contactIDs = \Bitrix\Crm\Binding\ContactCompanyTable::getCompanyContactIDs($companyId); |
Получить телефон, факс, email рабочий или личный Контакта или компании
$dbCont = CCrmFieldMulti::GetList(
array('ID' => 'asc'), //сортировка
array(
'ELEMENT_ID' => $contactId
'ENTITY_ID' => "COMPANY", //"CONTACT","LEAD","DEAL"
'TYPE_ID' => "PHONE" //"EMAIL",
) //фильтр
);
while($arCont = $dbCont->Fetch()){
//$arCont["VALUE"] там значение
}
|
добавить телефон (факс и пр)
$fieldMulti = new CCrmFieldMulti();
$fieldMulti->Add([
'ELEMENT_ID' => $companyId,
'ENTITY_ID' => "COMPANY", //"CONTACT","LEAD","DEAL"
'TYPE_ID' => "PHONE", //"EMAIL",
'VALUE' => $tel,
'VALUE_TYPE' => 'WORK',
]); |
15.04.202402:2415.04.2024 02:24:23
Если блог был полезным, можете угостить меня "чашечкой кофе" :)
Сбер по номеру телефона +7 (953) 585-13-09 Вероника.
Спасибо!