Kamieniem węgielnym środowiska projektowania zespołowego w Altium Designer jest obsługa Workflows, które prowadzą projektantów w firmie przez typowe, codzienne procesy projektowe, takie jak zgłaszanie nowych elementów biblioteki Workspace, przeprowadzanie przeglądów projektu oraz tworzenie nowych projektów w Workspace.
Każdy Workflow używany do wdrożenia konkretnego procesu projektowego jest tworzony jako część Process Definition. Dlatego można go określać jako bazowy Workflow danego procesu lub po prostu jako Process Workflow. Nowe procesy można tworzyć, a istniejące edytować, za pomocą dedykowanego Process Workflow Editor. Ten dokument omawia sposób uzyskania dostępu do edytora oraz pracę z nim w celu zbudowania wymaganego workflow procesu.
Uzyskiwanie dostępu do edytora workflow procesu
Procesy są tworzone i zarządzane z poziomu obszaru Processes (Admin – Processes) w interfejsie przeglądarkowym Workspace.
Aby widzieć obszar Processes w interfejsie, musisz być zalogowany jako Administrator swojego Workspace.
Aby uzyskać dostęp do Process Workflow Editor, uaktywnij kartę motywu procesu, w ramach którego chcesz utworzyć nowy proces – Part Requests, Project Activities lub Project Creations – a następnie kliknij przycisk
w prawym górnym rogu strony.
Ważne jest, aby najpierw uaktywnić motyw, tak aby proces został utworzony z poprawnym Type.
Uzyskiwanie dostępu do Process Workflow Editor. Upewnienie się, że wybrany motyw procesu jest aktywny przed wejściem, spowoduje, że nowa definicja procesu zostanie ustawiona na właściwy typ motywu.
Process Workflow Editor udostępnia obszar roboczy (canvas), na którym można tworzyć żądany workflow w formie diagramu. Główny obszar edytora służy do budowy diagramu workflow, natomiast panel Properties po prawej stronie prezentuje właściwości związane z aktualnie zaznaczonym elementem diagramu.
Gdy w diagramie nie jest zaznaczony żaden umieszczony element, panel Properties będzie odzwierciedlał Name oraz Type (do którego motywu procesu należy) definicji procesu. Nadaj procesowi znaczącą nazwę, ponieważ będzie ona widoczna w interfejsie przeglądarkowym Workspace, a także w odpowiednich punktach dostępu w GUI Altium Designer – tak aby projektanci mogli inicjować instancję procesu (o ile jest on aktywowany do użycia).
Zwróć uwagę, że możesz zablokować pole Title dla użytkowników Workflow, odznaczając opcję Allow the initiator to change the process title w panelu Properties. Gdy opcja jest odznaczona (a proces zapisany), użytkownik, który aktywuje Workflow ( Initiator), nie może edytować jego tytułu; pozostaje on zablokowany jako „AUTO”. Takie aktywne lub zakończone procesy będą zatytułowane nazwą procesu z kolejnym numerem w sufiksie – <process name> #1, <process name> #2 itd.
Diagram Workflow
Diagram workflow procesu buduje się z użyciem różnych elementów dostępnych w palecie u góry obszaru.
Diagram workflow jest budowany z elementów dostępnych w palecie.
Poniższa tabela zawiera listę wszystkich możliwych elementów diagramu:
| Ikona |
Typ |
Opis |
 |
Connection |
Ten element umożliwia łączenie elementów punktów zdarzeń w workflow. Jego kształt można modyfikować graficznie, a choć domyślnie jego Name pozostaje puste, może to być przydatne do wskazywania/opisywania różnych ścieżek wychodzących z elementu rozgałęzienia w przepływie. |
 |
Start |
To jest punkt startowy workflow. Name jest domyślnie wypełniane w zależności od motywu – Submit Request (Part Requests), Start Activity (Project Activities), Create Project (Project Creations). W razie potrzeby można to zmienić. Informacje o domyślnych polach dodawanych do powiązanego formularza dla tego elementu znajdziesz w Built-in Fields oraz Default Fields.
Dla motywu procesu Project Activities ten element oferuje obsługę drugiego Type – Start Release. Jest to używane w workflow, w którym wydany projekt ma zostać opublikowany do zintegrowanej instancji PLM, w ramach Altium Designer Project Releaser.
Dla motywu procesu Project Creations dodatkowa właściwość Default server folder pozwala określić bazową ścieżkę folderu, w którym zostanie zapisany nowy projekt. Jeśli zostanie zdefiniowana, staje się domyślną lokalizacją dla tego workflow i może zostać nadpisana przez użytkownika w polu Server Folder formularza New Project (karta Advanced).
Więcej informacji o przełączaniu typu dla tego elementu znajdziesz w Changing the Type for a Workflow Element. |
 |
Event |
Ten element może służyć do pozyskania wyniku działania w zintegrowanej instancji PLM (zapewniając wynik OK lub FAIL, wraz z komunikatem i logiem). Aby to zrobić, ustaw odpowiednio Type dla motywu – PLM Part Completed (Part Requests), PLM Publish Completed (Project Activities), PLM Initialise Completed (Project Creations). Domyślnie Name jest wypełnione wpisem Type , ale można je zmienić według potrzeb.
Ten element może być również użyty do wysyłania i odbierania powiadomień do/z systemu zewnętrznego przy użyciu Enterprise Server EDS (wymaga dostępu do Enterprise Server SDK). Ustaw Type odpowiednio na Send lub Receive (w ramach workflow musisz mieć zdefiniowane zarówno zdarzenia Send, jak i Receive). Powiadomienia składają się z unikalnego identyfikatora Code oraz komunikatu. Zwróć uwagę, że Code musi być takie samo dla zdarzeń Send i Receive.
Dla Project Activities typ tego elementu można również ustawić na Related Tasks Completed. Służy to do użycia w sytuacji, gdy dodano komentarze i przypisano je jako zadania do konkretnych osób – powiązane z aktywnością dla samego projektu. Oznacza to, że workflow procesu dla tej aktywności nie może zostać zakończony, dopóki wszystkie powiązane zadania – przypisane komentarze – nie zostaną również rozwiązane.
|
 |
End |
To jest punkt końcowy workflow lub gałęzi tego workflow. Name dla elementu można ustawić na Completed, Rejected lub Cancelled. |
 |
Task |
Ten element reprezentuje zadanie do wykonania – coś, co jeden lub więcej użytkowników musi zrealizować. W workflow Project Activity opartym o przegląd może to być przekazanie informacji zwrotnej w ramach przeglądu. W workflow Part Request może to być praca nad konkretnym komponentem, o który poproszono, albo np. tylko nad jego symbolem lub footprintem.
Każde zadanie dostarcza lub pozyskuje dane od użytkownika poprzez dedykowany Form – zbudowany ze wszystkimi polami, zmiennymi i informacjami wymaganymi do osiągnięcia celu zadania. Więcej informacji znajdziesz w Building a Form.
Poza standardowym User Task (definiowanym w razie potrzeby poprzez formularz), każdy motyw procesu obsługuje jeden lub więcej dodatkowych typów – Create Part in PLM (Part Requests), Collect Project Data i Publish to PLM (Project Activities), Initialise in PLM (Project Creations). W każdym przypadku Name jest domyślnie ustawione na typ zadania, ale można je zmienić według potrzeb. Dla każdego typu należy zdefiniować dodatkowe ustawienia, które różnią się w zależności od typu, takie jak Assignee i Task Ownership. Dla zadania typu związanego z PLM służy to do pozyskania wyniku działania z instancją PLM (zapewniając wynik OK lub FAIL, wraz z komunikatem oraz (dla motywów Project Activities i Project Creations) właściwościami).
W motywie procesu Project Creations dodatkowa właściwość Default server folder pozwala określić bazową ścieżkę folderu, w którym zostanie zapisany nowy projekt. Jeśli zostanie zdefiniowana, staje się domyślną lokalizacją dla tego workflow i może zostać nadpisana przez użytkownika w polu Server Folder formularza New Project (karta Advanced).
Więcej informacji o przełączaniu typu dla tego elementu znajdziesz w Changing the Type for a Workflow Element.
|
 |
Branch |
Ten element umożliwia rozgałęzienie workflow w zależności od pozyskanych wyników z wcześniejszego punktu przepływu (np. pozyskanie wyboru użytkownika lub decyzji). Domyślnie Name pozostaje puste. |
 |
Comment |
Ten element pozwala dodawać komentarze do workflow – zwykle dodaje się komentarz w każdym punkcie przepływu, opisując, co powinno się w nim wydarzyć. Domyślnie Name pozostaje puste. |
Umieszczanie elementów workflow
Aby umieścić element z palety:
-
Kliknij wpis elementu w palecie. Instancja elementu pojawi się, podświetlona na niebiesko, „przyklejona” do kursora.
-
Ustaw element w wymaganym miejscu na obszarze roboczym workflow i kliknij (lub kliknij prawym przyciskiem), aby go umieścić. Podczas przesuwania elementu po obszarze roboczym będą pojawiać się prowadnice wyrównania względem poziomych i pionowych środków już umieszczonych elementów.
-
Aby anulować umieszczanie, naciśnij Esc.

Przykładowe umieszczenie elementów na obszarze roboczym workflow (Start, End oraz User Task). Zwróć uwagę na dynamiczne prowadnice wyrównania, które pomagają podczas rozmieszczania.
Łączenie elementów workflow
Aby połączyć dwa elementy workflow:
-
Kliknij wpis
w palecie.
-
Ustaw kursor nad pierwszym (źródłowym) elementem do połączenia i kliknij.
-
Przesuń kursor, aby zobaczyć linię połączenia wychodzącą z elementu. Ustaw kursor nad drugim (docelowym) elementem do połączenia i kliknij.
Połączenia między elementami powinny przebiegać od lewej do prawej, ponieważ jest to logiczny kierunek przepływu. Nie będzie można wybrać elementu docelowego, dla którego połączenie jest uznane za nieprawidłowe (np. próba połączenia elementu
End z elementem
Start). W takim przypadku element docelowy pojawi się z czerwonym wypełnieniem, a koniec linii połączenia pozostanie z ikoną „zabronione” (

).
-
Kontynuuj umieszczanie kolejnych połączeń albo kliknij prawym przyciskiem, albo naciśnij Esc, aby zakończyć.

Przykładowe połączenie elementów w workflow.
Przenoszenie elementów workflow
Aby przenieść element, kliknij go i przeciągnij do żądanej nowej lokalizacji. Jeśli element jest połączony z jednym lub większą liczbą innych elementów za pomocą połączeń, połączenia te zostaną zachowane, a przebieg linii połączenia (linii połączeń) zostanie odpowiednio zmodyfikowany. Do pozycjonowania używaj dynamicznych prowadnic wyrównania, które się pojawiają.
Aby przenieść wiele elementów, najpierw je zaznacz – albo przez Ctrl+kliknięcie każdego wymaganego elementu, albo przez kliknięcie i przeciągnięcie ramki zaznaczenia wokół tych elementów.

Przykład przesunięcia jednego, a następnie wielu umieszczonych elementów. Zwróć uwagę, że połączenia – o ile nie są częścią zaznaczenia – zostaną zmodyfikowane tak, aby elementy pozostały odpowiednio połączone.
Modyfikowanie połączenia
Gdy najedziesz kursorem na połączenie, dostępne stają się różne kontrolki edycji, czyli „uchwyty”. Umożliwiają one graficzne wprowadzenie następujących modyfikacji połączenia:
-
Kliknij i przeciągnij uchwyt
, aby przesunąć połączenie wyłącznie w płaszczyźnie pionowej.
-
Kliknij i przeciągnij uchwyt
, aby przesunąć połączenie wyłącznie w płaszczyźnie poziomej.
-
Przesuwaj kursor wzdłuż połączenia – uchwyt
będzie podążał za kursorem. Kliknij i przeciągnij ten uchwyt, aby utworzyć nowy punkt wierzchołkowy (vertex) dla połączenia.
-
Kliknij i przeciągnij uchwyt
, aby przesunąć punkt początkowy połączenia. Musisz przeciągnąć ten punkt na inny istniejący element.
-
Kliknij i przeciągnij uchwyt
, aby przesunąć punkt końcowy połączenia. Musisz przeciągnąć ten punkt na inny istniejący element.
Nieprawidłowy punkt upuszczenia podczas przenoszenia punktu początkowego lub końcowego połączenia jest sygnalizowany przez wypełnienie elementu na czerwono (oraz pojawienie się ikony

na końcu połączenia). Może się to zdarzyć na przykład wtedy, gdy spróbujesz przenieść punkt początkowy połączenia na ten sam element, do którego jest już podłączony punkt końcowy tego połączenia. W takim przypadku najpierw przesuń punkt końcowy, a dopiero potem punkt początkowy.
Dodatkowo ścieżka połączenia będzie automatycznie modyfikowana tak, aby pozostało ono podłączone do elementu, który jest przenoszony i z którym jest aktualnie połączone.

Przykład modyfikacji istniejących połączeń z użyciem różnych uchwytów edycji, które pojawiają się po najechaniu na połączenie.
Modyfikowanie właściwości elementu
Jak wspomniano wcześniej, po prawej stronie Process Workflow Editor znajduje się panel Properties, prezentujący właściwości aktualnie zaznaczonego elementu przepływu pracy. Dla niektórych elementów, takich jak Connection, Branch, End i Comment, jedyną edytowalną właściwością jest ich Name. Dla innych, takich jak Start i Task, dostępne są ustawienia, które można zdefiniować, a także powiązany Form, który można przygotować zgodnie z potrzebami. Pamiętaj też, że właściwości elementu przepływu pracy mogą się zmieniać w zależności od motywu procesu, w ramach którego proces jest definiowany (oraz od wybranego typu elementu, jeśli dla danego elementu obsługiwanych jest wiele typów).
Panel właściwości prezentujący domyślne właściwości elementu przepływu pracy Start (podczas definiowania procesu w ramach motywu Project Activities oraz przy ustawieniu Type elementu na Start Activity). Najedź kursorem na obraz, aby wyświetlić domyślne właściwości, gdy zaznaczony jest element Task (skonfigurowany jako User Task).
Wprowadzaj wymagane zmiany właściwości zaznaczonego elementu przepływu pracy w panelu Properties. Dla elementu, dla którego można zdefiniować Form, musisz albo utworzyć formularz (kliknij przycisk
w sekcji Form panelu), albo go edytować (kliknij wpis
w sekcji Form panelu). Więcej informacji znajdziesz w Building a Form.
Pamiętaj: jeśli aktualnie nie jest zaznaczony żaden element przepływu pracy, panel
Properties prezentuje właściwości samej nadrzędnej definicji procesu. Ponadto, gdy nie są zaznaczone żadne elementy przepływu pracy, masz możliwość skonfigurowania danych parametrycznych widocznych dla standardowego użytkownika na karcie
Data dla przepływu pracy procesu. Więcej szczegółów:
Configuring Data Visibility for a Standard User.
Element Comment można również modyfikować graficznie pod względem rozmiaru: zaznacz go, a następnie kliknij i przeciągnij jego uchwyty edycji.
Zmienianie typu elementu przepływu pracy
Następujące motywy procesu mają elementy przepływu pracy obsługujące wiele typów:
-
Part Requests motyw:
-
Task – obsługuje typy:
User Task, Change State, Create Part in PLM.
-
Event – obsługuje typy:
Send, Receive, Notify User, PLM Part Completed.
-
Project Activities motyw:
-
Start – obsługuje typy:
Start Activity, Start Release.
-
Task – obsługuje typy:
User Task, Change State, Collect Project Data, Publish to PLM.
-
Event – obsługuje typy:
Send, Receive, Notify User, PLM Publish Completed, Related Tasks Completed.
-
Project Creations motyw:
-
Task – obsługuje typy:
User Task, Create Project, Change State, Initialise in PLM.
-
Event – obsługuje typy:
Send, Receive, Notify User, PLM Initialise Completed.
Po umieszczeniu elementu na obszarze roboczym diagramu przepływu pracy możesz przełączać się między dostępnymi typami, korzystając z menu powiązanego z przyciskiem
, który pojawia się wewnątrz/obok elementu po jego zaznaczeniu.
Przełączanie między typami obsługiwanymi dla elementów Start, Task i Event podczas definiowania przepływu pracy dla procesu należącego do motywu procesu Project Activities.
Oczywiście możesz też zmienić typ, używając listy rozwijanej powiązanej z polem Type w panelu Properties , gdy element jest zaznaczony.
Przypisywanie zadania
To, w jaki sposób zadanie w ramach przepływu pracy zostaje przypisane, zależy od ustawień zdefiniowanych dla Assignee, Except i Task ownership:
-
Assignee – może to być pojedynczy użytkownik w Twoim Workspace, wielu użytkowników lub konkretna grupa. Można tu również używać zmiennych, na przykład $Initiator (osoba, która uruchomiła instancję procesu) lub $Review Coordinator (użytkownik wybrany jako Review Coordinator w poprzednim zadaniu).
Zmienne nie są wprowadzane tekstowo, lecz wyszukiwane, a następnie wybierane z dynamicznej listy możliwych wpisów. Aby dodać na przykład zmienną $Initiator, zacznij wpisywać In w polu, a następnie wybierz pozycję z listy.
-
Except – kto nie ma prawa pracować nad zadaniem, nawet jeśli należy do zakresu przypisania. Na przykład wnioskodawca części nie powinien zatwierdzać własnego wniosku o część! Innym przykładem może być użycie zmiennej $Rework executed by w polu Except dla zadania Verify rework w procesie Milestone Review, aby uniemożliwić użytkownikowi, który wykonał poprzednie zadanie (Rework), weryfikowanie własnej pracy.
-
Task ownership – określa, kto może podjąć działanie w ramach zadania w odniesieniu do użytkownika(-ów) wskazanych w polu Assignee. Dostępne są następujące opcje:
-
One of assigned users – jeśli w polu Assignee jest tylko jeden użytkownik, początkowe zadanie pracy nad zgłoszeniem jest przypisywane bezpośrednio do tego użytkownika. Jeśli przypisanych jest wielu wykonawców, wszyscy użytkownicy widzą zadanie na swojej liście zadań, a jeden z nich przypisuje zadanie do siebie.
-
All assigned users – wszyscy przypisani otrzymują zadanie.
Poniższy obraz pokazuje ustawienia przypisania dla definicji procesu Part Request. Assignee jest zdefiniowany jako administratorzy Workspace (członkowie grupy Administrators). Task ownership jest ustawione na One of assigned users, co oznacza, że jeden z tych użytkowników administracyjnych musi podjąć zgłoszenie.

To, który użytkownik początkowo otrzyma zadanie pracy nad nowym wnioskiem o część, zależy od tego, jak zdefiniowano ustawienia Assignee, Except i Task ownership dla początkowego zadania użytkownika – w bazowym przepływie pracy dla odpowiedniej definicji procesu. Powyższy obraz pokazuje ustawienia dla domyślnej definicji procesu New Part Request.
Jeśli chcesz uniemożliwić pierwotnemu zgłaszającemu wniosek o część pracę nad tym wnioskiem, wpisz zmienną $Initiator w polu Except .
Konfigurowanie widoczności danych dla standardowego użytkownika
Masz możliwość skonfigurowania danych parametrycznych widocznych dla standardowego użytkownika na karcie Data dla przepływu pracy procesu – podczas przeglądania postępu aktywnej instancji tego procesu. Podczas edycji przepływu pracy procesu, gdy nie jest zaznaczony żaden element, dane, które mogą być prezentowane na karcie Data , są wymienione w panelu Properties . Kliknij kontrolkę
, aby uzyskać dostęp do powiązanego formularza (<ProcessName> Data).
Z poziomu tego formularza możesz określić, czy dany parametr ma być widoczny na karcie Data . Domyślnie parametr jest widoczny (
). Kliknij tę kontrolkę, aby uczynić go niewidocznym (
). Dodatkowo możesz sterować kolejnością prezentacji danych. Gdy najedziesz kursorem na wpis parametru, po jego lewej stronie pojawi się kontrolka
. Kliknij i przytrzymaj ją, a następnie przeciągnij parametr na nową pozycję.
Ta funkcja wpływa wyłącznie na to, co może zobaczyć standardowy (nieadministracyjny) użytkownik. Jeśli jesteś zalogowany do Workspace jako administrator, zobaczysz wszystkie dane niezależnie od ustawień.
Poniższy obraz pokazuje zależność między formularzem a tym, co widzi użytkownik administracyjny oraz standardowy (nieadministracyjny) na karcie Data dla procesu. W tym przykładzie parametry Description i Datasheets są ukryte przed standardowym użytkownikiem.
Usuwanie elementu przepływu pracy
Aby usunąć element przepływu pracy, zaznacz go, a następnie użyj skrótu klawiaturowego Delete. Aby usunąć wiele elementów, kliknij i przeciągnij ramkę zaznaczenia wokół nich lub użyj Ctrl+kliknięcia, aby pojedynczo zbudować zaznaczenie, a następnie użyj skrótu Delete.
Tworzenie formularza
Dwa elementy przepływu pracy – Start i Task – polegają na poproszeniu użytkownika o wykonanie jakiejś czynności. Może to być prośba o informacje inicjalizacyjne (nazwa i typ projektu, początkowy zestaw danych do przeglądu, żądany numer części, producent i karty katalogowe) lub inne zadanie w przebiegu, które w jakiś sposób wymaga dodatkowych danych wejściowych od użytkownika (decyzja przeglądu, dodatkowe dane, komentarze, gotowa część dla wniosku itd.). Oba te elementy można traktować jako task-oriented.
Aby udostępnić niezbędne pola i zmienne, które ułatwiają taką interakcję użytkownika, tworzony jest Form. W niektórych przypadkach Formularz już istnieje i zawiera wbudowane pola, których nie można usunąć, podczas gdy w innych dostępny jest Formularz z polami domyślnymi, ale można je zmodyfikować według potrzeb. Są też przypadki, w których Formularz nie istnieje — wtedy masz stosunkowo dużą swobodę, aby przygotować Formularz tak prosty lub tak złożony, jak wymaga tego Twoja firma.
Poniższa lista pokazuje wszystkie warianty tych dwóch zadań, które używają/wymagają Formularza:
-
Start (motyw Part Requests) – istniejący Formularz z polami domyślnymi. Można je edytować lub usuwać oraz definiować wartości domyślne tam, gdzie ma to zastosowanie. W razie potrzeby można dodać dodatkowe pola.
-
Start typu Start Activity (motyw Project Activities) – istniejący Formularz z wbudowanym polem. Nie można go usunąć. W razie potrzeby można dodać dodatkowe pola.
-
Start (motyw Project Creations) – istniejący Formularz z wbudowanymi polami. Nie można ich usunąć. Tam, gdzie ma to zastosowanie, można zdefiniować wartości domyślne. W razie potrzeby można dodać dodatkowe pola.
-
Task typu User Task (wszystkie motywy procesów) – brak istniejącego Formularza. Utwórz według potrzeb.
-
Task typu Collect Project Data (tylko motyw Project Activities) – istniejący Formularz z wbudowanym polem. Nie można go usunąć. W razie potrzeby można dodać dodatkowe pola.
-
Task typu
Create Project (motyw Project Creations) – istniejący Formularz z wbudowanymi polami. Nie można ich usunąć. Tam, gdzie ma to zastosowanie, można zdefiniować wartości domyślne. W razie potrzeby można dodać dodatkowe pola.
Edytor formularzy użytkownika
Formularz tworzy się za pomocą User Form Editor. Dla elementu, dla którego można zdefiniować Form, musisz albo utworzyć formularz, jeśli jeszcze nie istnieje (zaznacz element w przepływie pracy i kliknij przycisk
w sekcji Form panelu Properties), albo edytować go, jeśli już istnieje (zaznacz element w przepływie pracy i kliknij pozycję
w sekcji Form panelu Properties).
Formularz buduje się poprzez dodawanie pól — reprezentujących nazwane zmienne — o wymaganych typach oraz poprzez ustawianie flag (tam, gdzie ma to zastosowanie) określających sposób użycia tych pól; w praktyce jest to tworzenie interfejsu, za pomocą którego przekazuje się informacje do docelowego użytkownika (użytkowników) wykonującego zadanie oraz pozyskuje się od niego (nich) informacje.
Po zapisaniu formularza — kliknij przycisk
na dole Formularza — na panelu Properties dla wybranego elementu przepływu pracy zostanie wyświetlone podsumowanie wszystkich zdefiniowanych na nim pól wraz z ich typami zmiennych.
Przykład User Form Editor wypełnionego Formularzem dla zadania użytkownika Provide review feedback (część definicji procesu Milestone Review, w ramach motywu Project Activities). Zwróć uwagę, że panel Properties zapewnia wygodne podsumowanie wszystkich pól zdefiniowanych w Formularzu wraz z ich typami.
Poniższe sekcje omawiają mechanikę User Form Editor, w tym obsługę zmiennych i pól, powiązane flagi dla każdego pola/zmiennej, pracę w Formularzu oraz wbudowane/domyślne pola i zmienne.
Zmienne i pola
Rzeczy, o których warto pamiętać w odniesieniu do zmiennych i pól:
-
A Variable to nazwany element danych, śledzony jako część przepływu pracy dla procesu.
-
A Field to reprezentacja zmiennej w kontekście konkretnego Formularza użytkownika w przepływie pracy dla procesu.
-
Nie ma dedykowanej funkcjonalności do zarządzania zmiennymi dla procesu:
-
Zmienna zdefiniowana przez użytkownika jest dodawana do procesu, gdy administrator po raz pierwszy doda ją do Formularza w przepływie pracy dla tego procesu.
-
Zmienna zdefiniowana przez użytkownika jest usuwana z procesu, gdy zostanie usunięta ze wszystkich Formularzy używanych w przepływie pracy tego procesu.
-
Większość zmiennych zostanie zdefiniowana przez administratora podczas tworzenia Formularzy w przepływie pracy dla definicji procesu. Istnieją pewne predefiniowane zmienne, wbudowane w definicję procesu dla określonych elementów przepływu pracy. Można ich używać także w innych Formularzach zdefiniowanych przez użytkownika, ale pozostają zdefiniowane dla procesu nawet wtedy, gdy zostaną usunięte ze wszystkich Formularzy w przepływie pracy.
-
W procesie istnieje tylko jedna definicja zmiennej, co oznacza, że niezależnie od tego, gdzie ta zmienna jest edytowana (w dowolnym Formularzu), zmiany są automatycznie odzwierciedlane we wszystkich pozostałych Formularzach używanych w tym przepływie pracy, w których ta zmienna jest wykorzystywana.
-
Nazwy zmiennych nie rozróżniają wielkości liter (tzn. nie można mieć dwóch zmiennych różniących się wyłącznie wielkością liter).
Supported Variable Types
Poniższa tabela zawiera typy zmiennych obsługiwane do użycia w Formularzu.
Built-in Fields
Istnieją pola, które są „wbudowane” dla określonych typów zadań. Tych pól nie można usunąć z Formularza, z którego pochodzą, nie można ich zmienić nazwy ani zmienić ich typu. Tam, gdzie ma to zastosowanie, można zdefiniować wartość domyślną. Można ich używać w innych Formularzach użytkownika, z następującymi ograniczeniami:
-
Flagi nie są wyświetlane — pola są tylko do odczytu i nie są wymagane.
-
Wartości (tam, gdzie ma to zastosowanie) nie można zmienić, ale można zmienić wartość domyślną (tam, gdzie ma to zastosowanie).
Poniżej znajduje się lista typów zadań z wbudowanymi polami. W każdym przypadku typ zmiennej/danych jest pokazany w nawiasie po nazwie pola.
element typu
Start Activity (motyw Project Activities):
-
Project (Managed Project) – aktywne flagi Editable i Required (nie można ich zmienić).
Task element typu Collect Project Data (motyw Project Activities):
-
Data (Data Set) – aktywna flaga Editable, nieaktywne flagi Required i Reset value (ale można je zmienić, jeśli jest to wymagane).
Task element typu Publish to PLM (motyw Project Activities):
-
Publish to PLM Template (PLM Publish Template).
Start element (motyw Project Creations):
-
Project Name (Single Line Text) – aktywne flagi Editable i Required (nie można ich zmienić). Wartość domyślna nie jest ustawiona (edytowalna).
-
Description (Single Line Text) – aktywna flaga Editable (nie można jej zmienić), flaga Required nieaktywna (ale można ją zmienić, jeśli jest to wymagane). Wartość domyślna nie jest ustawiona (edytowalna).
-
PCB Project Type (Dropdown) – aktywne flagi Editable i Required (nie można ich zmienić). Wartość (opcje listy rozwijanej) jest na stałe ustawiona na PCB Project i Multiboard. Wartość domyślna ustawiona na None; można ją zmienić na PCB Project lub Multiboard.
-
Project Template (Project Template) – aktywna flaga Editable (nie można jej zmienić), flaga Required nieaktywna (ale można ją zmienić, jeśli jest to wymagane).
Task element typu Initialise in PLM (motyw Project Creations):
-
Initialise in PLM Template (PLM Publish Template).
Task element typu Create Project (motyw Project Creations)
-
Project Name (Single Line Text) – aktywne flagi Editable i Required (nie można ich zmienić). Wartość domyślna nie jest ustawiona (edytowalna). Flaga Reset Value nieaktywna (można ją zmienić).
-
Description (Single Line Text) – aktywna flaga Editable (nie można jej zmienić), flaga Required nieaktywna (ale można ją zmienić, jeśli jest to wymagane). Wartość domyślna nie jest ustawiona (edytowalna). Flaga Reset Value nieaktywna (można ją zmienić).
-
PCB Project Type (Dropdown) – aktywne flagi Editable i Required (nie można ich zmienić). Wartość (opcje listy rozwijanej) jest na stałe ustawiona na PCB Project i Multiboard. Wartość domyślna ustawiona na None; można ją zmienić na PCB Project lub Multiboard. Flaga Reset Value nieaktywna (można ją zmienić).
-
Project Template (Project Template) – aktywna flaga Editable (nie można jej zmienić), flaga Required nieaktywna (ale można ją zmienić, jeśli jest to wymagane). Flaga Reset Value nieaktywna (można ją zmienić).
Default Fields
Istnieją pewne pola, które są domyślnie dodawane do elementów przepływu pracy opartych na zadaniach. Zachowują się one tak samo jak każde inne pole zdefiniowane przez użytkownika, dlatego w razie potrzeby można je modyfikować i/lub usuwać. Stanowią po prostu punkt wyjścia dla formularza, do którego zostały dodane.
Na przykład poniższy typ zadania ma pola domyślne. Dla każdego pola typ zmiennej/danych jest pokazany w nawiasach po nazwie pola.
-
Start element (motyw Part Requests):
-
Part number (Single Line Text) – aktywna flaga Editable (nie można jej zmienić), aktywna flaga Required (ale można ją zmienić, jeśli jest to wymagane). Wartość domyślna nie jest ustawiona (edytowalna).
-
Manufacturer (Single Line Text) – aktywna flaga Editable (nie można jej zmienić), aktywna flaga Required (ale można ją zmienić, jeśli jest to wymagane). Wartość domyślna nie jest ustawiona (edytowalna).
-
Description (Single Line Text) – aktywna flaga Editable (nie można jej zmienić), flaga Required nieaktywna (ale można ją zmienić, jeśli jest to wymagane). Wartość domyślna nie jest ustawiona (edytowalna).
-
Datasheets (File Upload) – aktywna flaga Editable (nie można jej zmienić), flaga Required nieaktywna (ale można ją zmienić, jeśli jest to wymagane).
Built-in Variables
Są to zmienne wbudowane w proces lub zadanie. Można ich używać w innych formularzach użytkownika, z następującymi ograniczeniami:
-
Żadne flagi nie są wyświetlane – domyślnie są tylko do odczytu (Read-only) i nie są wymagane.
-
Nie można zmienić ich typu.
-
Nie można zmienić ich nazw.
-
Nawet po usunięciu ze wszystkich formularzy w przepływie pracy nie są usuwane z definicji procesu (jak w przypadku standardowego pola/zmiennej zdefiniowanej przez użytkownika).
Niektóre wbudowane zmienne – takie jak Initiator oraz <TaskName> executed by – mogą być używane w innych formularzach użytkownika, na przykład jako informacja, ale mogą też być używane w polach warunkowych, które są częścią ustawień zadania, a nie samego formularza. Poniższy obraz pokazuje wbudowaną zmienną Prepare review data executed by, która zostanie wygenerowana jako wynik po zakończeniu zadania Prepare review data. Osoba uprawniona do pracy nad zadaniem jest zdefiniowana jako ta sama osoba, która uruchomiła proces, poprzez użycie wpisu $Initiator w polu Assignee .
Przykładowe wbudowane zmienne – zmienna Initiator używana do zdefiniowania osoby przypisanej do zadania, natomiast zmienna Prepare review data executed by zostanie wygenerowana przez zadanie po jego zakończeniu.
Innym przykładem może być użycie takiej zmiennej, aby zapobiec przypisaniu zadania użytkownikowi. Na poniższym obrazie zmienna $Rework executed by jest użyta w polu Except dla zadania Verify rework w procesie Milestone Review, aby uniemożliwić użytkownikowi, który wykonał poprzednie zadanie (Rework), weryfikację własnej pracy.
Przykład użycia wbudowanej zmiennej, aby uniemożliwić użytkownikowi weryfikację własnej pracy!
Poniżej znajduje się lista wbudowanych zmiennych według motywu procesu. Dla każdej zmiennej jej typ jest podany w nawiasach po nazwie.
Part Requests
-
Initiator (Single Line Text) – głównie powiązana z elementem Start. Wartością jest nazwa użytkownika, który uruchomił tę konkretną instancję aktywowanej definicji procesu.
-
<TaskName> executed by (Single Line Text) – głównie powiązana z elementem Task (typu User Task). Wartością jest nazwa użytkownika, który wykonał zadanie.
-
Create Part in PLM Status (Dropdown) – głównie powiązana z elementem Task (typu Create Part in PLM). Wynik procesu tworzenia części PLM. Wartość może wynosić OK lub FAIL.
-
Create Part in PLM Message (Single Line Text) – głównie powiązana z elementem Task (typu Create Part in PLM). Wynik procesu tworzenia części PLM. Wartością jest jednoliniowy komunikat tekstowy.
-
Change State Status (Dropdown) – głównie powiązana z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartość może wynosić OK lub FAIL.
-
Change State Success (Item/Revision) – głównie powiązana z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartością jest lista rewizji elementów, dla których pomyślnie zmieniono stan cyklu życia.
-
Change State Failure (Item/Revision) – głównie powiązana z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartością jest lista rewizji elementów, dla których nie udało się zmienić stanu cyklu życia.
-
Receive <Code> Status (Single Line Text) – głównie powiązana z elementem Event (typu Receive). Wartością jest status przekazany przez odbiornik powiadomień systemu zewnętrznego (np. OK).
-
Receive <Code> Message (Multi Line Text) – głównie powiązana z elementem Event (typu Receive). Wartością jest komunikat przekazany przez odbiornik powiadomień systemu zewnętrznego (np. komunikat błędu).
-
PLM Part Completed Status (Dropdown) – głównie powiązana z elementem Event (typu PLM Part Completed). Wynik procesu tworzenia części PLM, odesłany z instancji PLM. Wartość może wynosić OK lub FAIL.
-
PLM Part Completed Message (Multi Line Text) – głównie powiązana z elementem Event (typu PLM Part Completed). Wynik procesu tworzenia części PLM, odesłany z instancji PLM. Wartością jest wieloliniowy komunikat tekstowy.
-
PLM Part Completed Log (File Upload) – głównie powiązana z elementem Event (typu PLM Part Completed). Wynik procesu tworzenia części PLM, odesłany z instancji PLM. Wartością jest łącze do pliku dziennika.
Project Activities
-
Initiator (Single Line Text) – głównie powiązana z elementem Start. Wartością jest nazwa użytkownika, który uruchomił tę konkretną instancję aktywowanej definicji procesu.
-
Start Release Data (Data Set) – głównie powiązana z elementem Start (typu Start Release). Wartością jest lista rewizji wygenerowanych przez Project Releaser.
-
<TaskName> executed by (Single Line Text) – głównie powiązana z elementem Task (typu User Task lub Collect Project Data). Wartością jest nazwa użytkownika, który wykonał zadanie.
-
Publish to PLM Status (Dropdown) – głównie powiązana z elementem Task (typu Publish to PLM). Wynik procesu inicjalizacji publikowania PLM. Wartość może wynosić OK lub FAIL.
-
Publish to PLM Message (Single Line Text) – głównie powiązana z elementem Task (typu Publish to PLM). Wynik procesu inicjalizacji publikowania PLM. Wartością jest jednoliniowy komunikat tekstowy.
-
Publish to PLM Properties (Properties) – głównie powiązana z elementem Task (typu Publish to PLM). Wynik procesu inicjalizacji publikowania PLM. Wartością jest tabela par klucz–wartość właściwości.
-
Change State Status (Dropdown) – głównie powiązana z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartość może wynosić OK lub FAIL.
-
Change State Success (Item/Revision) – głównie powiązana z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartością jest lista rewizji elementów, dla których pomyślnie zmieniono stan cyklu życia.
-
Change State Failure (Item/Revision) – głównie powiązana z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartością jest lista rewizji elementów, dla których nie udało się zmienić stanu cyklu życia.
-
Receive <Code> Status (Single Line Text) – głównie powiązana z elementem Event (typu Receive). Wartością jest status przekazany przez odbiornik powiadomień systemu zewnętrznego (np. OK).
-
Receive <Code> Message (Multi Line Text) – głównie powiązane z elementem Event (typu Receive). Wartością jest komunikat dostarczony przez odbiornik powiadomień systemu zewnętrznego (np. komunikat błędu).
-
PLM Publish Completed Status (Dropdown) – głównie powiązane z elementem Event (typu PLM Publish Completed). Wynik procesu publikacji do PLM, odesłany z instancji PLM. Wartość może wynosić OK lub FAIL.
-
PLM Publish Completed Message (Multi Line Text) – głównie powiązane z elementem Event (typu PLM Publish Completed). Wynik procesu publikacji do PLM, odesłany z instancji PLM. Wartością jest wielowierszowy komunikat tekstowy.
-
PLM Publish Completed Log (File Upload) – głównie powiązane z elementem Event (typu PLM Publish Completed). Wynik procesu publikacji do PLM, odesłany z instancji PLM. Wartością jest łącze do pliku dziennika.
Project Creations
-
Initiator (Single Line Text) – głównie powiązane z elementem Start. Wartością jest nazwa użytkownika, który uruchomił tę konkretną instancję aktywowanej definicji procesu.
-
<TaskName> executed by (Single Line Text) – głównie powiązane z elementem Task (typu User Task). Wartością jest nazwa użytkownika, który wykonał zadanie.
-
Create Project executed by (Single Line Text) – głównie powiązane z elementem Task (typu Create Project). Wartością jest nazwa użytkownika, który wykonał zadanie Create Project.
-
Create Project Status (Dropdown) – głównie powiązane z elementem Task (typu Create Project). Wynik procesu Create Project. Wartość może wynosić OK lub FAIL.
-
Initialise in PLM Status (Dropdown) – głównie powiązane z elementem Task (typu Initialise in PLM). Wynik procesu inicjalizacji projektu w PLM. Wartość może wynosić OK lub FAIL.
-
Initialise in PLM Message (Single Line Text) – głównie powiązane z elementem Task (typu Initialise in PLM). Wynik procesu inicjalizacji projektu w PLM. Wartością jest jednoliniowy komunikat tekstowy.
-
Initialise in PLM Properties (Properties) – głównie powiązane z elementem Task (typu Initialise in PLM). Wynik procesu inicjalizacji projektu w PLM. Wartością jest tabela par klucz–wartość właściwości.
-
Change State Status (Dropdown) – głównie powiązane z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartość może wynosić OK lub FAIL.
-
Change State Success (Item/Revision) – głównie powiązane z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartością jest lista rewizji elementów, dla których pomyślnie zmieniono stany cyklu życia.
-
Change State Failure (Item/Revision) – głównie powiązane z elementem Task (typu Change State). Wynik procesu Change Lifecycle State. Wartością jest lista rewizji elementów, dla których nie udało się zmienić stanu cyklu życia.
-
Receive <Code> Status (Single Line Text) – głównie powiązane z elementem Event (typu Receive). Wartością jest status dostarczony przez odbiornik powiadomień systemu zewnętrznego (np. OK).
-
Receive <Code> Message (Multi Line Text) – głównie powiązane z elementem Event (typu Receive). Wartością jest komunikat dostarczony przez odbiornik powiadomień systemu zewnętrznego (np. komunikat błędu).
-
PLM Initialise Completed Status (Dropdown) – głównie powiązane z elementem Event (typu PLM Initialise Completed). Wynik procesu inicjalizacji projektu w PLM, odesłany z instancji PLM. Wartość może wynosić OK lub FAIL.
-
PLM Initialise Completed Message (Multi Line Text) – głównie powiązane z elementem Event (typu PLM Initialise Completed). Wynik procesu inicjalizacji projektu w PLM, odesłany z instancji PLM. Wartością jest wielowierszowy komunikat tekstowy.
-
PLM Initialise Completed Message (File Upload) – głównie powiązane z elementem Event (typu PLM Initialise Completed). Wynik procesu inicjalizacji projektu w PLM, odesłany z instancji PLM. Wartością jest łącze do pliku dziennika.
Flagi
W zależności od typu zmiennej dla pola zdefiniowanego w formularzu, może ono mieć maksymalnie trzy flagi:
-
Editable – włącz tę flagę, aby pole było edytowalne, np. aby można było wpisać nazwę projektu, wprowadzić datę, dodać dane itd.
-
Required – włącz tę flagę, aby pole było wymagane, co oznacza, że użytkownik musi wybrać opcję lub wprowadzić dane, aby móc wysłać zadanie.
-
Reset value – włącz tę flagę, aby wartość pola była resetowana przy wejściu do formularza. Jeśli ma zastosowanie wartość domyślna i została ustawiona, zostanie ona wczytana; w przeciwnym razie pole będzie puste (lub pokaże Choose option w przypadku pola listy rozwijanej).
Może to być bardzo przydatne w przepływie pracy zawierającym „pętlę”. Przykładem może być workflow procesu zgłoszenia części, w którym użytkownik weryfikuje zgłoszenie i ustawia pole Next step na Needs more info. Zgłaszający uzupełnia informacje i wraca to (tu następuje pętla) do weryfikacji. Jeśli pole Next step ma włączoną flagę Reset value, wówczas pole zostanie zresetowane i nie będzie już wstępnie wypełnione wartością Needs more info. Weryfikujący musi więc świadomie wybrać wartość dla tego pola.
Przykłady zdefiniowanych pól w formularzu wraz z ich flagami.
Pod względem wyświetlania flaga może wyglądać następująco:
-
Niebieska – flagę można zmienić i jest obecnie aktywna.
-
Szara – flagę można zmienić i jest obecnie nieaktywna.
-
Przygaszony niebieski – flaga jest aktywna i nie można jej zmienić.
-
Niewyświetlana – flaga nie ma zastosowania.
Gdy flagę można zmienić, kliknij ją, aby przełączyć jej stan aktywności.
Pola nie można ustawić jako Wymagane, jeśli wcześniej nie zostanie ustawione jako Edytowalne.
Opcje zaawansowane
Jeśli typ zmiennej obsługuje dodatkowe opcje, będzie z nim powiązana kontrolka Advanced options – kliknij ją, aby rozwinąć i je zobaczyć.
Przykłady Advanced options dla różnych zdefiniowanych pól w formularzu.
W zależności od typu zmiennej można tu znaleźć następujące opcje:
-
Keep value provided by each user separately – umożliwia użycie pola do „zbierania” wartości podanych w formularzach wysłanych przez wielu użytkowników biorących udział w zadaniu, np. podczas przeglądu projektu.
-
Dropdown options – dla zmiennej typu Dropdown zdefiniuj tutaj wpisy, które mogą pojawić się do wyboru użytkownika w powiązanym z polem menu listy rozwijanej.
-
Default value – podaj wartość domyślną, która będzie prezentowana jako „wstępnie wypełniona” wartość pola, gdy użytkownik otworzy formularz powiązany z zadaniem. Jeśli pole jest typu Dropdown, wartość domyślną można ustawić na jedną ze zdefiniowanych Dropdown options albo ustawić na None.
-
Value – zwykle dla zmiennej typu Label użyj tego pola do zdefiniowania tekstu etykiety, wyświetlanego użytkownikowi w formularzu powiązanym z zadaniem, nad którym pracuje, i opisującego, co ma zrobić.
Dodawanie pola
Aby dodać nowe pole do formularza, kliknij kontrolkę Add w prawym dolnym rogu formularza. Nowe pole zostanie dodane na dole formularza, a lista rozwijana Name zostanie rozwinięta, gotowa do wybrania istniejącej zmiennej zdefiniowanej wcześniej w definicji procesu lub do utworzenia nowej.
Przykład dodania nowego pola do formularza. Możesz wybrać odwołanie do istniejącej zmiennej zdefiniowanej dla nadrzędnej definicji procesu albo wpisać nową nazwę, tworząc w ten sposób nową zmienną dla tej definicji (po zapisaniu formularza).
Zmienne, które są już używane w bieżącym formularzu, nie są uwzględniane w menu listy rozwijanej, ponieważ w formularzu użytkownika może występować tylko jedna instancja danej zmiennej. Lista zmiennych jest filtrowana podczas pisania, co pozwala szybko znaleźć istniejącą zmienną, jeśli jest potrzebna.
Jeśli zostanie wybrana istniejąca zmienna:
-
Zostaje dodana do formularza jako kolejne odwołanie do zmiennej.
-
Pole Name zostaje zmienione na standardowe pole tekstowe, co umożliwia edycję nazwy, ale nie pozwala wybrać innej zmiennej.
-
Flagi są ustawiane zgodnie z tym, jak zdefiniowano oryginalną zmienną.
Jeśli zostanie wpisana nowa nazwa zmiennej:
-
Pole Name staje się standardowym polem tekstowym.
-
Można wybrać Type zmiennej (domyślnie Single Line Text).
-
Flagi są ustawiane odpowiednio w stanie domyślnym – Edytowalne (aktywne), Wymagane (nieaktywne), Resetuj wartość (nieaktywne).
-
Nowa zmienna jest dodawana do definicji procesu po zapisaniu formularza.
Aby zmienić nazwę pola, kliknij w polu
Name i zmodyfikuj je zgodnie z potrzebą. Jeśli nie można zmienić nazwy pola,
Name będzie wyszarzone, a po najechaniu kursorem na pole pojawi się ikona

.
Usuwanie pola
Aby usunąć pole zdefiniowane przez użytkownika, kliknij kontrolkę
po jego skrajnej prawej stronie. Usunięcie następuje natychmiast, bez potwierdzenia.
Pole zdefiniowane przez użytkownika jest usuwane tylko z bieżącego formularza. Jeśli pole/zmienna jest używana w innym formularzu w workflow, pozostanie zdefiniowana w definicji procesu. Dopiero gdy zostanie usunięta ze wszystkich formularzy, zostanie usunięta z listy zdefiniowanych zmiennych dla tej definicji procesu.
Zmiana kolejności pól
Każde pole można przenieść w dowolne miejsce w formularzu, klikając i przeciągając kontrolkę
, która pojawia się po lewej stronie po najechaniu kursorem na pole. Umożliwia to szybkie dodawanie pól do formularza, a następnie dopracowanie jego wyglądu (kolejności tych pól).
Zapisz i wdroż
Gdy proces zostanie zdefiniowany zgodnie z wymaganiami, kliknij przycisk
(w prawym górnym rogu edytora), aby dodać go do listy dostępnych procesów dla danego motywu procesu. Nowa definicja procesu zostanie aktywowana i będzie gotowa do użycia.
Edytor wskaże wszelkie problemy z diagramem przepływu pracy, które uniemożliwiają jego zapisanie i wdrożenie – na przykład diagram musi zawierać zdarzenie Start oraz mieć zdefiniowane co najmniej jedno zdarzenie End. Ponadto zadanie użytkownika (User Task) musi mieć co najmniej jedno pole formularza (Form) oraz przypisaną osobę odpowiedzialną (Assignee).