Учет расходов по сделкам в CRM
 
Учет расходов по сделкам в CRM
14.06.2016 09:39:48
Модули
1578
Частые вопросы наших коллег и клиентов: как учитывать затраты по проектам? Как вести список расходов по сделкам? Расскажем подробно, как это можно сделать с помощь разработанных нами модулей.
 Мы предлагаем воспользоваться связкой модулей:
1) CRM и списки
2) Добавление типов свойств CRM - Контакт, Компания, Лид

Первый модуль позволяет показывать в отдельных вкладках элементов CRM привязанные к ним элементы выбранного списка. Второй же расширяет состав полей списка полями для привязки к сущностям CRM (контактам, компаниям, лидам и сделкам).

Сейчас мы посмотрим, как это работает. Перед настройкой установите оба указанных выше модуля на свой портал.

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

Рис. 1. Перечень полей списка расходов с выделенными обязательными полями для расчета рентабельности
Перечень полей списка расходов

Затем настроим новую вкладку на странице сделки - назовем ее Расходы, а заголовок ей дадим expences. Этот заголовок потребуется нам позже для настройки нашего модуля показа списка.

Рис. 2a,b,c. Настройка новой вкладки
2a
Настройка вкладки

 2b     2с
Настройка формы  
Настройка формы  


  Теперь откроем страницу любой сделки в редакторе (при помощи кнопки "Изменить страницу") и добавим на страницу модуль из раздела Эм Си Арт "CRM и списки".
В настройках модуля необходимо указать:
1) перечень полей списка, которые будут выводиться на вкладке (ВАЖНО! Поле, содержащее сумму сделки, должно быть обязательно выбрано в списке показываемых. Если вы не хотите показывать его пользователю, его можно скрыть настройкой столбцов таблицы списка)
2) поле, которое содержит сумму конкретного расхода
3) поле, содержащее сумму указанной для расхода сделки
4) поставить галочку "Считать рентабельность"
5) указать заголовок вкладки, на которой должен показываться список. Указываем здесь expences.

Рис. 3a,b,c,d. Настройка модуля CRM и списки на странице сделки
3a
Настройка модуля CRM и списки

3b
Настройка модуля CRM и списки

3c
Настройка модуля CRM и списки

3d
Настройка модуля CRM и списки

Теперь нам осталось сделать небольшой бизнес-процесс, который будет запускаться при создании и изменении элемента списка расходов и записывать в поле сумму указанной сделки. В бизнес-процессе будет две переменных: в одну мы в самом начале сохраняем id сделки, указанной в элементе списка, а в другую мы сохраним сумму этой сделки при помощи кода PHP и затем вставим эту сумму в сам элемент списка.

Рис. 4a,b,c,d. Схема БП и его отдельные блоки

4a
Схема БП
4b
Настройка БП


Настройка БП

4d
Настройка БП

Код для выяснения суммы нужной нам сделки:

$rootActivity = $this->GetRootActivity();
$did = $rootActivity->GetVariable("deal_id");
if (CModule::IncludeModule('crm'))
{
$deal_id = $did;
$obFields = CCrmDeal::GetListEx(
array(),
array(
'ID' => $deal_id
)
);
$arFields = $obFields->GetNext();
$summ = $arFields['OPPORTUNITY_ACCOUNT'];
}
$rootActivity->SetVariable("summ",$summ);

Все готово.
Проверим работу: добавим несколько расходов по сделке и посмотрим, какова рентабельность сделки. Рентабельность рассчитывается по формуле 100% - (сумма расходов) / сумму сделки

Рис. 5a,b. Готовый список в сделке с рентабельностью
5a
Список с рентабельностью

5b
Список с рентабельностью
Загрузка...