Здравствуйте.
Как решить следующий бизнес-кейс?

Клиент понял, что необходимо работать над улучшением показателя "Длительность сделки".
Первым шагом является построение системы, которая позволит видеть значение средней длительности сделок за период и производить drill down до конкретного списка(представления).

Цель: вывести показатель "Средняя длительность сделок за период", Построить график "Распределение сделок по длительности".

Предлагаемое решение: в карточке "Продажа" есть показатель "Дней в воронке". Необходимо как-то выделить его в отдельные записи, выбрав по периоду.
И вывести среднеарифметическое за период.
Плюс построить график с распределением.

Нравится

2 комментария

Здравствуйте!

Показатель "Дней в воронке" считается "на лету" при открытии страницы редактирования "Продажи". Код, который отвечает за отображение дней в воронке:

updateDaysInFunnelValue: function(dueDate) {
	dueDate = dueDate || new Date();
	var createdOnValue = this.get("CreatedOn") || new Date();
	var dateNow = Terrasoft.clearTime(dueDate);
	createdOnValue = Terrasoft.clearTime(createdOnValue);
	var days = Terrasoft.dateDiffDays(createdOnValue, dateNow);
	days = Terrasoft.getFormattedNumberValue(days,
			{type: Terrasoft.DataValueType.INTEGER});
	this.set("DaysInFunnel", days > 0 ? days : "0");
},

В базовой версии, работая с объектом "Продажа" отобразить нужную аналитику не получится.

Что нужно сделать:
1) Создать объект VwOpportunityAnalitic, унаследовавшись от базового объекта и указав в свойствах объекта "Представление".
2) В объект добавить поля:

  • Дней в воронке - тип "Целое число" (DueDate)
    • Дата закрытия - тип "Дата/время" (DaysInFunnel)

      3) Опубликовать объект
      4) Создать представление в БД скриптом:

      create VwOpportunityAnalitic
      as
      (select Id, createdOn, DueDate, max(DueDate-createdOn, 0)) as DaysInFunnel

      В результате аналитику нужно будет строить по объекту VwOpportunityAnalitic, который будет содержать в себе все значения.

      Ограничить период вы сможете фильтрами, например:
      Дата создания >= [#Начало периода#] И Дата создания <= [#Завершение периода#]
      ИЛИ
      Дата завершения>= [#Начало периода#] И Дата завершения <= [#Завершение периода#]

Спасибо, будем пробовать.

"Демьяник Алексей" написал:

Здравствуйте!

Показатель "Дней в воронке" считается "на лету" при открытии страницы редактирования "Продажи". Код, который отвечает за отображение дней в воронке:

updateDaysInFunnelValue: function(dueDate) {

        dueDate = dueDate || new Date();

        var createdOnValue = this.get("CreatedOn") || new Date();

        var dateNow = Terrasoft.clearTime(dueDate);

        createdOnValue = Terrasoft.clearTime(createdOnValue);

        var days = Terrasoft.dateDiffDays(createdOnValue, dateNow);

        days = Terrasoft.getFormattedNumberValue(days,

                        {type: Terrasoft.DataValueType.INTEGER});

        this.set("DaysInFunnel", days > 0 ? days : "0");

},

В базовой версии, работая с объектом "Продажа" отобразить нужную аналитику не получится.

Что нужно сделать:

1) Создать объект VwOpportunityAnalitic, унаследовавшись от базового объекта и указав в свойствах объекта "Представление".

2) В объект добавить поля:

  • Дней в воронке - тип "Целое число" (DueDate)
    • Дата закрытия - тип "Дата/время" (DaysInFunnel)

      3) Опубликовать объект

      4) Создать представление в БД скриптом:

      CREATE VwOpportunityAnalitic

      AS

      (SELECT Id, createdOn, DueDate, max(DueDate-createdOn, 0)) AS DaysInFunnel

      В результате аналитику нужно будет строить по объекту VwOpportunityAnalitic, который будет содержать в себе все значения.

      Ограничить период вы сможете фильтрами, например:

      Дата создания >= [#Начало периода#] И Дата создания <= [#Завершение периода#]

      ИЛИ

      Дата завершения>= [#Начало периода#] И Дата завершения <= [#Завершение периода#]

Показать все комментарии