Поделиться через


Создание конфигураций ER для заполнения шаблонов PDF

Процедуры в этой статье являются примерами, которые показывают, как пользователь с ролью Системный администратор или Разработчик электронной отчетности может настроить формат электронной отчетности (ER), который создает отчеты в виде PDF-файлов, используя в качестве шаблонов отчетов заполняемые документы PDF. Эти шаги могут быть выполнены в любой компании Dynamics 365 Finance или в службах Regulatory Configuration Services (RCS).

Необходимые условия

Прежде чем начать, необходимо иметь один из следующих типов доступа в зависимости от службы, которую вы используете для выполнения процедур данной статьи:

  • Доступ к Finance для одной из следующих ролей:

    • Разработчик электронной отчетности
    • Консультант по функциональным возможностям электронной отчетности
    • Системный администратор
  • Доступ к службам RCS для одной из следующих ролей:

    • Разработчик электронной отчетности
    • Консультант по функциональным возможностям электронной отчетности
    • Системный администратор

Кроме того, необходимо выполнить процедуру Создание поставщиков конфигурации и пометка их как активных.

Наконец, загрузите следующие файлы.

Описание содержания Имя файла
Шаблон для первой страницы отчета IntrastatReportTemplate1.pdf
Шаблон для других страниц отчета IntrastatReportTemplate2.pdf
Пример формата электронной отчетности — PDF Отчет Интрастат (PDF).версия.1.1.xml
Пример формата электронной отчетности — Excel Интрастат (импорт из Excel).версия.1.1.xml
Демонстрационный набор данных Образец данных Интрастат.xlsx

Создание конфигурации формата

Получение доступа к списку конфигураций, предоставленных компанией Microsoft

  1. Перейдите в раздел Управление организацией > Рабочие области > Электронная отчетность.

  2. Убедитесь, что поставщик Litware, Inc. доступен и помечен как активный.

  3. На плитке поставщика Microsoft выберите Репозитории.

    Примечание

    Если репозиторий типа LCS уже существует, пропустите остальные шаги этой процедуры.

  4. Выберите Добавить.

  5. В раскрывающемся диалоговом окне в группе полей Тип репозитория конфигурации выберите вариант LCS.

  6. Выберите Создать репозиторий.

  7. Нажмите ОК.

Получение модельных конфигураций, предоставленных компанией Microsoft

  1. В левой части страницы Репозиторий конфигураций выберите кнопку Показать фильтры (символ воронки).

  2. Добавьте фильтр для значения LCS в поле Тип и используйте оператор начинается с.

  3. Выберите Применить.

  4. Выберите Открыть.

  5. В дереве выберите Модель Интрастат.

  6. На экспресс-вкладке Версии выберите версию 1.

    Примечание

    Если кнопка Импорт на экспресс-вкладке Версии недоступна, пропустите оставшиеся шаги этой процедуры.

  7. Выберите Импорт.

  8. Выберите Да, чтобы подтвердить импорт выбранной версии конфигурации модели Модель Интрастат.

Создание новой конфигурации формата

  1. В рабочей области Электронная отчетность выберите плитку Конфигурации отчетности.

  2. В дереве выберите Модель Интрастат.

  3. Выберите Создать конфигурацию.

    Примечание

    Если кнопка Создать конфигурацию недоступна, необходимо включить режим конструктора на странице Параметры электронной отчетности, которую можно открыть из рабочей области Электронная отчетность.

  4. В раскрывающемся диалоговом окне в группе полей Создать выберите вариант Формат, основанный на модели данных Интрастат.

  5. В поле Имя введите Отчет Интрастат (PDF).

  6. В поле Описание введите Отчет Интрастат в формате PDF.

    Примечание

    Активный поставщик конфигурации вводится автоматически. Этот поставщик сможет обновлять эту конфигурацию. Хотя другие поставщики могут использовать эту конфигурация, они не смогут ее обновлять.

  7. Необязательно: в поле Тип формата можно выбрать конкретный формат электронного документа. Если выбрать PDF, во время разработки конструктор операций электронной отчетности предложит только элементы формата, которые применяется только к документам, созданным в формате PDF (PDF\Файл, PDF\Слияние PDF и т. д.). Если оставить это поле пустым, формат электронного документа будет указываться во время разработки в конструкторе операций электронной отчетности, когда будет добавлен первый элемент форматирования. Например, если добавить Excel\Файл в качестве первого элемента форматирования, конструктор операций электронной отчетности предложит только элементы формата, которые применимы только к документам, созданным в формате Excel (Excel\Ячейка, Excel\Диапазон и т. п.). формат.

  8. Выберите Создать конфигурацию.

Создается новая конфигурации формата электронной отчетности. Можно использовать черновую версию этой конфигурации для хранения компонента формата электронной отчетности, предназначенного для создания электронных документов в формате PDF.

Разработка формата электронного документа

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

В любом средстве просмотра PDF откройте загруженные шаблоны PDF. Обратите внимание, что каждый шаблон содержит несколько полей, которые должны быть заполнены. В каждом шаблоне сведения о проводках внешней торговли представляются как 42 строки, каждая из которых содержит девять полей. Номер строки отображается в конце имени каждого поля (например, Дата 1...Дата 42 и Товар 1...Товар 42).

На следующем рисунке показан шаблон PDF для первой страницы отчета.

Шаблон 1.

На следующем рисунке показан шаблон PDF для других страниц отчета.

Шаблон 2.

  1. На странице Конфигурации выберите Конструктор.

  2. Выберите Добавить корень.

  3. В раскрывающемся диалоговом окне в дереве выберите PDF > Слияние PDF.

    При выборе элемента Слияние PDF в качестве корневого элемента формата все PDF-документы, созданные во время выполнения, будут объединены в один окончательный PDF-документ. Если требуется только один шаблон PDF для создания всех необходимых документов с помощью созданного формата электронной отчетности, можно выбрать PDF-файл в качестве корневого элемента.

  4. В поле Имя введите Вывод.

  5. В поле Языковые предпочтения выберите Пользовательские предпочтения. Отчет будет создан на предпочтительном языке пользователя, который его запустит.

  6. В поле Предпочтения языкового стандарта выберите Пользовательские предпочтения. Значения и даты, представленные на страницах отчета, будут отформатированы на основе предпочтительного языкового стандарта пользователя, запускающего отчет.

  7. Нажмите ОК.

  8. На панели операций откройте вкладку Импорт и выберите Импорт из PDF.

    Когда заполняемый PDF-документ импортируется в качестве шаблона для этого формата электронной отчетности, все необходимые элементы формата электронной отчетности (элементы PDF-файл, Группа полей и Поля) автоматически создаются в создаваемом формате на основе структуры импортируемого PDF-документа.

  9. Выберите Обзор. Найдите и выберите файл IntrastatReportTemplate1.pdf, загруженный ранее в качестве необходимого компонента.

  10. Нажмите ОК.

    Выбранный файл загружается, и поле Шаблон в диалоговом окне Импорт из PDF заполняется.

  11. Для параметра Поля группы выберите значение Да. Если выбранный PDF-документ содержит какие-либо группы полей, они будут использоваться для группировки созданных элементов формата электронной отчетности. Для этой цели будет создан элемент формата Группа полей.

    Если этот параметр имеет значение Нет, необходимые элементы формата электронной отчетности будут созданы как плоский список элементов, которые вложены в созданный элемент формата PDF-файл.

  12. Нажмите ОК.

    Диалоговое окно

  13. В дереве разверните узел Вывод.

    Обратите внимание, что компонент PDF-файл был автоматически создан для управления созданием первой страницы отчета, создаваемого во время выполнения.

  14. В дереве разверните узел Вывод > PDF-файл.

    Обратите внимание, что структурированный список элементов форматирования был автоматически создан в этом формате электронной отчетности на основе структуры ранее импортированного заполняемого PDF-документа.

  15. В дереве разверните узел Вывод > PDF-файл.

  16. В поле Имя введите Страница 1.

    Этот элемент формата будет использоваться для создания первой страницы отчета Контрольный Интрастат. Эта страница отображает сводку отчета и подробные сведения о проводках по внешней торговле.

    Если оставить поле Языковые предпочтения пустым, настройка Языковые предпочтения родительского элемента Слияние PDF будет определять язык отчета, созданный с использованием этого элемента формата. Можно выбрать другое значение, чтобы переопределить настройку родительского элемента.

    Если оставить поле Предпочтения языкового стандарта пустым, настройка Предпочтения языкового стандарта родительского элемента Слияние PDF будет определять языковой стандарт, созданный с использованием этого элемента формата. Языковой стандарт определяет формат значений и дат на страницах отчета. Можно выбрать другое значение, чтобы переопределить настройку родительского элемента.

  17. В области действий выберите вкладку Импорт. Обратите внимание, что кнопка Обновить из PDF стала доступна для выбранного элемента формата PDF-файл.

    С помощью этой кнопки можно импортировать обновленный шаблон PDF в отредактированный формат. При импорте обновленного шаблона PDF список элементов формата будет изменен соответствующим образом:

    • Для любых новых полей в обновленном шаблоне PDF новые элементы формата создаются в отредактированном формате электронной отчетности.
    • Если обновленный шаблон PDF больше не содержит полей, соответствующих каким-либо существующим элементам формата в измененном формате электронной отчетности, эти элементы формата удаляются из формата электронной отчетности.
  18. На вкладке Формат выберите Вложения.

    Обратите внимание, что импортированный PDF-документ прикрепляется к измененному формату электронной отчетности.

    Предварительный просмотр PDF-вложения.

  19. Продолжайте разрабатывать этот формат, выполнив импорт второго шаблона PDF, добавляя необходимые привязки к источникам данных и т. д.

  20. Нажмите Сохранить.

  21. Закройте страницу.

  22. Выберите Удалить.

  23. Выберите Да.

Чтобы узнать, как можно использовать новые элементы формата Слияние PDF, PDF-файл, Группа полей и Поле для создания документов в формате PDF, можно выполнить импорт и анализ образца формата электронной отчетности.

Импорт конфигурации формата

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

  1. На странице Конфигурации выберите пункт Обмен > Загрузить из XML-файла.
  2. Выберите Обзор. Найдите и выберите файл Отчет Интрастат (PDF).версия.1.1.xml, загруженный ранее в качестве необходимого компонента.
  3. Нажмите ОК.

Анализ конфигурации формата

Макет формата

  1. На странице Конфигурации в дереве выберите Модель Интрастат > Отчет Интрастат (PDF).

  2. Выберите Конструктор.

  3. Выберите Показать сведения.

  4. В дереве разверните узел Вывод: Слияние PDF.

    Обратите внимание, что данный формат электронной отчетности содержит два элемента PDF-файл, каждый из которых использует отдельный шаблон PDF. Один шаблон используется для создания первой страницы отчета в формате PDF, а другой шаблон используется для создания других страниц.

  5. Разверните в дереве узел Вывод: Слияние PDF > Страница 1: PDF-файл (IntrastatReportTemplate1).

  6. Разверните в дереве узел Вывод: Слияние PDF > Страница N: PDF-файл (IntrastatReportTemplate2).

    Обратите внимание, что в связи с различием содержимого двух шаблонов PDF структура вложенных элементов формата для двух элементов PDF-файл также отличается.

Сопоставление формата

  1. На странице Конструктор формата выберите вкладку Сопоставление.

  2. В дереве разверните Разбиение на страницы > Страницы.

    Страница конструктора формул, в которой развернуто дерево моделей.

    Заметьте следующие детали:

    • Элемент формата Вывод > Страница 1 типа PDF-файл не привязан ни к какому источнику данных, а выражение Включен этого элемента формата пусто. Таким образом, во время выполнения шаблон PDF IntrastatReportTemplate1 будет заполнен только один раз при создании отдельного PDF-документа.

    • Элемент формата Вывод > Страница N типа PDF-файл привязан к источнику данных Paging.PageN типа Список записей, а выражение Включен этого элемента формата пусто. Таким образом, во время выполнения шаблон PDF IntrastatReportTemplate2 будет заполнен для каждой записи из привязанного списка записей при создании отдельного PDF-документа.

    • Так как элементы формата Страница 1: PDF-файл и Страница N: PDF-файл являются дочерними от элемента формата Вывод: Слияние PDF, все заполненные документы PDF будут объединены в один окончательный документ PDF.

    • Источники данных Paging.Page1 и Paging.PageN настраиваются как фильтры записей из источника данных Paging.Pages. Этот источник данных настроен для разбиения всего набора проводок по внешней торговле на партии. Каждый пакет содержит до 42 записей. Для разделения проводок на пакеты используется следующее выражение электронной отчетности:

      SPLITLIST(Totals.CommodityRecord,42)

    • Источник данных Paging.Pages содержит элемент Paging.Pages.Enumerated, который возвращает сведения о каждой записи, включенной в пакет. Эти детали включают последовательность записей в текущем пакете (поле Paging.Pages.Enumerated.Number). Поле Paging.Pages.Enumerated.Number используется в выражении Имя элементов формата Поля PDF для динамического создания имени поля, которое основано на номере проводки в пакете. Созданное имя поля затем используется для заполнения соответствующего поля PDF в используемом шаблоне PDF.

    • Элемент формата Вывод > Страница N > Сведения 2 типа Группа PDF привязан к источнику данных Paging.PageN.Enumerated (или @.Enumerated, если используется режим просмотра Относительный путь) типа Список записей. Таким образом, во время выполнения вложенные элементы этой группы PDF будут заполнены для каждой записи из присоединенного списка записей. Таким образом, отдельные строки PDF создаются виртуально, когда для каждой N-ой из 42 записей из списка Paging.PageN.Enumerated следующие поля PDF заполнены: Дата N, Направление N, Товар N и т. д. Таким образом, в этом смысле поведение этого элемента формата Группа полей напоминает поведение элементов формата XML > Последовательность и Текст > Последовательность.

  3. В дереве разверните Вывод > Страница N > Details2.

  4. В дереве выберите Вывод > Страница N > Details2 > PageFooter.

    Обратите внимание, что атрибут Name данного элемента формата определен как PageFooter. Также обратите внимание, что выражение Имя элемента формата пусто.

  5. В дереве выберите Вывод > Страница N > Details2 > Корректировка 1.

    Обратите внимание, что атрибут Name данного элемента формата определен как Корректировка 1. Также обратите внимание, что выражение Имя элемента формата определено как Paging.FldName ("Корректировка",@.Number).

Конструктор формата, в котором выбрано сопоставление.

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

  • На вкладке Формат — атрибут Name элемента формата
  • На вкладке Сопоставление — выражение Имя элемента формата

Так как оба свойства являются необязательными для элемента формата Поле, применяются следующие правила для указания целевого поля PDF:

  • Если атрибут Name пуст, а выражение Имя возвращает пустую строку во время выполнения, во время выполнения создается исключение, чтобы уведомить пользователя о том, что поле PDF не удается найти в шаблоне PDF, используемом для заполнения PDF-документа.
  • Если атрибут Name определен, и выражение Имя пусто, поле PDF, имеющее то же имя, что и атрибут Name элемента формата, заполняется.
  • Если атрибут Name определен, и выражение Имя настроено, поле PDF, имеющее то же имя, что и значение, возвращенное выражением Имя элемента формата, заполняется.

Примечание

Если флажок в шаблоне PDF не принадлежит к группе флажков, он представлен в виде редактируемого формата электронной отчетности как элемент Поле, вложенный в элемент PDF-файл. Этот тип флажка PDF может быть установлен как выбранный следующими способами:

  • Соответствующий элемент формата Поле привязан к полю источника данных типа данных Логический, имеющему значение True.
  • Соответствующий элемент формата Поле содержит вложенный элемент формата Строка, который связан с полем источника данных, имеющим текстовое значение 1, True или Да.

Шаблон может содержать группу флажков, в которых одновременно можно выбрать только один флажок. Эти флажки представлены в шаблоне PDF как несколько полей формы типа ФЛАЖОК. Каждое поле имеет одно и то же имя, но разное экспортное значение. При импорте шаблона в редактируемый формат электронной отчетности каждый из флажков будет представлен в иерархической структуре форматов в виде элемента Элемент группы флажков, который будет вложен в один и тот же элемент Группа флажков. Имя элемента Группа флажков будет равно имени полей флажков в шаблоне PDF. Имя каждого элемента Элемент группы флажков будет равно значению экспорта соответствующего поля флажка в шаблоне PDF.

Элемент Элемент группы флажков можно привязать к полю источника данных только для типа данных Логический.

Выполнение конфигурации формата

Импорт конфигурации формата

Далее следует загрузить образец формата электронной отчетности Интрастат (импорт из Excel). Этот формат предназначен для разбора выбранной пользователем книги Microsoft Excel, моделирующей проводки внешней торговли.

  1. На странице Конфигурации выберите пункт Обмен > Загрузить из XML-файла.

  2. Выберите Обзор. Найдите и выберите файл Интрастат (импорт из Excel).версия.1.1.xml, загруженный ранее в качестве необходимого компонента.

  3. Нажмите ОК.

  4. В дереве выберите Модель Интрастат > Интрастат (импорт из Excel).

  5. Выберите Правка.

  6. Установите для параметра По умолчанию для сопоставления модели значение Да.

    Примечание

    Если ранее для параметра По умолчанию для сопоставления модели установлено значение Да для конфигурации Модель Интрастат или для другой конфигурации, которая является вложенной в конфигурацию Модель Интрастат, установите для этого параметра значение Нет.

    Если для параметра По умолчанию для сопоставления модели установлено значение Да, в качестве источника данных по умолчанию для конфигурации формата Отчет Интрастат (PDF) будет назначен импортированный формат электронной отчетности Интрастат (импорт из Excel). Затем, когда выполняется конфигурация формата Отчет Интрастат (PDF), содержимое рабочей книги Excel, проанализированное с помощью формата электронной отчетности Интрастат (импорт из Excel), будет моделировать проводки по внешней торговле, которые должны быть включены в отчет. Следующая иллюстрация показывает пример книги Excel.

    Книга Excel, имеющая образцы данных.

Выполнение конфигурации формата

  1. На странице Конфигурации в дереве выберите Модель Интрастат > Отчет Интрастат (PDF).
  2. Выберите Выполнить.
  3. Выберите Обзор. Найдите и выберите файл Пример данных Интрастат.xlsx, загруженный ранее в качестве необходимого компонента.
  4. Нажмите ОК.
  5. В поле Направление отчета выберите Оба, чтобы заполнить все проводки из импортированной книги Excel в создаваемом отчете PDF.
  6. Нажмите ОК.
  7. Просмотрите созданный PDF-документ.

На следующем рисунке показан пример первой страницы создаваемого отчета.

Первая страница созданного отчета.

На следующем рисунке показан пример другой страницы создаваемого отчета.

Другая страница созданного отчета.

Ограничения

Названия доступных для заполнения полей должны быть уникальными в PDF-форме, которую планируется использовать в качестве шаблона отчета. Для каждого такого поля отдельный элемент форматирования с соответствующим именем создается в редактируемом формате электронной отчетности при импорте PDF-формы. Если PDF-форма содержит несколько полей с одинаковым именем, для полей создается один элемент форматирования, который не допускает их индивидуального заполнения во время выполнения.

Вопросы и ответы

Почему я получаю следующие ошибки, когда выполняю формат электронной отчетности для создания отчета в формате PDF: Невозможно обрабатывать потоки iref. Текущая реализация PDFSharp не может обработать эту функцию PDF, появившуюся в Acrobat 6. и Имя PDF-файла должно начинаться с косой черты (/).

Для создания этих отчетов в формате PDF платформа электронной отчетности использует версию 1.5 библиотеки PDFSharp. Некоторые функции PDF 1.5 (Adobe Reader 6.0) еще не реализованы в этой библиотеке. Таким образом, PDFSharp не может открыть некоторые файлы, помеченные как для PDF 1.5 или более поздней версии, что может привести к получению ошибок. Для устранения этой проблемы воспользуйтесь одним из следующих решений:

  • При использовании собственного шаблона PDF: понизьте уровень шаблона до более ранней версии Adobe и начните использовать новый шаблон в формате электронной отчетности.
  • При использовании шаблона формата электронной отчетности, который сделан общим для вас другим поставщиком конфигурации как часть решения электронной отчетности: обратитесь к владельцу этого решения электронной отчетности и предоставьте описание проблемы.
  • При использовании решения независимого поставщика программного обеспечения, которое содержит более раннюю версию библиотеки PDFSharp: обратитесь к владельцу решения и предложите выполнить обновление на новую версию PDFSharp.

Дополнительные ресурсы