VA СамописныйШаг по заполнению Excel для загрузки в документ

Собственный шаг *.epf для библиотеки Vanessa Automation, который способен создать *.xlsx для загрузки в ТЧ документа.

Кратко о работе шага:

    • 1 вариант: в шаге можно передать заголовки геркин-таблицы (по сути с любые) в количестве 1-ой строки, тогда все данные для заполнения макетов для создания Excel будут браться из запроса к базе. При этом, параметры в синтаксисе шага - будут переданы в функцию, где выполняется запрос.
    • 2 вариант: в отличие от 1-го варианта, если в геркин-таблице указать 2-ую строку со значениями, тогда к заголовку полей будут присвоены эти значения как Соответствие пары ключ-значение. При этом, параметры переданные в синтаксисе шага - будут проигнорированы.

№1Для начала необходимо создать внешнюю обработку *.epf шага. Создать макеты по которым будет заполняться и сохраняться *.xlsx:

2026-07-01 172447

  • 1-ой строкой идёт область "Шапка"с заголовками которые хочу получить в файле Excel.
  • 2-строкой идёт область "Бюджет"с <Параметры>, которые заполняются значениями по структуре - полученными в зависимости от варианта (см. выше) получения данных.

№2Теперь через Функцию "ДанныеПоИсточникамНаСервере" определяем области макета и параметры табличных данных полей, которые будем заполнять в макете построчно:
2026-07-01 221759

№3Для 2-х вариантов использования самописного шага - получения данных для макетов:

  • с 1-ой строкой геркин-таблицы - возвращает "ТаблицаЗначений" из запроса в функции "ДанныеКорректировкиБюджетовИзБазы" 
  • с >1-ой строками геркин-таблицы: возвращает Соответствие заголовков полей и их значений как массив структур функции "ТаблицаГеркенВМассивСтруктуру" для заполнения контейнера данных "ДанныеКорректировкиБюджетов".

ДанныеКорректировкиБюджетов определяют состав полей: по 1-му варианту из запроса, 2-му - из таблицы-геркин:
2026-07-01 212849

3.1 Заполнение из запроса (вариант 1):

2026-07-01 175324

3.2 Заполнение из геркин-таблицы (вариант 2):

2026-07-01 180152

№4Когда сгенерируется Excel, одновременно создётся эталонная таблица для будущего сравнения с заполненной после загрузки таблицей в документе. Результатом представления является "ПредставлениеТаблицыНаФорме" - массив, где каждый элемент это Соответствие пары ключ-значение (пример "Вид бюджета" = "Бюджет начислений") как эталон, сохраненный через контекст в переменную "Л_ПредставлениеТаблицыНаФорме". Поэтому, далее в шагах сценария, я сверяю её с реально получившейся после загрузки ТЧ Источника и Получателя:

2026-07-01 214109

№5Добавляем в библиотеку Vanessa Automation сохраненный самописный шаг *.epf. Запускаем его в сценарии через прописанный синтаксис: в зависимости от выбранного варианта генерации данных для макета - создаётся Excel файл, который загружаем посредством следующих шагов библиотеки и сравниваем эталон с сформированной таблицей документа:

2026-07-01 220833

mr. Mak

Остались вопросы? Пишите на почту admin@hzit.ru

Администратор сайта hzit.ru
Back to top