Modèles personnalisés pour l'exportation de documents

L'assistant d'exportation de documents d'Requirements Portal vous permet de créer des fichiers Microsoft Word éditables directement à partir de vos activités d'exigences et de vérification *.docx directement à partir de vos exigences et de vos activités de V&V. Vous pouvez utiliser des modèles prédéfinis ou télécharger vos propres modèles. L'assistant est alimenté par la bibliothèque Python-Docx-Template qui, à son tour, exploite le moteur de modélisation Jinja. Ce duo dynamique vous permet de créer des modèles personnalisés.

Bibliothèque Python-Docx-Template

La bibliothèque Python-Docx-Template est un outil puissant qui étend les fonctionnalités de la bibliothèque Python-Docx. Elle intègre le moteur de création de modèles Jinja, ce qui permet de générer du contenu dynamique dans vos fichiers Word. Cela signifie que vous pouvez utiliser des variables, des boucles et des conditionnelles pour alimenter votre document en données à la volée. En fait, c'est comme si vous donniez à votre document Word une dose d'expresso.

Notez que pour les champs en texte enrichi, le préfixe r doit être utilisé dans le modèle d'exportation. Par exemple, le champ texte d'exigence doit être inclus dans le modèle en tant que r requirement.text.

Gestion des modèles d'exportation

Les modèles disponibles pour votre instance du portail d'exigences sont listés sur la page Export templates ( » Settings » Export templates).

  • Par défaut, six modèles sont fournis - trois pour l'exportation du document d'exigences et trois pour l'exportation du document d'activité de V&V.

  • Pour ajouter un nouveau modèle défini par l'utilisateur, cliquez sur le bouton en haut à droite de la page. Dans la fenêtre Add template qui apparaît, choisissez si le nouveau modèle doit être appliqué à Requirements ou V&V Activities à l'aide du menu déroulant Applicable objects puis utilisez la région Select template pour sélectionner le fichier de modèle.

    Cliquez sur le bouton dans la boîte de dialogue pour ajouter le modèle. Il apparaîtra dans la liste de la page Export templates et peut ensuite être utilisé dans l'exportation de documents.

  • Le fichier de n'importe quel modèle peut être téléchargé. Pour ce faire, cliquez sur le bouton dans la colonne du modèle souhaité et sélectionnez le fichier à télécharger Name du modèle souhaité et sélectionnez la commande Download et sélectionnez la commande Selon les paramètres de votre navigateur, celui-ci téléchargera automatiquement le fichier à un emplacement prédéfini ou vous demandera où le stocker sur votre disque dur.

  • Un modèle défini par l'utilisateur peut être remplacé par un nouveau fichier modèle. Pour ce faire, cliquez sur le bouton dans la colonne Name du modèle souhaité et sélectionnez la commande Overwrite Template dans le menu qui apparaît. Utilisez la fenêtre Overwrite template qui s'ouvre pour définir l'applicabilité du modèle et sélectionner le nouveau fichier. Activez l'option I confirm I want to overwrite et cliquez sur le bouton pour terminer le processus.

Annexe - Structure des objets de données des modèles d'exportation d'exigences

Trois modèles d'exportation d'exigences par défaut sont disponibles dans une instance du portail d'exigences, chacun étant progressivement plus complexe que le précédent. Ainsi, si vous cherchez à améliorer votre jeu de modèles, il est judicieux de les aborder dans l'ordre. Voici la liste des modèles :

  • spec_doc.docx - ce modèle est un modèle simple, courant, destiné à produire un résultat identique à celui de la vue du document d'exigences. Il est excellent pour les débutants et couvre les boucles simples et les variables.

  • spec_table.docx - En montant d'un cran, ce modèle introduit les conditionnelles et les filtres. C'est là que les choses commencent à se corser. Il s'agit de la version Jinja de notre modèle Word basé sur des scripts avec des champs de fusion.

  • req_verification.docx - Le grand maître de nos modèles. Celui-ci est riche en boucles imbriquées et en conditionnelles, et il intègre même des tableaux. Si vous maîtrisez ce modèle, vous êtes un Jedi de la création de modèles de documents.

N'hésitez pas à ajouter, supprimer ou modifier des sections pour mieux répondre aux besoins de votre documentation. Après avoir parcouru les fichiers modèles par défaut dans l'ordre indiqué ci-dessus, vous vous sentirez peut-être assez aventureux pour tester les limites de ce que vous pouvez inclure dans vos rapports.

Voici la structure de base de l'objet à partir duquel vos modèles d'exportation d'exigences extrairont des informations.

Tri des champs

Vous pouvez trier les exigences à l'aide de la fonction Sort dans le modèle de document Jinja. Par exemple, vous pouvez ajouter |sort(attribute='identifier') où les exigences sont triées par ordre alphanumérique dans la colonne de l'identifiant.

Exemple :

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

Colonnes personnalisées

L'exportateur de documents actuel vous permet d'exporter facilement les valeurs des colonnes personnalisées. Pour une simple colonne personnalisée basée sur du texte, vous pouvez utiliser la structure générique suivante :

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

Veillez à remplacer le Name of Custom Column par le nom réel de la colonne indiqué dans l'en-tête de la colonne.

Si la colonne personnalisée n'est pas un texte et qu'il s'agit d'une option multi-sélection, l'utilisateur peut utiliser le code suivant et le mettre à jour en fonction de son cas d'utilisation.

{%- 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 -%}

Annexe - Structure des objets de données des modèles d'exportation des activités de V&V

Voici la structure de base de l'objet à partir duquel vos modèles d'exportation d'activités de contrôle et de vérification extrairont des informations.

AI-LocalizedAI-localized
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Feature Availability

The features available to you depend on which Altium solution you have – Altium Develop, an edition of Altium Agile (Agile Teams or Agile Enterprise), or Altium Designer (on active term).

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Contenu