Modèles personnalisés d’exportation de documents

L’assistant d’exportation de documents de Requirements & Systems Portal est l’outil idéal pour générer rapidement des fichiers Microsoft Word *.docx modifiables directement à partir de vos exigences et de vos activités V&V. Vous pouvez utiliser des modèles prédéfinis ou importer vos propres modèles. L’assistant s’appuie sur la bibliothèque Python-Docx-Template, qui exploite à son tour le moteur de modèles 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 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 conditions pour renseigner votre document avec des données à la volée. En bref, c’est comme offrir un expresso à votre document Word.

Notez que, pour les champs au format texte enrichi, le préfixe r doit être utilisé dans le modèle d’exportation. Par exemple, le champ de texte d’exigence doit être inclus dans le modèle comme r requirement.text.

Gestion des modèles d’exportation

Les modèles disponibles pour votre instance Requirements & Systems Portal sont répertoriés sur la page Export templates (  » Settings » Export templates).

  • Par défaut, six modèles sont fournis – trois pour l’exportation de documents d’exigences et trois pour l’exportation de documents d’activités V&V.

    • Pour plus d’informations sur les modèles d’exportation d’exigences, consultez la page Document Export.

    • Pour plus d’informations sur les modèles d’exportation des activités V&V, consultez la page Document Export.

  • 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 s’affiche, choisissez si le nouveau modèle doit s’appliquer à Requirements ou à V&V Activities à l’aide de la liste déroulante Applicable objects, puis utilisez la zone 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 sera affiché dans la liste de la page Export templates et pourra ensuite être utilisé pour 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 Name du modèle souhaité et sélectionnez la commande Download. Selon les paramètres personnels de votre navigateur, celui-ci téléchargera automatiquement le fichier vers un emplacement prédéfini ou vous demandera où l’enregistrer sur votre disque dur.

  • Un modèle défini par l’utilisateur peut être remplacé par un nouveau fichier de 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 s’affiche. 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 de l’objet de données des modèles d’exportation d’exigences

Trois modèles par défaut d’exportation d’exigences sont disponibles dans une instance Requirements & Systems Portal, chacun étant progressivement plus complexe que le précédent. Donc, si vous souhaitez améliorer vos compétences en matière de modèles, il est judicieux de les aborder dans l’ordre. Voici la sélection :

  • spec_doc.docx – voici votre modèle simple et standard, conçu pour produire un résultat identique à celui de la vue Document des exigences. Il est excellent pour les débutants et couvre les boucles simples ainsi que les variables.

  • spec_table.docx – on monte d’un cran : ce modèle introduit les conditions et les filtres. C’est là que les choses commencent à devenir intéressantes. Il s’agit de la version Jinja de notre modèle Word basé sur des scripts avec champs de fusion.

  • req_verification.docx – le grand maître de nos modèles. Celui-ci regorge de boucles imbriquées et de conditions, et intègre même des tableaux. Si vous le maîtrisez, vous êtes pratiquement un Jedi du templating de documents.

N’hésitez pas à ajouter, supprimer ou modifier des sections afin de mieux répondre à vos besoins en documentation. Après avoir parcouru les fichiers de modèles par défaut dans l’ordre indiqué ci-dessus, vous aurez peut-être envie de 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 récupéreront les informations.

Tri des champs

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

Exemple :

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

Colonnes personnalisées

Avec l’exportateur de documents actuel, vous pouvez facilement exporter les valeurs des colonnes personnalisées. Pour une colonne personnalisée simple 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 texte Name of Custom Column par le nom réel de la colonne indiqué dans son en-tête.

Si la colonne personnalisée n’est pas de type texte et correspond à une option de sélection multiple, l’utilisateur peut utiliser le code suivant et l’adapter à son cas d’usage.

{%- 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 de l’objet de données des modèles d’exportation d’activités V&V

Voici la structure de base de l’objet à partir duquel vos modèles d’exportation des activités V&V récupéreront les informations.

AI-LocalizedLocalisé par IA
Si vous trouvez un problème, sélectionnez le texte/l’image et appuyez surCtrl + Entréepour nous envoyer vos commentaires.
Disponibilité des fonctionnalités

Les fonctionnalités auxquelles vous avez accès dépendent de la solution Altium dont vous disposez – Altium Develop, Altium Agile Teams, Altium Agile Enterprise, ou Altium Designer (avec un abonnement actif).

Si vous ne voyez pas une fonctionnalité documentée dans votre logiciel actuel, contactez le service commercial d’Altium pour en savoir plus.

Contenu