Пользовательские шаблоны экспорта документов

Мастер экспорта документов портала Requirements & Systems Portal - ваш помощник для создания редактируемых файлов Microsoft Word *.docx прямо из ваших требований и V&V работ. Вы можете использовать предопределенные шаблоны или загружать собственные шаблоны. Мастер работает на основе библиотеки Python-Docx-Template, которая, в свою очередь, использует механизм шаблонизации Jinja. Этот динамичный дуэт позволяет создавать собственные шаблоны.

Библиотека Python-Docx-Template

Библиотека Python-Docx-Template - это мощный инструмент, который расширяет функциональность библиотеки Python-Docx. Она включает в себя движок Jinja Templating Engine, позволяющий динамически генерировать контент в файлах Word. Это означает, что вы можете использовать переменные, циклы и условия для наполнения документа данными на лету. По сути, это все равно что дать вашему документу Word порцию эспрессо.

Обратите внимание, что для полей с насыщенным текстом необходимо использовать префикс r необходимо использовать префикс в шаблоне экспорта. Например, текстовое поле "Требование" должно быть включено в шаблон как r requirement.text.

Управление шаблонами экспорта

Шаблоны, доступные для экземпляра портала Requirements & Systems Portal, перечислены на Export templates странице ( » Settings » Export templates).

  • По умолчанию предоставляется шесть шаблонов - три для экспорта документов требований и три для экспорта документов деятельности V&V.

  • Чтобы добавить новый пользовательский шаблон, нажмите кнопку в правом верхнем углу страницы. В Add template появившемся окне выберите, должен ли новый шаблон применяться к Requirements или V&V Activities с помощью Applicable objects раскрывающегося списка, а затем с помощью Select template выберите файл шаблона.

    Нажмите кнопку в диалоговом окне, чтобы добавить шаблон. Он будет отображен в списке на Export templates странице и может быть использован при экспорте документа.

  • Файл любого шаблона можно загрузить. Для этого нажмите кнопку в Name в колонке нужного шаблона и выберите команду Download команду. В зависимости от настроек вашего браузера, браузер либо автоматически загрузит файл в заданное место, либо спросит вас, где сохранить его на жестком диске.

  • Определенный пользователем шаблон можно перезаписать новым файлом шаблона. Для этого нажмите кнопку в Name в колонке нужного шаблона и выберите команду Overwrite Template из появившегося меню. В открывшемся Overwrite template в открывшемся окне определите применимость шаблона и выберите новый файл. Включите I confirm I want to overwrite и нажмите кнопку , чтобы завершить процесс.

Приложение - Структура объектов данных шаблонов экспорта требований

В экземпляре портала Requirements & Systems Portal доступны три шаблона экспорта требований по умолчанию, каждый из которых постепенно становится сложнее предыдущего. Поэтому, если вы хотите улучшить свои навыки работы с шаблонами, разумно будет изучать их по порядку. Вот их состав:

  • spec_doc.docx - Этот шаблон является простым, обычным шаблоном, предназначенным для создания идентичного требованиям представления документов. Он отлично подходит для новичков и охватывает простые циклы и переменные.

  • spec_table.docx - Если же вы перейдете на более высокий уровень, то в этом шаблоне появятся условия и фильтры. Именно здесь все становится более интересным. Это Jinja-версия нашего скриптового шаблона Word с полями слияния.

  • req_verification.docx - Гроссмейстер наших шаблонов. В этом шаблоне много вложенных циклов и условий, и он даже включает в себя таблицы. Если вы сможете освоить его, то станете настоящим джедаем в области шаблонизации документов.

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

Вот основная структура объекта, из которого ваши шаблоны экспорта требований будут извлекать информацию.

Сортировка полей

Вы можете сортировать требования с помощью функции Sort в документе шаблона Jinja. Например, вы можете добавить |sort(attribute='identifier') где требования будут отсортированы в алфавитно-цифровом порядке по столбцу идентификатора.

Пример:

{% for requirement in requirements|selectattr("specification_id", "equalto", specification.id)|selectattr("group_id", "none") |sort(attribute='identifier') -%}

Пользовательские столбцы

С помощью текущего экспортера документов вы можете легко экспортировать значения пользовательских колонок. Для простого текстового пользовательского столбца можно использовать следующую типовую структуру:

{% for custom_field in requirement.custom_fields|selectattr(“field”, “equalto”, “Name of Custom Column”) %}{% for value in custom_field.value %}{{ value }}{% endfor %}{% endfor %}

Обязательно замените Name of Custom Column текст на фактическое имя столбца, указанное в заголовке столбца.

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

{%- if requirement.custom_fields -%}
     {%- set additional_info_values = [] -%}
     {%- set category_values = [] -%}
     {%- set additional_info_custom_fields = requirement.custom_fields | selectattr('field', 'equalto', 'Additional Information') -%}
     {%- for custom_field in additional_info_custom_fields -%}
      {%- set additional_info_values = additional_info_values + custom_field.value -%}
     {% endfor -%}
     {%- set category_custom_fields = requirement.custom_fields | selectattr('field', 'equalto', 'Category') -%}
     {%- for custom_field in category_custom_fields -%}
           {%- set category_values = category_values + custom_field.value -%}
     {% endfor -%}
{%- set additional_info_string = additional_info_values | join(';') -%}
{%- set category_string = category_info_values | join(';') -%}
{%- endif -%}

Приложение - Структура объектов данных шаблонов экспорта деятельности V&V

Вот основная структура объекта, из которого шаблоны экспорта V&V-мероприятий будут извлекать информацию.

AI-LocalizedAI-localized
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Доступность функциональных возможностей

Набор доступных функциональных возможностей зависит от вашего решения Altium – Altium Develop, редакция Altium Agile (Agile Teams или Agile Enterprise) или Altium Designer (на активной подписке).

Если вы не видите в своем ПО функцию, описанную здесь, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Content