Modelli personalizzati per l'esportazione di documenti

La procedura guidata per l'esportazione dei documenti di Requirements Portal è la soluzione ideale per creare file Microsoft Word modificabili *.docx modificabili direttamente dai requisiti e dalle attività di V&V. È possibile utilizzare modelli predefiniti o caricare i propri modelli. La procedura guidata è alimentata dalla libreria Python-Docx-Template, che a sua volta sfrutta il motore di template Jinja. Questo duo dinamico consente di creare modelli personalizzati.

Libreria Python-Docx-Template

La libreria Python-Docx-Template è un potente strumento che estende le funzionalità della libreria Python-Docx. Incorpora il motore di template Jinja, consentendo la generazione di contenuti dinamici all'interno dei file Word. Ciò significa che è possibile utilizzare variabili, cicli e condizionali per popolare il documento con dati al volo. In sostanza, è come dare al documento Word una dose di espresso.

Si noti che per i campi di testo ricco, il prefisso r deve essere utilizzato nel modello di esportazione. Ad esempio, il campo di testo requisito deve essere incluso nel modello come r requirement.text.

Gestione dei modelli di esportazione

I modelli disponibili per l'istanza di Requirements Portal sono elencati nella pagina Export templates ( » Settings » Export templates).

  • Per impostazione predefinita, vengono forniti sei modelli: tre per l'esportazione dei documenti dei requisiti e tre per l'esportazione dei documenti delle attività di V&V.

  • Per aggiungere un nuovo modello definito dall'utente, fare clic sul pulsante in alto a destra della pagina. Nella finestra Add template finestra che appare, scegliere se il nuovo modello deve essere applicato a Requirements o V&V Activities utilizzando il menu a tendina Applicable objects e quindi utilizzare l'area Select template per selezionare il file del modello.

    Fare clic sul pulsante nella finestra di dialogo per aggiungere il modello. Il modello verrà visualizzato nell'elenco della Export templates pagina e potrà essere utilizzato nell'esportazione del documento.

  • Il file di qualsiasi modello può essere scaricato. A tale scopo, fare clic sul pulsante nella colonna del modello richiesto e selezionare il nome del file Name del modello desiderato e selezionare il comando Download e selezionare il comando A seconda delle impostazioni personali del browser, quest'ultimo scaricherà automaticamente il file in una posizione predefinita oppure chiederà all'utente dove memorizzarlo sul disco rigido.

  • Un modello definito dall'utente può essere sovrascritto con un nuovo file di modello. A tale scopo, fare clic sul pulsante nella colonna Name del modello desiderato e selezionare il comando Overwrite Template dal menu che appare. Utilizzare la finestra Overwrite template finestra che si apre per definire l'applicabilità del modello e selezionare il nuovo file. Abilitare l'opzione I confirm I want to overwrite e fare clic sul pulsante per completare il processo.

Appendice - Struttura degli oggetti di dati dei modelli di esportazione dei requisiti

In un'istanza di Requirements Portal sono disponibili tre modelli di esportazione dei requisiti predefiniti, ciascuno progressivamente più complesso del precedente. Quindi, se volete migliorare il vostro gioco di modelli, affrontarli in sequenza è una mossa intelligente. Ecco la lista:

  • spec_doc.docx - Questo è un modello semplice e di uso corrente, destinato a produrre un risultato identico a quello della vista documento dei requisiti. È eccellente per i principianti e comprende semplici cicli e variabili.

  • spec_table.docx - Questo modello introduce i condizionali e i filtri. È qui che le cose iniziano a farsi piccanti. È la versione Jinja del nostro modello Word basato su script con campi di unione.

  • req_verification.docx - il grande maestro dei nostri modelli. Questo modello è ricco di cicli annidati e condizionali e incorpora persino delle tabelle. Se riuscite a padroneggiarlo, siete praticamente dei Jedi del template di documenti.

Sentitevi liberi di aggiungere, rimuovere o modificare le sezioni per adattarle meglio alle vostre esigenze di documentazione. Dopo aver esaminato i file dei modelli predefiniti nell'ordine indicato sopra, potreste sentirvi abbastanza avventurosi da testare i limiti di ciò che potete includere nei vostri report.

Ecco la struttura di base dell'oggetto da cui i vostri modelli di esportazione dei requisiti prenderanno le informazioni.

Ordinamento dei campi

È possibile ordinare i requisiti utilizzando la funzione Sort nel documento modello Jinja. Ad esempio, si può aggiungere |sort(attribute='identifier') dove i requisiti sono ordinati alfanumericamente sulla colonna dell'identificatore.

Esempio:

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

Colonne personalizzate

Con l'attuale esportatore di documenti, è possibile esportare facilmente i valori delle colonne personalizzate. Per una semplice colonna personalizzata basata sul testo, è possibile utilizzare la seguente struttura generica:

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

Assicurarsi di sostituire il Name of Custom Column con il nome effettivo della colonna indicato nell'intestazione della colonna.

Se la colonna personalizzata non è un testo ed è un'opzione a selezione multipla, l'utente può utilizzare il codice seguente e aggiornarlo per il proprio caso d'uso.

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

Appendice - Struttura degli oggetti di dati dei modelli di esportazione delle attività di V&V

Ecco la struttura di base dell'oggetto da cui i modelli di esportazione delle attività di V&V estrarranno le informazioni.

AI-LocalizedLocalizzato tramite A
Se trovi un problema, seleziona il testo/l’immagine e premi Ctrl + Invio per inviarci il tuo feedback.
Disponibilità delle funzionalità

Le funzionalità disponibili dipendono dalla soluzione Altium in uso – Altium Develop, un’edizione di Altium Agile (Agile Teams o Agile Enterprise), oppure Altium Designer (con licenza attiva).

Se non vedi nel tuo software una funzionalità descritta,  contatta il team vendite di Altium per saperne di più.

Contenuto