+7 495 008 8452 пн.-пт. 10:00 – 17:00
Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.


Немного про CRM API

Как вы знаете Документации по API CRM в корпоративном портале довольно мало, так что немного про нее.

1) Если нет документации - это не повод впадать в панику. Идем читать ядро. API расположено в модуле crm /bitrix/modules/crm/classes/general/.
2) Дальше ищем название нужной сущности. Если работаете с контактами значит нам нужен файл crm_contact.php, со сделками - crm_deal.php, компаниями - crm_company.php. В этих файлах берем названия классов, а методы обычно стандартные - GetList(), Add(), Update(). Но есть и специфические для отдельных сущностей, с ними бывает тяжелее.
3) Также в помощь идут компоненты compоnent.php. Если вам надо добавить сущность crm КОНТАКТ - то не лишним будет глянуть например компоненту crm.contact.edit.

Ну и немного практики. Создадим в CRM "контакт" с ответственным менеджером и "компанию" для контакта.


CModule::IncludeModule('crm');

//массив полей контакта
 $arFields = array(
    "NAME" => "Иван",
    "LAST_NAME" => "Иванов",
    "ADDRESS" => "Пролетарская, 8",
    "BIRTHDATE" => '17.05.1987',
    //должность
    "POST" => "Директор",
    //открыто для других пользователей
    "OPENED" => "N",
    //учавствует в экспорте
    "EXPORT" => "Y",
    //так хитро заполняются имейл, телефон
    'FM' => array(
         'EMAIL' => array(
                    'n0' => array('VALUE' => "gogy@mail.ru", 'VALUE_TYPE' => 'WORK')
                ),
                'PHONE' => array(
                    'n0' => array('VALUE' => "100500", 'VALUE_TYPE' => 'WORK')
                ) 
            ),
    //id ответственного менеджера 
    "ASSIGNED_BY_ID" => "1",
);

//создаем контакт
$oContact = new CAllCrmContact();
$iContactID = $oContact->Add($arFields);
Описания полей нигде нет. В форме CRM удобно через firebug смотреть названия полей для редактирования, обычно они совпадают с ключами в $arFields.

Теперь создадим компанию и привяжем ее к контакту.
$arFieldsComp = array(
            'TITLE' => "МММ",
            //здесь привязываем к компании контакт (обязательно с array())
            'CONTACT_ID' => array($iContactID),
);

$CCrmCompany = new CCrmCompany();
$companyId = $CCrmCompany->Add($arFieldsComp);

//а так например, у контакта меняется компания
$CCrmContact = new CCrmContact();
$CCrmContact->UpdateCompanyId(array($iContactID), $companyId);
Ну и конечно, ждем официальной документации. Удачи всем.

Назад в раздел

Подписаться на новые материалы раздела:














CAPTCHA