Одной из наиболее распространенных задач является организация извлечения и доставки обновлённого объема данных из источника получателю.
Будет продемонстрирована инкрементальная загрузка справочника 1С «Номенклатура», в базу данных Greenplum, с использованием пользовательского параметра, типа SQL.
Рассмотрим задачу в два этапа.
В меню выбрать «Staging», «Команды». Выбрать заранее созданную модель — «Тестовая модель GP».
В форме заполнить следующие данные:
На первом этапе, выбрать опцию «Очистить перед выполнением». Этот режим обеспечит полное обновление данных в целевой таблице, при каждом запуске команды на выполнение.
Опция «Делать бэкап» позволяет перед выполнением команды создавать резервную копию таблицы назначения.
Для создания запроса к справочнику 1С, нажать «Создать». В окне создания запроса, в дереве объектов 1С необходимо найти нужный справочник «Номенклатура», отметить его и нажать «Сформировать запрос». При этом система по умолчанию работает в режиме формирования запросов на языке 1С. Если необходим запрос на языке SQL, то можно перейти в соответствующий режим. Система автоматически сгенерирует запрос на языке SQL.
При необходимости запрос может быть скорректирован, однако требуется опыт работы с запросами на языке 1С и уточнение из документации поддерживаемых инструкций языка 1С.
После создания запроса выполнить проверку запроса. На этом этапе выполняется расчет параметров, входящих в запрос, если таковые есть. Затем нажать «Выполнить». В зоне предварительного просмотра оценить полученные данные. Для сохранения запроса нажать «Ок».
Указать размер пакета данных.
Нажать «Сохранить». На этом процесс создания команды завершен. В списке появилась новая команда.
Запуск команды на выполнение осуществляется через меню «Профили» раздела «Staging».
Выбрать профиль, который был указан при настройке команды, убедиться что у интересующей команды «Состояние» в режиме активно, нажать «Загрузить».
Чтобы убедиться что данные появились в целевой системе, перейти в раздел «Данные», выбрать подключение к назначению — Greenplum, найти созданную таблицу, выделить её и нажать «Сформировать запрос». После чего нажать выполнить и убедиться, что данные получены.
Для примера, выберем запись в целевой таблице.
Предположим, что в источнике, справочнике «Номенклатура», обновились данные указанной записи. Чтобы обновить записи в целевой системе, необходимо вернуться в раздел «Staging», «Команды», выбрать «Тестовая модель GP» и отредактировать ранее созданную команду.
Выберем команду для редактирования.
Выключим опцию «Очистить перед выполнением команды».
В запрос команды, необходимо добавить условие, с пользовательским параметром.
Чтобы отредактировать запрос, нажмём «Создать».
В «Запросе к источнику», добавим условие загрузки.
Для добавления пользовательского параметра, перейдём в меню «Параметры».
Выберем «Пользовательские параметры», и в выпадающем списке, дважды нажмём на наименование параметра, который необходимо использовать в запросе. Параметр автоматически добавился в запрос.
Выполнить проверку запроса. Затем нажать «Выполнить» и убедиться, что запрос возвращает только обновлённые записи. В зоне предварительного просмотра, оценить обновлённые данные.
Для сохранения нажать «ОК».
Чтобы сохранить внесённые в команду изменения, нажать «Обновить».
Чтобы обновлённые данные загрузились в целевую систему, выполним загрузку команды.
Перейдём в меню «Профиль».
Выберем профиль, который был указан при создании команды. Убедимся что у требуемой команды, состояние «Активно». Для загрузки нажать «Загрузить».
Чтобы убедиться что обновлённые данные появились в целевой системе, нужно перейти в раздел «Данные», выбрать подключение к назначению — Greenplum, найти созданную таблицу, выделить её и нажать «Сформировать запрос». После нажать «Выполнить» и убедиться, что данные получены.
Для наглядности, найдём обновлённую запись.
В целевой системе, помимо старой записи, появилась и обновлённая запись.
Настроенная команда может запускаться на периодической основе, как в ручном режиме через веб-интерфейс, так и с помощью оркестратора.
На этом задача инкрементальной загрузки справочника из 1С в Greenplum выполнена.