Загрузка историй сделок в Power BI

Многие пользователи Битрикс24 желают выгружать историю стадий сделок (когда и какая сделка перешла в какую стадию) за всё время. На данный момент rest-api Битрикс24 не позволяет выгружать эту информацию, только то, на какой стадии сделка находится в данный момент времени. Некоторые идут путем доработок - записывая куда-нибудь информацию по событию перехода сделки в ту или иную стадию (например, в универсальный список или в саму сделку). Но это будет работать только для всех новых перемещений сделок.


Наше решение является универсальным и позволяет выгружать всю информацию за всё время. Но для этого необходимо, чтобы на портале был системный аккаунт с правами администратора (ну или с достаточными, чтобы смотреть все сделки).


На данный момент решение всё ещё проходит бета-тестирование. Ниже инструкция для выгрузки данных в PowerBI (если у Вас установлено наше приложение "Интеграция с PowerBI").



1. Пригласите на Ваш портал системный аккаунт с email powerbi@it-solution.ru  в качестве сотрудника (будет влиять на доступное количество сотрудников и администраторов на портале, и после регистрации надо будет выдать права администратора) 


 



2. Дождитесь, когда он пройдет регистрацию (на данный момент это происходит вручную). Наши специалисты обработают запрос (рабочее время по будням с 12 до 20 по московскому времени) и напишут личное сообщение на Вашем портале тому, кто пригласил. В будущем будет автоматизировано.

Если вдруг системный аккаунт был уволен, примите его на работу.

 


3. После второго пункта, выдайте системному аккаунту права администратора.

Если на портале включена двухэтапная авторизация - системный аккаунт не сможет войти на портал.

 


4. Перезагрузите страницу с приложением и перейдите снова во вкладку "Настройки загрузки". Вы должны увидеть возможность поставить галочку "Загружать историю стадий сделок" 


5. Поставьте галочку в поле "Загружать историю стадий сделок" (сбросьте кеш, если есть) и нажмите "Сохранить". 


С этого момента история стадий будет собираться по Вашему порталу каждый будний день в 23 часа по московскому времени (заканчивается загрузка поздней ночью, поэтому загружать данные в PowerBI надо утром следующего дня)


6. К данному пункту приступайте только со следующего утра. (Иначе получите только одну пустую строчку, так как системный аккаунт ещё не успеет собрать данные). 

Откройте Ваш шаблон отчета в Power BI Desktop, нажмите на кнопку "Преобразование данных", затем "Создать источник" -> "Пустой запрос"




7. Введите в строке запроса (не забудьте знак равенства вначале.)                       =ПолучитьДанные("history_stages")  



8. Нажмите ENTER и Вы увидите список записей. Если строка только одна - обратитесь в нашу поддержку.


9. Во вкладке "Преобразование" нажмите на кнопку "В таблицу"



10. В модальном окне ничего не меняйте и нажимайте на ОК




11. Возле названия столбца нажмите на иконку со стрелочками, снимите галочку с пункта про префикс, затем на синюю ссылку "Загрузить еще" и затем "ОК"





12. Столбца "date_start" и "date_end" преобразуйте в нужный тип, нажав на название столбца правой кнопкой мыши, затем "Тип изменения" -> "Дата, время и часовой пояс"




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


14. Нажмите сверху слева "Закрыть и применить" и переходите во вкладку связей, и там нажмите на кнопку "Управление связями"



15. Если у Вас создались ненужные связи с новой таблицей - смело удаляйте


16. Создайте новую между таблицами "Сделки" и "История стадий сделок" как на скриншоте


Описание полей


id - уникальный идентификатор истории передвижения стадии сделок

deal_id - уникальный идентификатор сделки, которая совершила передвижение на стадию с названием stage_name

date_start - время, когда сделка переместилась на стадию stage_name

date_end - время, когда сделка покинула на стадию stage_name

stage_name - не уникальное название стадии сделки, которое было на момент времени date_start.

stage_id - уникальный идентификатор стадии сделок. Если пустой, значит, что на данный момент времени на Вашем портале нет стадии с таким идентификатором и названием stage_name (стадия была переименована, или удалена, или удалено целое направление, или заблокировано направление сделок из-за смены тарифа)


История стадий сделок участвует в подсчете лимита!


Теперь Вы можете создавать отчеты на основе этих данных, например, такой простенький за 5 минут. На нем видно конкретную сделку, и то, сколько времени она провела на какой стадии. А можно создать отчет, где было бы видно среднее время, на которой находятся сделки.