Commit c5c8735b authored by Kristina Markova's avatar Kristina Markova

CRM metodologist manual: +v1.5

parent c522a58b
......@@ -127,6 +127,16 @@
| Адрес приложения | [URL](http://tdd.lan.arta.kz/docs/cases/crm/additional/html/crm_without_data.html)/crm/deal |
+--------------------------------------------------------+---------------------------------------------------------------------------------------------+
#### Управление продажами (для ОП) {#sales_OS}
+--------------------------------+-----------------------------------------------------------------------------------------------+
| Свойство | Значение |
+================================+===============================================================================================+
| Код | crm_ext3DealOS |
+--------------------------------+-----------------------------------------------------------------------------------------------+
| Адрес приложения | [URL](http://tdd.lan.arta.kz/docs/cases/crm/additional/html/crm_without_data.html)/crm/dealOS |
+--------------------------------+-----------------------------------------------------------------------------------------------+
<#include "crm_consist/user_components.md">
<#include "crm_consist/reminder.md">
......
......@@ -60,7 +60,7 @@ API.
- `r-crm-registry_lead` - индекс данных реестра ["Лиды"](#registryLead);
- `r-crm_registry_deals_plans_custom` - служебный индекс данных реестра ["План продаж"](#registrySalesCost);
- `r-crm_registry_deals_plans_custom` - служебный индекс данных реестра ["План продаж"](#registrySalesCost) (по подразделениям и пользователям);
- `r-crm_registry_deals*` - шаблон, объединяющий данные реестра ["Сделки"](#registryDeal)
и служебный индекс `r-crm_registry_deals_plans_custom`.
......@@ -70,22 +70,72 @@ API.
создании записей в реестре ["План продаж"](#registrySalesCost). Остальные
индексы включены в типовую конфигурацию.
### Боковая панель фильтрации {#dashboards_side_panel}
Все дашборды содержат боковую панель, которая содержит фильтр "Подразделения".
По умолчанию фильтр заполнен подразделением текущего пользователя, и дашборд
отображает только те данные, которые доступны подразделению пользователя.
Пользователю доступны для выбора:
* подразделение, к котрому непосредственно относится пользователь;
* все дочерние подразделения того, к которому относится пользователь.
При выборе нескольких подразделений результатом фильтрации являются записи,
в которых в качестве ответственного или разрешенного подразделения указано
хотя бы одно из выбранных подразделений.
Условия, формируемые фильтром, пересекаются (логическое "И") с другими существующими
условиями дашбордов, которые были как добавлены вручную, так и сформированы при
"проваливании" в отдельных диаграммах.
Для каждого дашборда фильтр "Подразделения" формирует свой набор условий
отображения данных.
Настройка фильтра "Подразделение" осуществляется в компоненте `crm_form_funnel_deps`
на служебных формах внешних модулей:
- `crm_form_funnel` - модуль ["Управление маркетингом"](#marketing)
- `crm_form_funnel_deal` - модуль ["Управление продажами"](#sales)
- `crm_form_funnel_deal_os` - модуль ["Управление продажами (ОП)"](#sales_OS)
### Управление маркетингом {#dashboards_marketing}
Отображаются записи реестров "Лиды", "Аккаунты" и "Маркетинговые мероприятия", в которых
поле "Все доступные" `crm_all_accessible` содержат подразделение, указанное в фильтре
"Подразделения".
**Общие настройки дашборда:**
- период обновления: 30 секунд
- источник данных для публикации: `Embedded iframe`
- общее условие на отображаемые данные: `NOT crm_all_accessible_key_sort: ""`
- опубликован в пользовательском компоненте `crm_component_leads_dashboard`,
где в параметрах размера фрейма указано `100%` для высоты и ширины.
**Фильтр "Подразделения":**
- доступен мультивыбор;
- условие, формируемое фильтром для выбранных подразделений с идентификаторами
`uuid1, uuid2, ..., uuidN`:
> `(crm_all_accessible_key_sort: "<uuid1>" || crm_all_accessible_key_sort: "<uuid2>" || ... || crm_all_accessible_key_sort: "<uuidN>")`
> При удалении тэга подразделения с идентификатором `uuidN` из фильтра соответствующее ему
условие `crm_all_accessible_key_sort: "<uuidN>"` также удаляется из условия дашборда.
Дашборд "Аналитика" в модуле "Управление маркетингом" состоит из диаграмм:
1. **Количество аккаунтов**
Отображает одно число - общее количество неудаленных записей в реестре
> Отображает одно число - общее количество неудаленных записей в реестре
["Аккаунты"](#registryAccount).
> - тип диаграммы: Metric
......@@ -100,7 +150,7 @@ API.
2. **Количество лидов**
Отображает одно число - общее количество неудаленных записей в реестре
> Отображает одно число - общее количество неудаленных записей в реестре
["Лиды"](#registryLead).
> - тип диаграммы: `Metric`
......@@ -115,7 +165,7 @@ API.
3. **Средний предполагаемый чек по лидам**
Отображает одно число: среднее значение поля "Потенциальный бюджет" по
> Отображает одно число: среднее значение поля "Потенциальный бюджет" по
всем неудаленных записях реестра ["Лиды"](#registryLead).
> - тип диаграммы: `Metric`
......@@ -132,7 +182,7 @@ API.
4. **Маркетинговые мероприятия**
Отображает список неудаленных записей реестра ["Маркетинговые мероприятия"](#registryEvent)
> Отображает список неудаленных записей реестра ["Маркетинговые мероприятия"](#registryEvent)
с детализацией по дате создания, наименованию мероприятия, бюджету,
целевому и текущему отклику, а также оценке эффективности мероприятия.
......@@ -240,20 +290,38 @@ API.
### Управление продажами {#dashboards_sales}
Отображаются записи реестров "Сделки" и "Счет-фактуры", в которых поле "Все доступные"
`crm_all_accessible` содержат подразделение, указанное в фильтре "Подразделения".
**Общие настройки дашборда:**
- период обновления: 30 секунд
- источник данных для публикации: `Embedded iframe`
- условие на отображаемые данные: `deleted:0 && NOT crm_all_accessible_key_sort: ""`
- опубликован в пользовательском компоненте `crm_component_deals_dashboard`,
где в параметрах размера фрейма указано `100%` для высоты и ширины.
**Фильтр "Подразделения":**
- мультивыбор по умолчанию не доступен, но может быть включен разработчиком
Synergy (методологом) в компоненте `crm_form_funnel_deps` на форме `crm_form_funnel_deal`.
- условие, формируемое фильтром для выбранных подразделений с идентификаторами
`uuid1, ..., uuidN`:
> `(crm_all_accessible_key_sort: "<uuid1>" || crm_all_accessible_key_sort: "<uuid2>" || ... crm_all_accessible_key_sort: "<uuidN>")`
> При удалении тэга подразделения с идентификатором `uuidN` из фильтра соответствующее ему
условие `crm_all_accessible_key_sort: "<uuidN>"` также удаляется из условия дашборда.
Дашборд "Аналитика" в модуле "Управление продажами" состоит из диаграмм:
1. **Топ прайс-листа**
Отображает 10 наиболее продаваемых позиций реестра [Каталог товаров и услуг](#registryItems) -
> Отображает 10 наиболее продаваемых позиций реестра [Каталог товаров и услуг](#registryItems) -
наименование и количество проданных товаров, указанных в записях реестра
[Счет-фактуры](#registryInvoices).
......@@ -262,7 +330,7 @@ API.
> - шаблон индекса: `r-crm_registry_invoices`
> - условие на отображаемые данные:
`deleted:0 NOT crm_form_deal_order_orderList_value_sort:""`
`deleted:0 && NOT crm_form_deal_order_orderList_value_sort:""`
> Параметры агрегации:
......@@ -294,7 +362,7 @@ API.
2. **Среднее время прохождения сделками статусов**
Отображает среднее время прохождения сделками каждого из статусов (в днях)
> Отображает среднее время прохождения сделками каждого из статусов (в днях)
на основании записей рееестра [Сделки](#registryDeal).
> **Примечание:**
......@@ -306,7 +374,7 @@ API.
> - шаблон индекса: `deals_status_history`
> - условие на отображаемые данные: `deleted:0`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 1`
> Параметры агрегации:
......@@ -344,14 +412,14 @@ API.
3. **Количество сделок по статусам**
Отображает общее количество сделок в каждом из статусов (при их наличии)
> Отображает общее количество сделок в каждом из статусов (при их наличии)
на основании записей рееестра [Сделки](#registryDeal).
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals`
> - условие на отображаемые данные: `deleted:0`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 1`
> Параметры агрегации:
......@@ -399,7 +467,7 @@ API.
3. **Количество сделок с отказом**
Отображает общее количество сделок, перешедших в негативный статус
> Отображает общее количество сделок, перешедших в негативный статус
(`crm_dict_dealStatus_quality=0` справочника [Статусы сделки](#dictionaryDealStatus)),
с указанием их предыдущего положительного статуса.
......@@ -407,7 +475,7 @@ API.
> - шаблон индекса: `r-crm_registry_deals`
> - условие на отображаемые данные: `deleted:0 NOT crm_form_deal_refused_key_double:0`
> - условие на отображаемые данные: `deleted:0 NOT crm_form_deal_refused_key_double:0 && isUser_key_double: 1`
> Параметры агрегации:
......@@ -457,7 +525,7 @@ API.
4. **Количество просроченных сделок по статусам**
Отображает количество сделок, не сменивших статус за время, указанное
> Отображает количество сделок, не сменивших статус за время, указанное
в документе по форме ["Нормативы продолжительности статусов сделки"](#formDealFlowStandard)
для соответствующего статуса. Диаграмма не содержит статусов, которые
не являются предыдущими для сделок - записей в реестре [Сделки](#registryDeal).
......@@ -466,7 +534,7 @@ API.
> - шаблон индекса: `r-crm_registry_deals`
> - условие на отображаемые данные: `deleted:0 NOT crm_form_deal_expired_key_double:0`
> - условие на отображаемые данные: `deleted:0 NOT crm_form_deal_expired_key_double:0 && isUser_key_double: 1`
> Параметры агрегации:
......@@ -517,7 +585,7 @@ API.
5. **Список сделок**
Отображает список всех неудаленных записей реестра [Сделки](#registryDeal)
> Отображает список всех неудаленных записей реестра [Сделки](#registryDeal)
с детализацией по лидам, темам сотрудничества, статусам, ответственным менеджерам,
причинам отказа от сделки (если она указана), а также с указанием стоимости
сделки.
......@@ -526,7 +594,7 @@ API.
> - шаблон индекса: `r-crm_registry_deals`
> - условие на отображаемые данные: `deleted:0`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 1`
> Параметры агрегации:
......@@ -616,34 +684,122 @@ API.
### Продуктивность {#dashboards_productivity}
Отображаются записи реестров "Сделки" и "План продаж", в которых одно из полей:
- "Все доступные" `crm_all_accessible`
- "Подразделение" `crm_form_deal_sales_pkN`
содержит подразделение, указанное в фильтре "Подразделения". При этом отображаются
только плановые показатели, поставленные для подразделений, без учета планов для
пользователей.
**Общие настройки дашборда:**
- период обновления: 30 секунд
- источник данных для публикации: `Embedded iframe`
- условие на отображаемые данные: `deleted:0 && isUser_key_double:0`
- опубликован в пользовательском компоненте `crm_component_deals_productivity`,
где в параметрах размера фрейма указано `100%` для высоты и ширины.
**Фильтр "Подразделения":**
- мультивыбор по умолчанию не доступен, но может быть включен разработчиком
Synergy (методологом) в компоненте `crm_form_funnel_deps` на форме `crm_form_funnel_deal`.
- условие, формируемое фильтром для выбранных подразделений с идентификаторами
`uuid1, ..., uuidN`:
> `(crm_all_accessible_key_sort: "<uuid1>" || crm_form_deal_sales_pk1_key_sort: "<uuid1>" || ... || crm_all_accessible_key_sort: "<uuidN>" || crm_form_deal_sales_pk1_key_sort: "<uuidN>")`
> При удалении тэга подразделения с идентификатором `uuidN` из фильтра соответствующее ему
условие `crm_all_accessible_key_sort: "<uuidN>" || crm_form_deal_sales_pk1_key_sort: "<uuidN>"`
также удаляется из условия дашборда.
>> **Примечание:**
>> Если во внешнем модуле "Управление продажами" для фильтра "Подразделения"
`crm_form_funnel_deps` был включен мультивыбор, то показатели плановых значений стоимости
продаж в диаграммах "Исполнение плана" и "Исполнение плана по темам сотрудничества"
будут суммироваться для **всех** выбранных подразделений.
***Пример поведения дашборда при включенном мультивыборе:***
*Предварительные условия:*
1. Настроена оргструктура:
* Организация
* Отдел маркетинга
* Отдел маркетинга по Алматы
* Отдел маркетинга по Астане
* Отдел продаж
* Отдел продаж по Алматы
* Отдел продаж по Астане
2. Пользователь является сотрудником подразделения "Отдел продаж".
3. В реестре "План продаж" созданы записи (столбцы в таблице не соответствуют
[настроенным столбцам](http://tdd.lan.arta.kz/docs/cases/crm/spec/html/sec.crm_conf_consist.html#registrySalesCost)
реестра и приведены для наглядности примера):
+------------------+---------------------------------+---------------------------+
| **Автор** | **Ответственное подразделение** | **Суммарный план продаж** |
+==================+=================================+===========================+
| Организация | Отдел продаж | 1 000 000 |
+------------------+---------------------------------+---------------------------+
| Отдел продаж | Отдел продаж Астана | 600 000 |
+------------------+---------------------------------+---------------------------+
| Отдел продаж | Отдел продаж Алматы | 600 000 |
+------------------+---------------------------------+---------------------------+
4. В дашборде "Продуктивность" в фильтре "Подразделения" выбраны все доступные
пользователю подразделения:
1. Отдел продаж
2. Отдел продаж Алматы
3. Отдел продаж Астана
*Результат:* на диаграмме "Исполнение плана продаж" метрика "План продаж" отображает
число `2 200 000`, метрика "% исполнения плана" рассчитана как процент от этого числа.
>> Описанное поведение **не является ошибкой Synergy**, но может быть использовано специально
для просмотра продуктивности по всем подчиненным подразделениям. Для того, чтобы план
продаж был вычислен корректно, достаточно из фильтра "Подразделения" удалить тэг
текущего подразделения пользователя и оставить там только тэги непосредственных
дочерних подразделений.
Дашборд "Продуктивность" в модуле "Управление продажами" состоит из диаграмм:
1. **Отделения**
Отображает список подразделений организации. Диаграмма не содержит подразделений,
> Отображает список подразделений организации. Диаграмма не содержит подразделений,
для которых не было указано ни одного планового показателя стоимости в реестре
[План продаж](#registrySalesCost).
[План продаж](#registrySalesCost), а также тех, в которых поле "Пользователь"
не пусто.
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals_plans_custom`
> - условие на отображаемые данные: `deleted:0`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 0`
> Параметры агрегации:
>> Числовые (`metrics`):
>> *Количество:*
>> *Средняя плановая стоимость продаж:*
>> - тип агрегации: `Average`
......@@ -671,11 +827,11 @@ API.
> Опции диаграммы:
>> количество записей на страницу: 5
>> количество записей на страницу: 10
2. **Месяцы**
Отображает список месяцев согласно справочнику [Месяцы](#dictionaryMonths).
> Отображает список месяцев согласно справочнику [Месяцы](#dictionaryMonths).
Диаграмма не содержит месяцев, в которые ни одна сделка не перешла в
положительный конечный статус (`crm_dict_dealStatus_end=1`), согласно
записям реестра [Сделки](#registryDeal).
......@@ -684,13 +840,13 @@ API.
> - шаблон индекса: `r-crm_registry_deals_plans_custom`
> - условие на отображаемые данные: `deleted:0`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 0`
> Параметры агрегации:
>> Числовые (`metrics`):
>> *Количество:*
>> *Средняя плановая стоимость продаж:*
>> - тип агрегации: `Average`
......@@ -700,13 +856,13 @@ API.
>> Групповые агрегации (поля таблицы, `buckets`):
>>> *Отделение:*
>>> *Месяц:*
>>> - тип разделения: `Split Rows`
>>> - тип агрегации: `Terms`
>>> - поле агрегации: `crm_form_deal_sales_pk1_value_sort`
>>> - поле агрегации: `crm_form_deal_order_sales_month_value_sort`
>>> - способ сортировки: `Term`
......@@ -722,15 +878,15 @@ API.
3. **Исполнение плана**
Отображает три числа:
> Отображает три числа:
- суммарное значение вмех плановых показателей по стоимости продаж;
> - суммарное значение всех плановых показателей по стоимости продаж;
- суммарное значение бюджета всех закрытых сделок;
> - суммарное значение бюджета всех закрытых сделок;
- процент исполнения плана продаж, рассчитываемый таким образом:
> - процент исполнения плана продаж, рассчитываемый таким образом:
> %факт_продаж% / %план_продаж% * 100%
>> %факт_продаж% / %план_продаж% * 100%
>>> **Примечание 1:**
......@@ -749,7 +905,7 @@ Synergy.
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double: 0`
> Параметры агрегации:
......@@ -780,7 +936,7 @@ Synergy.
>>> - `toLocaleString()` - формат отображения числа, при котором в
качестве разделителя тысяч используется пробел;
>>> - `.toFixed(2)` - округление числа до второго знака после запятой
>>> - `toFixed(2)` - округление числа до второго знака после запятой
(до сотых).
>> *План продаж:*
......@@ -803,18 +959,18 @@ Synergy.
4. **Исполнение плана по темам сотрудничества**
Отображает суммарные значения плана продаж, сумму потенциального
> Отображает суммарные значения плана продаж, сумму потенциального
бюджета по всем сделкам, перешедшим в положительный конечный статус
(`crm_dict_dealStatus_end=1`), в разрезе [тем сотрудничества]((#registryThemes)).
В диаграмму включаются только те темы сотрудничества, для которых
был указан хотя бы один плановый показатель в реестре
[План продаж](#registrySalesCost).
[План продаж](#registrySalesCost) при заполненном поле "Подразделение".
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double:0`
> Параметры агрегации:
......@@ -864,7 +1020,382 @@ Synergy.
5. **Исполнение плана по темам (гистрограмма)**
Отображает показатели плана и факта продаж в разрезе тем сотрудничества
> Отображает показатели плана и факта продаж в разрезе тем сотрудничества
в виде гистограммы (столбиковой диаграммы, Bar chart). Диаграмма представляет
собой визуализацию данных в таблице **Исполнение плана по темам сотрудничества**.
> - тип диаграммы: `Vertical bar chart`
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double:0`
> Параметры агрегации:
>> Числовые (`metrics`, ось Y):
>>> *План продаж*
>>> - тип агрегации: `Sum`
>>> - поле агрегации: `plan_key_double`
>>> - отображаемое название параметра: "План продаж"
>>> *Факт продаж*
>>> - тип агрегации: `Sum`
>>> - поле агрегации: `crm_form_deal_main3_budget_key_double`
>>> - отображаемое название параметра: "Факт продаж"
>> Групповые агрегации (`buckets`, ось X):
>>> *Тема сотрудничества:*
>>> - тип разделения: `Split Rows`
>>> - тип агрегации: `Terms`
>>> - поле агрегации: `crm_form_deal_main2_theme_value_sort`
>>> - способ сортировки: `metric: План продаж`
>>> - направление сортировки: `Descending`
>>> - количество отображаемых результатов: 30
>>> - отображаемое название параметра: "Тема сотрудничества"
> Опции диаграммы:
>> раположение столбцов: сгруппированное.
### Продуктивность (сотрудники) {#dashboards_productivity_OS}
Отображаются записи реестров "Сделки" и "План продаж", в которых поле "Владелец"
`crm_owner` содержит подразделение, указанное в фильтре "Подразделения". При этом
отображаются только плановые показатели, поставленные для пользователей, без учета
планов для подразделений.
**Общие настройки дашборда:**
- период обновления: 30 секунд
- источник данных для публикации: `Embedded iframe`
- условие на отображаемые данные: `deleted:0 && isUser_key_double:1`
- опубликован в пользовательском компоненте `crm_component_deals_os_productivity`,
где в параметрах размера фрейма указано `100%` для высоты и ширины.
**Фильтр "Подразделения":**
- мультивыбор по умолчанию не доступен, но может быть включен разработчиком
Synergy (методологом) в компоненте `crm_form_funnel_deps` на форме `crm_form_funnel_deal_os`.
- условие, формируемое фильтром для выбранных подразделений с идентификаторами
`uuid1, ..., uuidN`:
> `crm_owner_key_sort: "<uuid1>" || crm_owner_key_sort: "<uuid2>" || ... || crm_owner_key_sort: "<uuidN>"`
> При удалении тэга подразделения с идентификатором `uuidN` из фильтра соответствующее ему
условие `crm_owner_key_sort: "<uuidN>"` также удаляется из условия дашборда.
Дашборд "Продуктивность" (сотрудники) в модуле "Управление продажами (ОП)" состоит из диаграмм:
1. **Сотрудники**
> Отображает список сотрудников подразделения. Диаграмма не содержит пользователей,
для которых не было указано ни одного планового показателя стоимости в реестре
[План продаж](#registrySalesCost), а также данных из записей, в которых поле "Пользователь" пусто.
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals_plans_custom`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 1`
> Параметры агрегации:
>> Числовые (`metrics`):
>> *Средняя плановая стоимость продаж:*
>> - тип агрегации: `Average`
>> - поле агрегации: `plan_key_double`
>> - отображаемое название параметра: "Средняя плановая стоимость продаж"
>> Групповые агрегации (поля таблицы, `buckets`):
>>> *Сотрудник:*
>>> - тип разделения: `Split Rows`
>>> - тип агрегации: `Terms`
>>> - поле агрегации: `crm_form_deal_responsibleManager_responsible_value_sort`
>>> - способ сортировки: `Term`
>>> - направление сортировки: `Descending`
>>> - количество отображаемых результатов: 30
>>> - отображаемое название параметра: "Сотрудник"
> Опции диаграммы:
>> количество записей на страницу: 10
2. **Месяцы**
> Отображает список месяцев согласно справочнику [Месяцы](#dictionaryMonths).
Диаграмма не содержит месяцев, в которые ни одна сделка не перешла в
положительный конечный статус (`crm_dict_dealStatus_end=1`), согласно
записям реестра [Сделки](#registryDeal).
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals_plans_custom`
> - условие на отображаемые данные: `deleted:0 && isUser_key_double: 1`
> Параметры агрегации:
>> Числовые (`metrics`):
>> *Средняя плановая стоимость продаж:*
>> - тип агрегации: `Average`
>> - поле агрегации: `plan_key_double`
>> - отображаемое название параметра: "Средняя плановая стоимость продаж"
>> Групповые агрегации (поля таблицы, `buckets`):
>>> *Месяц:*
>>> - тип разделения: `Split Rows`
>>> - тип агрегации: `Terms`
>>> - поле агрегации: `crm_form_deal_order_sales_month_value_sort`
>>> - способ сортировки: `Term`
>>> - направление сортировки: `Descending`
>>> - количество отображаемых результатов: 12
>>> - отображаемое название параметра: "Месяц"
> Опции диаграммы:
>> количество записей на страницу: 6
3. **Исполнение плана (сотрудники)**
> Отображает три числа:
> - суммарное значение всех плановых показателей по стоимости продаж;
> - суммарное значение бюджета всех закрытых сделок;
> - процент исполнения плана продаж, рассчитываемый таким образом:
>> %факт_продаж% / %план_продаж% * 100%
>>> **Примечание 1:**
>>> В диаграмме для подсчета факта продаж учитываются только сделки,
перешедшие в положительный конечный статус (`crm_dict_dealStatus_end=1`),
согласно записям реестра [Сделки](#registryDeal).
>>> **Примечание 2:**
>>> Для построения диаграммы используется специфический тип визуализации -
`Extended metric`. Он не включается в основной инструментарий Kibana, но
устанавливается автоматически при установке пакета kibana из репозитория
Synergy.
> - тип диаграммы: `Extended metric`
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double: 1`
> Параметры агрегации:
>> *Суммарное значение плана продаж:*
>> - тип агрегации: `Sum`
>> - поле агрегации: `plan_key_double`
>> - используемое название параметра: `sum_cost`
> *Суммарное значение фактических продаж:*
>> - тип агрегации: `Sum`
>> - поле агрегации: `crm_form_deal_main3_budget_key_double`
>> - используемое название параметра: `sum_budget`
> Вычисляемые параметры (вкладка `Options`):
>>> **Примечание 3:**
>>> Во всех полях `Formula` используется синтаксис языка JavaScript.
Помимо непосредственного вычисления процента исполнения плана продаж,
дополнительно используются функции:
>>> - `toLocaleString()` - формат отображения числа, при котором в
качестве разделителя тысяч используется пробел;
>>> - `toFixed(2)` - округление числа до второго знака после запятой
(до сотых).
>> *План продаж:*
>> - формула: `(metrics['sum_cost'].value).toLocaleString()`
>> - отображаемое название параметра: "План продаж"
>> *Факт продаж:*
>> - формула: `(metrics['sum_budget'].value).toLocaleString()`
>> - отображаемое название параметра: "Факт продаж"
>> *Процент исполнения плана продаж:*
>> - формула: `(((metrics['sum_budget'].value / metrics['sum_cost'].value)) *100).toFixed(2)`
>> - отображаемое название параметра: "% исполнения плана продаж"
4. **Исполнение плана по темам (сотрудники)**
> Отображает суммарные значения плана продаж, сумму потенциального
бюджета по всем сделкам, перешедшим в положительный конечный статус
(`crm_dict_dealStatus_end=1`), в разрезе [тем сотрудничества]((#registryThemes)).
В диаграмму включаются только те темы сотрудничества, для которых
был указан хотя бы один плановый показатель в реестре
[План продаж](#registrySalesCost) при заполненном поле "Пользователь".
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double:1`
> Параметры агрегации:
>> Числовые (`metrics`):
>>> *План продаж*
>>> - тип агрегации: `Sum`
>>> - поле агрегации: `plan_key_double`
>>> - отображаемое название параметра: "План продаж"
>>> *Факт продаж*
>>> - тип агрегации: `Sum`
>>> - поле агрегации: `crm_form_deal_main3_budget_key_double`
>>> - отображаемое название параметра: "Факт продаж"
>> Групповые агрегации (поля таблицы, `buckets`):
>>> *Тема сотрудничества:*
>>> - тип разделения: `Split Rows`
>>> - тип агрегации: `Terms`
>>> - поле агрегации: `crm_form_deal_main2_theme_value_sort`
>>> - способ сортировки: `metric: План продаж`
>>> - направление сортировки: `Descending`
>>> - количество отображаемых результатов: 30
>>> - отображаемое название параметра: "Тема сотрудничества"
> Опции диаграммы:
>> количество записей на страницу: 10
5. **Исполнение плана по сотрудникам**
> Отображает суммарные значения плана продаж, сумму потенциального
бюджета по всем сделкам, перешедшим в положительный конечный статус
(`crm_dict_dealStatus_end=1`), в разрезе ответственных менеджеров.
В диаграмму включаются только те сотрудники, для которых
был указан хотя бы один плановый показатель в реестре
[План продаж](#registrySalesCost) при заполненном поле "Пользователь".
> - тип диаграммы: `Data table`
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double:1`
> Параметры агрегации:
>> Числовые (`metrics`):
>>> *План продаж*
>>> - тип агрегации: `Sum`
>>> - поле агрегации: `plan_key_double`
>>> - отображаемое название параметра: "План продаж"
>>> *Факт продаж*
>>> - тип агрегации: `Sum`
>>> - поле агрегации: `crm_form_deal_main3_budget_key_double`
>>> - отображаемое название параметра: "Факт продаж"
>> Групповые агрегации (поля таблицы, `buckets`):
>>> *Сотрудник:*
>>> - тип разделения: `Split Rows`
>>> - тип агрегации: `Terms`
>>> - поле агрегации: `crm_form_deal_responsibleManager_responsible_value_sort`
>>> - способ сортировки: `metric: План продаж`
>>> - направление сортировки: `Descending`
>>> - количество отображаемых результатов: 30
>>> - отображаемое название параметра: "Сотрудник"
> Опции диаграммы:
>> количество записей на страницу: 10
6. **Исполнение плана по темам (гистрограмма)**
> Отображает показатели плана и факта продаж в разрезе тем сотрудничества
в виде гистограммы (столбиковой диаграммы, Bar chart). Диаграмма представляет
собой визуализацию данных в таблице **Исполнение плана по темам сотрудничества**.
......@@ -872,7 +1403,7 @@ Synergy.
> - шаблон индекса: `r-crm_registry_deals*`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1`
> - условие на отображаемые данные: `deleted:0 && crm_form_deal_end_key_double:1 && isUser_key_double:1`
> Параметры агрегации:
......@@ -914,6 +1445,6 @@ Synergy.
> Опции диаграммы:
>> раположение столбцов: сгруппированное
>> раположение столбцов: сгруппированное.
......@@ -283,6 +283,8 @@
+--------------------------------------------------------+---------------------------------------------------------------+--------------------------------------------------------+
| **Конечный положительный статус** | числовое поле | crm_form_deal_end |
+--------------------------------------------------------+---------------------------------------------------------------+--------------------------------------------------------+
| **isUser** | выбор вариантов | isUser |
+--------------------------------------------------------+---------------------------------------------------------------+--------------------------------------------------------+
*Поле "Лид"*:
......@@ -399,6 +401,14 @@
* Компонент скрыт.
*Поле "isUser":*
* Поле имеет два варианта: `1` и `0`.
* По умолчанию выбраны оба варианта.
* Поле скрыто.
При выборе записи реестра в поле `crm_form_deal_order_orderList`
динамической таблицы `crm_form_deal_order` заполняются поля в той
же строке таблицы:
......@@ -429,7 +439,6 @@
* `crm_form_deal_main_contactConnection` - из компонента
`crm_form_lead_main_contactConnection`.
*Поле "Переход в негативный статус"*:
* Поле не может быть пустым.
......@@ -1620,6 +1629,8 @@
| **Подразделение создающего** | компонент выбора подразделений | crm_owner |
| **пользователя** | | |
+----------------------------------+---------------------------------------------------+--------------------------------------------------------+
| **UUID корневой организации** | однострочное поле | crm_all_accessible |
+----------------------------------+---------------------------------------------------+--------------------------------------------------------+
| **План продаж** | динамическая таблица | crm_form_deal_main2_theme_sales |
+----------------------------------+---------------------------------------------------+--------------------------------------------------------+
| Отделение | компонент выбора подразделений | crm_form_deal_sales_pk1 |
......@@ -1718,6 +1729,12 @@
* Включены флаги "Заполнять создающим пользователем" и "Заполнять
департаментом создающего пользователя".
*Поле "UUID корневой организации":*
* Поле скрыто.
* Поле содержит значение по умолчанию `1`.
*Динамическая таблица "План продаж":*
* Флаг "Отобразить границы" включен.
......
......@@ -4,7 +4,8 @@
[Сделка](#formDeal).
Имеется возможность удалить столбец, содержащий поля "Тема сотрудничества"
(crm_form_deal_main2_theme_cN) и "План продаж" (crm_form_deal_main2_theme_pvalue_cN)
(crm_form_deal_main2_theme_cN), "Целевое значение" (crm_form_deal_main2_goal_pvalue_cN)
и "План продаж" (crm_form_deal_main2_theme_pvalue_cN)
по нажатию на кнопку "X" над соответствующим столбцом. При сохранении документа
с удаленным столбцом соответствующий документ индекса
[r-crm_registry_deals_plans_custom](#dashboards_productivity) будет удален.
......@@ -16,6 +17,7 @@
* "Тема сотрудничества" - crm_form_deal_main2_theme_c%N+1%
* "План продаж" - crm_form_deal_main2_theme_pvalue_c%N+1%
* "Целевое значение" - crm_form_deal_main2_goal_pvalue_c%N+1%
где %N+1% - наибольший порядковый номер компонентов текущего документа + 1.
......@@ -26,7 +28,8 @@
столбцов не отображаются.
При создании новой записи реестра "План продаж" таблица имеет 14 столбцов,
содержащих поля "Тема сотрудничества" (crm_form_deal_main2_theme_cN) и
содержащих поля "Тема сотрудничества" (crm_form_deal_main2_theme_cN),
"Целевое значение" (crm_form_deal_main2_goal_pvalue_cN) и
"План продаж" (crm_form_deal_main2_theme_pvalue_cN).
Максимально допустимое количество столбцов, содержащих поля "Тема сотрудничества"
......@@ -39,3 +42,39 @@
`Превышено максимальное количество столбцов`
![Модифицированная динамическая таблица](resources/img/custom_dyn_table.png)
*Поле "Целевое значение":*
* Поле содержит значение из поля "Стоимость продаж"
(crm_form_deal_main2_theme_pvalue_cN), у которых совпадают значения:
* "Год" (crm_form_deal_order_sales_year);
* "Месяц" (crm_form_deal_order_sales_month);
* "Тема сотрудничества" (crm_form_deal_main2_theme_cN);
* "Отделение" (crm_form_deal_sales_pk1) в таблице текущего документа
по форме и "Подразделение создающего пользователя" (crm_owner)
другого документа по форме.
* При отсутствии документа по форме "План продаж", удовлетворяющего
перечисленным требованиям поле остается пустым, плейсхолдер не
отображается.
* Если имеется несколько документов, удовлетворяющих требованиям,
указывается целевое значение последнего измененного документа.
* Значения полей актуализируются при каждом открытии документа.
* Если сумма значений всех полей "Стоимость продаж" хотя бы одной темы
сотрудничества меньше, чем значение ее поля "Целевое значение", то при
сохранении такого документа отобразится сообщение об ошибке:
`Сумма стоимостей продаж должна быть больше либо равна целевому значению`
Весь столбец соответствующей темы сотрудничества подсвечивается красным.
![Заголовок динамической таблицы](resources/img/dyn_table_goal.png)
......@@ -2,6 +2,7 @@
* [crm_component_canban_deal](#uMCanbanDeal)
* [crm_component_deals_dashboard](#uMDealsDashboard)
* [crm_component_deals_os_dashboard](#uMDealsOSDashboard)
* [crm_component_deals_productivity](#uMDealsProductivity)
* [crm_component_deal_button](#uMDealButton)
* [crm_component_funnel](#uMFunnel)
......@@ -342,6 +343,24 @@ HTML код:
```
#### crm_component_deals_os_dashboard {#uMDealsOSDashboard}
+--------------------------------------------------------+----------------------------------------------------------+
| Свойство | Значение |
+========================================================+==========================================================+
| Код | crm_component_deals_os_dashboard |
+--------------------------------------------------------+----------------------------------------------------------+
| Использовать в формах | включен |
+--------------------------------------------------------+----------------------------------------------------------+
HTML код:
``` xml
<iframe src="http://%IP_adress%:5601/app/kibana#/dashboard/%D0%9F%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D1%8C-(%D1%81%D0%BE%D1%82%D1%80%D1%83%D0%B4%D0%BD%D0%B8%D0%BA%D0%B8)?embed=true&_g=(refreshInterval%3A('%24%24hashKey'%3A'object%3A5090'%2Cdisplay%3A'30%20seconds'%2Cpause%3A!f%2Csection%3A1%2Cvalue%3A30000)%2Ctime%3A(from%3Anow-15m%2Cmode%3Aquick%2Cto%3Anow))" height="100%" width="100%"></iframe>
```
#### crm_component_deals_productivity {#uMDealsProductivity}
+--------------------------------------------------------+----------------------------------------------------------+
......
......@@ -5,7 +5,7 @@ author:
- Айгерим Шауменова
- Кристина Маркова
title: Система управления взаимоотношениями с клиентами. Руководство разработчика Synergy
subtitle: Версия 1.4
subtitle: Версия 1.5
...
<#include "crm_about.md">
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment