Niestandardowe szablony eksportu dokumentów

Kreator eksportu dokumentów w Requirements & Systems Portal to podstawowe narzędzie do szybkiego tworzenia edytowalnych plików Microsoft Word *.docx bezpośrednio na podstawie wymagań i działań V&V. Możesz używać predefiniowanych szablonów lub przesyłać własne. Kreator korzysta z biblioteki Python-Docx-Template, która z kolei wykorzystuje silnik szablonów Jinja. Ten dynamiczny duet pozwala tworzyć niestandardowe szablony.

Biblioteka Python-Docx-Template

Biblioteka Python-Docx-Template to potężne narzędzie rozszerzające funkcjonalność biblioteki Python-Docx. Integruje silnik szablonów Jinja, umożliwiając dynamiczne generowanie treści w plikach Word. Oznacza to, że możesz używać zmiennych, pętli i warunków do dynamicznego wypełniania dokumentu danymi. Innymi słowy, to jak zastrzyk espresso dla dokumentu Word.

Zwróć uwagę, że dla pól będących tekstem sformatowanym w szablonie eksportu musi zostać użyty prefiks r. Na przykład pole tekstu wymagania musi zostać uwzględnione w szablonie jako r requirement.text.

Zarządzanie szablonami eksportu

Szablony dostępne dla instancji Requirements & Systems Portal są wymienione na stronie Export templates (  » Settings » Export templates).

  • Domyślnie dostępnych jest sześć szablonów – trzy do eksportu dokumentów wymagań i trzy do eksportu dokumentów działań V&V.

    • Więcej informacji o szablonach eksportu wymagań można znaleźć na stronie Document Export.

    • Więcej informacji o szablonach eksportu działań V&V można znaleźć na stronie Document Export.

  • Aby dodać nowy szablon zdefiniowany przez użytkownika, kliknij przycisk  w prawym górnym rogu strony. W wyświetlonym oknie Add template wybierz z listy rozwijanej Applicable objects, czy nowy szablon ma być stosowany do Requirements czy V&V Activities, a następnie użyj obszaru Select template, aby wybrać plik szablonu.

    Kliknij przycisk  w oknie dialogowym, aby dodać szablon. Zostanie on wyświetlony na liście na stronie Export templates i będzie można go następnie używać podczas eksportu dokumentów.

  • Plik dowolnego szablonu można pobrać. Aby to zrobić, kliknij przycisk  w kolumnie Name przy wymaganym szablonie i wybierz polecenie Download. Zgodnie z osobistymi ustawieniami przeglądarki plik zostanie automatycznie pobrany do zdefiniowanej lokalizacji albo przeglądarka zapyta, gdzie zapisać go na dysku twardym.

  • Szablon zdefiniowany przez użytkownika można nadpisać nowym plikiem szablonu. Aby to zrobić, kliknij przycisk  w kolumnie Name przy wymaganym szablonie i wybierz z wyświetlonego menu polecenie Overwrite Template. W otwartym oknie Overwrite template określ zastosowanie szablonu i wybierz nowy plik. Włącz opcję I confirm I want to overwrite i kliknij przycisk , aby zakończyć proces.

Dodatek – struktura obiektu danych szablonów eksportu wymagań

W instancji Requirements & Systems Portal dostępne są trzy domyślne szablony eksportu wymagań, z których każdy jest bardziej złożony od poprzedniego. Jeśli więc chcesz rozwinąć swoje umiejętności tworzenia szablonów, najlepiej przechodzić przez nie po kolei. Oto zestawienie:

  • spec_doc.docx – to prosty, standardowy szablon przeznaczony do tworzenia wyniku identycznego z widokiem dokumentu wymagań. Świetnie nadaje się dla początkujących i obejmuje proste pętle oraz zmienne.

  • spec_table.docx – poziom wyżej: ten szablon wprowadza warunki i filtry. To tutaj zaczyna się robić ciekawie. Jest to wersja Jinja naszego skryptowego szablonu Word z polami korespondencji seryjnej.

  • req_verification.docx – mistrz wśród naszych szablonów. Ten zawiera rozbudowane zagnieżdżone pętle i warunki, a także tabele. Jeśli go opanujesz, jesteś praktycznie Jedi szablonów dokumentów.

Możesz swobodnie dodawać, usuwać lub modyfikować sekcje, aby lepiej dopasować je do swoich potrzeb dokumentacyjnych. Po przejrzeniu domyślnych plików szablonów w podanej powyżej kolejności możesz poczuć się na tyle odważnie, by testować granice tego, co można uwzględnić w raportach.

Oto podstawowa struktura obiektu, z którego szablony eksportu wymagań będą pobierać informacje.

Sortowanie pól

Wymagania można sortować za pomocą funkcji Sort w dokumencie szablonu Jinja. Na przykład możesz dodać |sort(attribute='identifier') , gdzie wymagania są sortowane alfanumerycznie według kolumny identyfikatora.

Przykład:

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

Kolumny niestandardowe

Za pomocą obecnego eksportera dokumentów możesz łatwo eksportować wartości kolumn niestandardowych. W przypadku prostej kolumny niestandardowej opartej na tekście możesz użyć następującej ogólnej struktury:

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

Pamiętaj, aby zastąpić tekst Name of Custom Column rzeczywistą nazwą kolumny wskazaną w nagłówku kolumny.

Jeśli kolumna niestandardowa nie jest tekstowa i jest opcją wielokrotnego wyboru, użytkownik może użyć poniższego kodu i dostosować go do swojego przypadku użycia.

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

Dodatek – struktura obiektu danych szablonów eksportu działań V&V

Oto podstawowa struktura obiektu, z którego szablony eksportu działań V&V będą pobierać informacje.

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Dostępność funkcji

Dostępne funkcje zależą od tego, z którego rozwiązania Altium korzystasz – Altium Develop, Altium Agile Teams, Altium Agile Enterprise lub Altium Designer (w ramach aktywnej subskrypcji terminowej).

Jeśli opisana funkcja nie jest widoczna w Twoim oprogramowaniu, skontaktuj się z działem sprzedaży Altium, aby dowiedzieć się więcej.

Treść