Выгрузка задач, их времени, истории и результатов
Итак, приступим. Создаем новый проект с помощью кнопки «+ Создать проект».

В открывшемся окне задаем ему наименование и нажимаем «+ Создать».

Для этого примера мы заведем переменную проекта, которую будем использовать в качестве подключения для нод Коннектора Битрикс24. Заходим в «Переменные проекта» (кнопка
) и нажимаем «Добавить».
Указываем наименование переменной, ее тип и значение, затем нажимаем «Создать».
Полная выгрузка
Теперь переходим в конструированию проекта. Добавим ноду Read Data From Bitrix24. Настроим ее:
Connection — «=hookB24» (добавленная ранее переменная проекта);
Entity — «Task» (сущность, которую мы будем выгружать);
поменяем наименование ноды на «Tasks»;

Fields to export — нажимаем «Clear» (выгружать будем все поля).
Mode — «Full» (а также указываем дату начала (Start date) и дату конца (End date)).
Нажимаем «Сохранить».

Теперь добавим ноду DB Connection и Write DataFrame To DB, чтобы осуществить полную выгрузку лидов в базу данных. В ноде DB Connection указываем нужно подключение, а ноду Write DataFrame To DB настраиваем следующим образом.

После ввода наименования таблицы генерируется скрипт создания таблицы. Далее в этой статье мы разберем инкрементальную выгрузку, поэтому настройки необходимо установить следующие:
Режим записи «upsert» (замена и добавление полей по ключу);
Upsert key column «id» (ключ, по которому происходит замена и добавление полей).
Теперь и скорректируем скрипт строку "id" Nullable(String) заменим на "id" String, а строку "changedDate" Nullable(DateTime) на "changedDate" DateTime, а также сделаем сортировку по id — заменим ORDER BY tuple () на ORDER BY id;
Нажимаем «Продолжить».

Таблица создана, параметры записи оставляем без изменений. Нажимаем «Сохранить».

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

Проверим, что выгрузилось в таблицу в базе данных.

Инкрементальная выгрузка
Теперь переделаем ранее описанный проект так, чтобы наша выгрузка была инкрементальной. Для этого необходимо подать на вход ноды Read Data From Bitrix24 переменную с датой последней модификации. Как это сделать?
Откроем контекстное меню ноды Read Data From Bitrix24 и активируем переключатель «Показывать VARIABLE порты»

Добавляем ноду DB Connection c тем же подключением, что использовалось ранее, а также добавляем ноду Read Variables DB и соединяем их последовательно с нодой Read Data From Bitrix24.

Настроим ноду Read Variables DB. Выбираем указанную ранее при полной выгрузке базу, созданную нами в ней таблицу и добавляем переменную с названием «last_date», указываем колонку, в которой хранится последняя дата изменения, здесь это — «changedDate» и агрегацию — «max». Нажимаем «Сохранить».

Теперь откроем настройки ноды Read Data From Bitrix24 и изменим режим выгрузки с «Full» на «Incremental» и указываем нашу переменную «=last_date» в поле «Last modified».

У нас получился такой проект, выполним его.

Теперь перейдем в базу и обновим таблицу данных — подгрузились данные по текущую дату.

Выгрузка времени задач
Для чтения времени задач есть отдельная нода Get Elapsed Time From Bitrix24. На вход данная нода требует список id задач. Добавим эту ноду в наш пайплайн и соединим ее с Read Data From Bitrix24 (мы ее переименовали в «Tasks»). Теперь настроим ноду Get Elapsed Time From Bitrix24:
указываем подключение (ранее заведенная переменная проекта);
task_id_column — «id».
Все остальное оставляем без изменений и нажимаем «Сохранить».

Выгружать данные о времени задач будем в отдельную таблицу, поэтому добавляем ноду Write DataFrame To DB, подключаем ее к ранее добавленной ноде DB Connection.

Теперь переходим к настройке ноды Write DataFrame To DB. Настраиваем ее аналогичным образом, что и ранее в данной статье.

Для дальнейшей настройки инкрементальной выгрузки выберем режим записи «upsert» (замена и добавление полей по ключу) и укажем ключ «TASK_ID», затем скорректируем сгенерированный скрипт создания таблицы:
Заменяем строку "ID" Nullable(String) на "ID" String, строку "TASK_ID" Nullable(String) на "TASK_ID" String, а также сделаем сортировку по TASK_ID — заменим ORDER BY tuple () на ORDER BY TASK_ID.
Нажимаем «Продолжить».

Таблица создана, параметры записи оставляем без изменений. Нажимаем «Сохранить».

Теперь выполним проект до данной ноды — выбираем в контекстном меню ноды соответствующий пункт.

Получилась следующая таблица данных:

Выгрузка истории задач
Нода Get Entity Data From Bitrix24 позволяет выгружать историю задач (task_history) и результаты задач (task_result). Процесс настройки идентичен, поэтому ниже мы рассмотрим пример выгрузки истории задач.
Для выгрузки результатов задач добавляем в наш пайплайн ноду Get Entity Data From Bitrix24 и соединяем ее с Read Data From Bitrix24 (Tasks). Переходим к настройке:
выбираем сущность «task_history»;
указываем подключение (ранее заведенная переменная проекта);
в поле «task_id_column» выбираем «id».
Нажимаем «Сохранить».

Добавляем ноду записи данных в базу (Write DataFrame To DB) и подключаем ее к ноде DB Connection также как и ранее.
Настроим ноду записи:
указываем наименование базы данных;
создаем новую таблицу в ней и задаем ей имя;
выбираем режим записи «upsert» и ключ «id»;
корректируем скрипт создания таблицы:
Заменяем строку
"ID" Nullable(String)на"ID" String;Заменяем строку
ORDER BY tuple ()наORDER BY id.

После создания таблицы параметры записи оставляем без изменений. Нажимаем «Сохранить».
Теперь запустим на выполнение это ответвление пайплайна: в контекстном меню ноды Write DataFrame To DB нажимаем «Запустить до этой ноды»

Получилась следующая таблица данных:
