Soneta sp. z o.o. ul. Wadowicka 8A 30-432 Kraków tel./fax (0-12) 261-36-41 http://www.enova.pl e-mail: info@enova.pl sprzedaz@enova.pl zespół wsparcia: tel. (0-12) 261-36-54 e-mail: workflow@enova.pl enova Workflow podręcznik Użytkownika (9.3)
Spis treści Spis treści... 2 Wprowadzenie... 3 Opis ogólny... 4 Słownik pojęć... 4 Różnice między wersjami i licencjonowanie... 5 Środowisko pracy użytkownika... 6 Obszary robocze Workflow... 6 Panel Workflow... 6 Kalendarz zadań... 9 Katalog i listy workflow... 10 Uruchamianie procesu... 12 Realizacja zadania... 12 Formularz kreatora... 13 Konfiguracja modułu... 14 Definicja przepływu... 14 Edytor definicji procesu... 18 Elementy procesu... 20 Węzeł grafu... 20 Przejście - tranzycja... 26 Kreatory... 28 Uruchomienie kreatora... 28 Formularz kreatora... 30 Konfiguracja definicji kreatorów... 33 Schemat generatora obiektów... 42 Rozbudowa narzędzi edytora Workflow... 45 Element definicji Workflow... 45 Definicja przejścia... 49 2
Wprowadzenie Workflow to koncepcja organizacji pracy firmy, w której przebieg procesów biznesowych realizowanych w wielu etapach i/lub przez wielu uczestników, prowadzony jest według odpowiednio przygotowanego zestawu reguł. enova Workflow to moduł zintegrowanego oprogramowania enova ERP który dzięki możliwości definiowania zaawansowanych zasad, pozwala skutecznie organizować oraz automatyzować pracę wielu osób w ramach procesów firmy. Niewątpliwą zaletą enova Workflow jest jego pełna integracja z wszystkimi modułami enova. Workflow można także traktować jako alternatywny interfejs programu, w którym to program nie tylko informuje o pracy jaką operator powinien wykonać, ale także umożliwia realizacje złożonych, specjalizowanych zadań w modułach programu bezpośrednio z poziomu panelu workflow. Moduł pozwala podczas konstruowania przepływu pracy przygotować środowisko pracy dla wykonującego, w tym celu można utworzyć własne formularze, określić zakres prezentowanych danych ich właściwości lub też wykorzystać standardowe, znane operatorowi z enova formularze kartotek i przedstawić je użytkownikowi wraz z opisem jakie operacje powinien wykonać. 3
Opis ogólny Słownik pojęć Definicja procesu: (workflow definition) Wzorcowy zbiór wszystkich możliwych stanów(węzłów) procesu oraz zależności między nimi. Stan może wiązać się z potrzebą wykonania przez użytkownika czynności, podjęcia decyzji lub akcji jakie mogą zostać wykonane przez operatora lub automatycznie przez system. Zawiera także zbiór warunków realizacji zadań czyli zmiany stanu. Proces: (workflow, przepływ) zbiór zakończonych i realizowanych zadań. Ogół wariantów przejścia procesu (ścieżek) jest opisany przez definicję procesu i graf. Na podstawie definicji, w zależności od tego jakie warunki realizacji zostały spełnione podczas realizacji zadania, są generowane kolejne zadania procesu. Zadanie: (task, powiadomienie, stan, zadanie) Jest generowane na podstawie definicji taska węzła grafu. Dla użytkownika jest to zadanie do wykonania, może także automatycznie wykonywać określone czynności i po realizacji spowodować utworzenie nowego zadania. Aktywne zadanie określa obecny stan procesu. Kreator: (wizard) To formularz zawierający zestaw zakładek z czego przechodzenie między kolejnymi następuje po wybraniu Dalej lub Wstecz. Kreator jest sposobem na zebranie w jednym miejscu danych z którymi powinien się zapoznać lub które powinien uzupełnić wykonujący. Realizacja zadania może być związana z wypełnieniem pól kreatora wg załączonej instrukcji Węzeł: (task definition, element grafu procesu) opisuje sposób utworzenia oraz obsługi pojedynczego zadania jakie zostanie zlecone wykonującemu. W postaci graficznej jest elementem grafu workflow Krawędź: (transition, warunek przejścia) zawiera warunek, po spełnieniu którego zadanie ustawione jako punkt przyłożenia strzałki grafu (źródło) zostaje ustawione w stan zrealizowane a utworzone zostaje zadanie o definicji po stronie grotu strzałki (target). 4
Różnice między wersjami i licencjonowanie Wersja srebrna funkcjonalność workflow w wersji srebrnej nie jest dostępna. Workflow wersja złota pozwala na skorzystanie w pełni z funkcjonalność Kreatorów grupowania czynności i danych do wprowadzenia przez operatora za jednym razem w jednym miejscu. Obejmuje funkcjonalność opisaną w rozdziale Kreatory niniejszego dokumentu Workflow wersja platynowa zawiera pełną funkcjonalność enova Workflow, pozwalającą na procesową realizację wielu zadań przez wiele osób czyli organizację pracy w firmie wokół zachodzących w niej najważniejszych procesów. Dodatkowo użytkownik nie posiadający licencji na Workflow ale posiadający wszystkie moduły programu w wersji platynowej otrzymuje pełną funkcjonalność Kreatorów możliwość tworzenia i wywoływania własnych kreatorów. Należy zwrócić uwagę że do uzyskania funkcjonalności procesowości, konieczna jest licencja na platynowy Workflow. 5
Środowisko pracy użytkownika Obszary robocze Workflow Po zalogowaniu do enova dostępne są m. in. kafelki Start oraz Workflow. Kafelek Workflow widoczny jest jeśli logujący się operator posiada licencję na moduł Workflow w wersji platynowej. Rys. 1 Foldery związane z funkcjonalnością Workflow Panel Workflow Po wybraniu Panel Workflow, użytkownik przechodzi do okna roboczego Workflow: Rys. 2 Obszar roboczy Workflow 6
Obszar jest podzielony na trzy części. Oznaczona na pomarańczowo zawiera kafle które umożliwiają ręczne uruchomienie procesu. Rys. 3 Przykład kafli umożliwiających inicjowanie procesów Oznaczona na ilustracji kolorem zielonym jest lista zadań operatora, w której pojawiają się powiadomienia - zadania do wykonania przez operatora w ramach procesu. Użytkownik z tego miejsca może podobnie jak w oknie powiadomień przejrzeć szczegóły powiadomienia wybierając Otwórz, otworzyć rekord enova, z którym jest związane powiadomienie wybierając Otwórz zapis lub wykonać zadanie klikając pozycję na liście lub wybierając Uruchom proces. Dodatkowo powiadomienie może odroczone przez wskazanie czasu i Odłóż. Nie będzie wyświetlane w oknie przypomnień. 7
Rys. 4 Okno Moje powiadomienia Workflow Do dyspozycji operatora jest także lista procesów których jest właścicielem oznaczona na żółto na ilustracji Rys. 2 Po rozwinięciu podlisty za pomocą możliwe jest śledzenie postępu prac nad procesem, wraz z informacją kto obecnie jest odpowiedzialny za realizacje zadania- etapu projektu/procesu. Rys. 5 Przykład listy wszystkich zadań procesu w panelu Workflow. Na ostatniej pozycji widoczne zadanie do realizacji przez Administratora Nad listą procesów umieszczono czynności pozwalające wykonywać operacje na procesach. Rys. 6 Belka górna okna procesów w panelu Workflow Oznaczona na Rys. 6 na zielono czynność Podgląd realizacji procesu wywołuje graficzne okno podglądu etapu realizacji procesu. 8
Rys. 7 Okno podglądu realizacji procesu Kolejne kroki oznaczono kolorami: Niebieski etapy zrealizowane, Szary etapy nie zrealizowane, Jasnopomarańczowy etapy bieżące, Czerwony etapy odrzucone (nieobecny na Rys 7). Czynność Zamknij proces powoduje ustawienie procesu w stan zamknięty i zakończenie wszystkich aktywnych i oczekujących zadań z nim związanych. Kalendarz zadań Wygodnym sposobem na śledzenie historii jak i oczekujących zadań jest kalendarz wywoływany przez wybranie Start na Rys. 1. 9
Rys. 8 Kalendarz zadań Kalendarz zawiera wszystkie zadania zalogowanego użytkownika. Filtry nad listą pozwalają ograniczyć zakres prezentowanych danych. Katalog i listy workflow Do listy modułów został także dodany moduł Workflow (na Rys. 9 oznaczony na żółto). Rys. 9 Moduł Workflow 10
Zawiera listy pozwalające uprawnionemu operatorowi na śledzenie prac nad zadaniami i procesami innych użytkowników. Rys. 10 Listy modułu Workflow Moduł zawiera listy Procesów i Zadań. Zaleca się udzielić uprawnień do list tylko operatorom pełniącym funkcje nadzorcze. Lista procesów pozwala śledzić realizowane jak i zakończone procesy obsługiwane w programie. Na liście znajdują się czynności pozwalające podejrzeć w formie graficznej stan realizacji procesu oraz zamknąć proces jak i wszystkie zadania z nim związane. 11
Rys. 11 Lista procesów workflow Lista procesów prezentuje wszystkie zadania (taski) jakie zostały wygenerowane w programie w ramach workflow. Lista nie zawiera tasków nie związanych z workflow. Rys. 12 Lista zadań Workflow Lista dokumentów prezentuje wszystkie dokumenty,które zostały wygenerowane w ramach workflow. Lista nie zawiera dokumentów nie związanych z workflow. Uruchamianie procesu Inicjowanie jak i przetworzenie procesu odbywa się za pomocą wybrania kafla nowego procesu w panelu procesu ( Rys. 2 oraz Rys. 3) przez operatora z listy nowych procesów bądź automatycznie przy zaistnieniu określonych okoliczności w systemie, np. podczas zapisu kartoteki. Okoliczności uruchomienia procesu określane są w konfiguracji procesu. Po wywołaniu nowego procesu, w zależności od konfiguracji pojawi się formularz na którym użytkownik będzie miał za zadanie wykonać operacje. Może to być formularz kreatora bądź standardowa kartoteka programu. Realizacja zadania Zasadniczym elementem na którym pracuje użytkownik realizując zadania skierowane do Niego przez workflow jest kreator. Jego wygląd oraz zachowanie są definiowane w konfiguracji programu. Ten sam kreator może być wykorzystywany w wielu etapach tego samego bądź różnych procesów. 12
Formularz kreatora Po dwukrotnym wybraniu za pomocą myszy lub przycisku Otwórz, konkretnego zadania na liście powiadomień, pojawia się formularz zawierający dane z którymi będzie pracował użytkownik. Rys. 13 Wygląd formularza kreatora Po lewej stronie formularza oznaczona na brązowo znajduje się lista kroków przez które będzie musiał przejść operator w trakcie pracy z kreatorem. Podświetlony jest aktualnie widoczny krok. Przemieszczanie między kolejnymi krokami, następuje przez wybranie oznaczonego na czerwono przycisku Dalej, powrót do kroku poprzedzającego nastąpi po wybraniu oznaczonego na zielono przycisku Wstecz. Operator nie ma możliwości zmiany kolejności przemieszczania między zakładkami, lista kroków jest w trybie tylko do odczytu. Górna część formularza oznaczona na niebiesko zawiera informacje opisowe dotyczące aktualnego kroku umieszczone tam przez definiującego proces. Główna część okna to panel danych zawiera pola/ listy z którymi pracuje operator. 13
Konfiguracja modułu Definicja przepływu Moduł enova Workflow jest platformą pozwalającą na budowę spójnego przepływu pracy między użytkownikami w firmie i modułami programu. Konfiguracja znajduję się w menu: Narzędzia / Opcje / Workflow i zawiera listy: Ogólne podstawowe ogólne dane konfiguracyjne, Definicje kreatorów możliwości kreatorów zostały omówione w dalszej części instrukcji, Definicje przepływów zawiera listę zdefiniowanych wzorców procesów, Definicje tranzycji - zawiera listę zdefiniowanych tranzycji, Schematy generowania obiektów na liście znajdują się zdefiniowane wzorce służące do generowania obiektów enova w ramach enova Workflow, Wzorce elementów workflow lista elementów panelu narzędziowego edytora graficznego workflow. Zawiera wzorce definicji węzłów grafu, Rys. 14 Folder konfiguracji enova Workflow Lista Definicje przepływów zawiera wzorce procesów. 14
Rys. 15 Formularz definicji procesu Formularz na zakładce Ogólne zawiera zestaw pól: Symbol pole unikalne zawierające symbol definicji Nazwa pole unikalne zawierające pełna nazwę procesu 15
Opis zawiera dłuższą informację na temat przeznaczenia / sposobu działania procesu Tryb edycji - Moduł posiada rozbudowaną konfigurację pracującą w trzech trybach do wyboru w zależności od stopnia zaawansowania osoby tworzącej definicję procesu oraz jej potrzeb, determinuje także sposób zachowania definicji procesu podczas jej konstruowania: Prosty - umożliwia budowę prostego przebiegu opartego o Workflow, zasadniczo nie odwołującego się do modułów merytorycznych enova. Przeznaczony dla początkujących użytkowników do budowy prostych procesów, lub w przypadku konstruowania procesów decyzyjnych niezależnych od logiki biznesowej pozostałych modułów enova. Tworzenie procesu w tym trybie opiera się o ustawienie parametrów konfiguracji i warunków realizacji. Nie wymaga wprowadzania kodu C#. Poniższa ilustracja prezentuje proces w ramach którego w czterech stanach przetwarzany jest obiekt Workflow Zadanie 1 Zadanie 2 Zadanie 3 Zadanie 4 Work Flow Rozszerzony pozwala na wskazanie obiektu w ramach którego będzie się odbywała praca całego procesu, tak podczas definiowania jak i po uruchomieniu procesu. Wskazany typ obiektu będzie źródłem zakładek dla kreatorów oraz funkcjonalności. Będzie także stanowił kontener na dane które będą modyfikowane podczas przepływu. Podobnie jak w trybie prostym, ukryto okna służące do wprowadzania kodu C#. Poniższa ilustracja prezentuje realizację procesu wieloetapowego zatwierdzania listy płac. Wszyscy uczestnicy procesu (cztery stany zatwierdzania) mają za zadanie zapoznać się z danymi na liście płac i potwierdzić lub odrzucić. Zadanie 1 Zadanie 2 Zadanie 3 Zadanie 4 Lista płac Zaawansowany pozwala na precyzyjne określenie obiektu który będzie źródłem danych, zakładek oraz funkcjonalności dla wszystkich bądź części zadań procesu. W tym trybie operator pracujący z definicją ma możliwość wskazania klasy obiektu, co wiąże się także z koniecznością wskazania relacji między obiektem źródłowym jak i docelowym. Opcja umożliwia prowadzenie zaawansowanej konfiguracji oraz algorytmów sterujących zachowaniem procesu. Praca w tym trybie zasadniczo 16
przeznaczona jest dla zaawansowanych użytkowników, posiadających znajomość logiki biznesowej enova oraz programowania C#. Na schemacie poniżej zaprezentowano obsługę procesu akceptacji faktury zakupowej. Na początek dziennik podawczy wprowadza skan załącznika wraz z ogólnymi informacjami do Workflow (zadanie 1). Następnie na podstawie wprowadzonych danych system generuje dokument handlowy i przypisuje go do konkretnej osoby która dokonuje wypełnienia danych na dokumencie faktury zakupowej - pozycje dokumentu itp. (zadanie 2). Po opisaniu analitycznym przez osobę za to odpowiedzialną (zadanie 3) następuje zatwierdzenie dokumentu handlowego i logika biznesowa enova generuje dokumenty w księgowości. Księgowy dokonuje weryfikacji merytorycznej zawartości dokumentu i jego dekretacji (Zadanie 4) co kończy proces. Zadanie Zadanie 2 Zadanie 3 Zadanie 4 1 Workflow Faktura ZK Dokument ZK Pozostałe pola formularza definicji procesu: Numeracja pozwala określić schemat numeracji procesu Pojedyncza instancja ustawienie pola na wartość True będzie powodowała że program nie pozwoli na dwukrotne uruchomienie procesu dla tego samego rodzica. Np. Automatycznie inicjowany przez zapis dokumentu handlowego proces zamawiania towaru w przypadku spadku jego stanu poniżej określonej wartości powinien być uruchomiony tylko jeden raz w danym czasie dla konkretnego towaru. Poza zakładką Ogólne formularz zawiera także zakładki: Definicje zadań to lista węzłów grafu, widoczna tylko w zaawansowanym trybie edycji Dodatkowe pola daje możliwość wprowadzenia dodatkowych pól (cech) do procesu bezpośrednio z poziomu definicji procesu 17
Edytor definicji procesu W górnej części okna, na belce górnej znajduje się przycisk Edytor procesu, którego wybranie powoduje uruchomienie graficznego edytora procesu. Jest to najwygodniejszy sposób na przygotowanie grafu wzorca workflow. Rys. 16 Edytor procesu Okno edytora jest podzielone na trzy części: Oznaczona na pomarańczowo panel narzędziowy przybornik workflow zawiera wzorcowe komponenty (WFDefItems) pogrupowane pod względem 18
modułu z którym są związane. Komponenty w grupie Ogólne nie są związane z żadną klasą obiektów mogą być stosowane gdy rodzicem dla definicji kroku jest dowolny obiekt enova. Zakładki Ogólne i Workflow widoczne są dla definicji procesu w trybie Uproszczonym. Dodatkowo w trybie rozszerzonym widoczna jest zakładka związana z modułem jaki wskazano na pierwszym startowym kroku. Zestaw wszystkich zakładek pojawi się gdy definicja procesu będzie pracowała w trybie zaawansowanym Oznaczona na niebiesko obszar roboczy przestrzeń w której użytkownik będzie budował proces za pomocą przeciągania elementów panelu narzędziowego i łączenia za pomocą tranzycji - strzałek. Oznaczona na zielono podgląd procesu pozwala łatwo nawigować w ramach większego procesu który nie mieści się na jednym ekranie monitora w rozmiarze standardowym obszaru roboczego. Zmiana wielkości czerwonej ramki spowoduje powiększenie lub pomniejszenie zawartości obszaru roboczego. Przystępując do edycji lub przygotowania nowego procesu enova, operator tworzy nową definicje procesu, wypełnia pola wymagane, a następnie uruchamia edytor procesu. Praca osoby konstruującej wzorzec procesu koncentruje się na przeciągnięciu elementów z panelu narzędziowego na obszar roboczy i połączenie ich za pomocą przejść (tranzycji). Elementy w obszarze roboczym mogą zostać zaznaczone i grupowo przesunięte w inne miejsce lub ich wielkość zmieniona. Elementy umieszczone w obszarze roboczym mogą być kopiowane poprzez zaznaczenie i wywołanie z menu podręcznego opcji Kopiuj następnie Wklej. Operacje wykonane od czasu rozpoczęcia pracy w sesji z definicją procesu mogą zostać cofnięte prze wybranie z menu podręcznego Opcji Cofnij / Przywróć. Rys. 17 Menu podręczne edytora procesu 19
Elementy procesu Graf jest graficzną prezentacją procesu jaki będzie realizowany w ramach workflow enova ERP. Ten sposób prezentacji ułatwia zrozumienie zależności między kolejnymi stanami procesu oraz sposób ich obsługi. Graf budowany jest przez przeciąganie elementów panelu narzędziowego na obszar roboczy edytora procesu. Wynikiem działania jest utworzenie definicji zadania (TaskDefinition) zainicjowanej danymi z wzorca. Węzeł grafu W górnej części ikony znajduje się nazwa elementu toolbox, który posłużył do utworzenia węzła procesu. Pod nazwą elementu znajduje się nazwa konkretnego etapu. Dwukrotne klikniecie w napis spowoduje wyświetlenie edytora, gdzie można wprowadzić inną nazwę. Rys. 18 Edytor procesu - budowa grafu Po dwukrotnym kliknięciu w ikonę elementu grafu otwiera się domyślny sposób obsługi elementu grafu. Jeśli zdefiniowano na wzorcu (WFDefItem) kreator, zostanie otwarty formularz kreatora. W przeciwnym wypadku zostanie otwarty standardowy formularz Definicji Taska, na którym znajduje się szereg parametrów pozwalających na 20
określenie sposobu zachowania etapu procesu czyli reguł według których generowane będą zadania dla użytkowników. Poniżej omówiono znaczenie parametrów formularza. Zakładka Element definicji procesu Rys. 19 Formularz elementu grafu workflow (Task Definition) cz.1 1. Algorytm określa sposób pracy z definicją kroku: Nie istnieje możliwość wprowadzenie parametrów na bieżącej zakładce. Proste wyrażenia mogą być wprowadzane bezpośrednio w polach zakładki. Nie ma możliwości wprowadzenia bardziej złożonych warunków czy kodu. Tak większość pól na zakładce zostaje wyszarzanych. Istnieje możliwość wprowadzenia kodu na pozostałych zakładkach formularza (Realizacja, Generowanie, Aktywność, Akcja, Inne metody) 2. Uruchamiany tylko w SonetaExplorer: Nie Definicja taska może być uruchamiana tak w środowisku enova jak i np. w serwisach poza enova (np. enova NET). Nie należy stosować w niej odwołań do funkcji z bibliotek interfejsowych (np. Forms) 21
Tak Taka definicja będzie wywoływana tylko w środowisku uruchomionym przez SonetaExplorer (stacjonarna enova). 3. Definicja elementu procesu wskazuje na wzorzec według którego została utworzona definicji zadania (WFDefItem). Pole nie powinno być modyfikowane. 4. Definicja procesu wskazuje na wzorzec procesu z którym definicja zadania jest związana. Pole nie powinno być modyfikowane 5. Inicjujący proces: Tak definicja taska będzie wykorzystywana jako inicjująca dla procesu. Spełnienie warunków ustawień parametrów p.6 oraz p.13 będzie powodowało utworzenie nowego procesu. Nie definicja nie będzie powodowała generowania zadań systemowych ani nie będzie przeliczana inaczej niż za pomocą Workflow. 6. Sposób uruchamiania Określa sposób uruchamiania obsługi taska. Dotyczy tylko tasków inicjujących (p. 6). W przypadku pozostałych, przetwarzanych przez workflow parametr nie ma znaczenia. Możliwe do wybrania: W menu Ustawienie parametru p.6 oraz wybranie opcji W menu spowoduje pojawienie się nowego kafla w panelu workflow, którego wybranie powoduje przeliczenie definicji taska i zainicjowanie nowego procesu. Automatyczna jeśli ustawiono parametr p.6 na Tak, Task będzie przeliczany zawsze przy zapisie nowotworzonego lub edytowanego rekordu biznesowego enova z którym definicja taska jest związana (Zakładka Ogólne na definicji taska). W wyniku przeliczenia taska może zostać wygenerowany proces, jeśli zostanie spełniony warunek generowania taska (metoda IsEnable). 7. Definicja kreatora definiuje kreator jakim będzie się posługiwał użytkownik podczas realizacji zadania. 8. Instrukcja dla kreatora Pozwala wprowadzić treść jaka pojawi się w nagłówku kreatora jeśli na samym kroku kreatora opis będzie pusty. Jest to pole w który należy prowadzić instrukcje dla operatora który będzie realizował zadanie. 9. Inicjuj generatorem. Każde generowane zadanie w enova Workflow musi być związane z obiektem enova mieć zainicjowane pole Parent. Może to być workflow ale także np. dokument handlowy, księgowy czy lista płac. Źródło pola Parent jest określane na definicji zadania (taska) prze pole Wybór wiersza. Jednym ze sposobów uzyskania rodzica dla taska jest automatyczne wygenerowanie obiektu podczas przeliczania taska. W tym celu należy ustawić pole Inicjuj generatorem oraz wskazać Schemat generatora (p.10). 10. Schemat generatora wzorzec według którego na etapie generowania zadania zostanie automatycznie utworzony nowy obiekt enova. Jeśli dodatkowo zaznaczono flagę p.9, utworzonym obiektem zostanie zainicjowane pole Parent tworzonego taska. Nie ustawienie flagi p.10 i jednocześnie wskazanie schematu p.9 spowoduje jedynie wygenerowanie obiektu enova bez wiązania go z etapem(zadaniem) workflow. 11. Blokowanie wiersza: 22
Tak jeśli w trakcie przetwarzania procesu, zostanie wygenerowany task, którego definicja ma ustawioną flagę Blokada wiersza, to rekord wskazany przez właściwość Parent taska, zostanie ustawiony w tryb tylko do odczytu co uniemożliwi jego modyfikację z poziomu enova. Edycja rekordu będzie możliwa z poziomu realizacja zadania w workflow po odblokowaniu rekordu za pomocą czynności Odblokuj rekord. Zapis jest zablokowany, jak długo będą aktywne blokujące zadania z nim związane. 12. Warunek generowania pole umożliwia wprowadzenie wyrażenie którego spełnienie będzie powodowało wygenerowanie zadania. Pole edytowalne jedynie w przypadku ustawienie pola Inicjujący proces na wartość Tak. W innym wypadku task jest generowany zawsze. Uwaga. Po włączeniu opcji Algorytm (p.1) istnieje możliwość oprogramowania metody IsEnable, nie należy jednak wpływać na warunki generowania taska metoda zawsze dla definicji nie-startowych powinna zwracać wartość true. 13. Warunek aktywności Pozwala na wprowadzenie wyrażenia które będzie wpływało na aktywność zadania. 14. Wybór wiersza Wyrażenie wskazujące na źródło z którego powinien zostać pobrany rodzic dla Zadania. Domyślnie źródło jest ustawiane przez metodę: base.getparent(task, workflow, row, ref context) która wykonuje następujące operacje w celu ustawienia rodzica: Jeśli ustawiony schemat generatora (p.10) i inicjowanie rodzica (p.9) to zainicjuj taska obiektem utworzonym przez generator Pobierz rodzica z tasków w procesie poprzedzających tworzony o tym samym typie rekordu rodzica Pobierz rodzica z kontekstu Zwróć komunikat o braku rodzica 15. Nazwa wyrażenie jakie zostanie wprowadzone stanie się źródłem nazwy dla powstającego zadania. Pole powinno zwrócić wartość w postaci tekstowej. Np.: Podejmij decyzję + Row.Definicja.Nazwa. Jeśli pole pozostanie puste, zadanie zostanie utworzone z nazwą jak w polu Nazwa Formatowana na definicji taska. 16. Opis wyrażenie jakie zostanie użyte do wprowadzenia wartości w polu Opis (Description) zadania. Format wprowadzania 17. Rodzaj operatora pozwala określić adresata powiadomienia: Aktualny zalogowany w chwili tworzenia powiadomienia (pobierany z aktualnej sesji). Wybrany Wskazany na definicji zadania w p.22 konkretny operator enova. Tworzący dokument Operator który utworzył rekord enova wskazany jako Parent na zadaniu. Modyfikujący dokument - Operator który ostatni zmodyfikował rekord enova wskazany jako Parent na zadaniu. Wyrażenie pozwala wprowadzić wyrażenie zwracające obiekt typu (Soneta.Business.App.Operator). 23
Rola Umożliwia wskazanie roli zadanie będzie widoczne przez operatorów przypisanych do wskazanej roli. Wystarczy że zostanie zrealizowane przez jednego z operatorów, co spowoduje usunięcie zadania z list wszystkich operatorów. 18. Operator pozwala wskazać konkretnego operatora z listy, jeśli w p.23 wybrano opcje Wybrany. 19. Wyrażenie daje możliwość wskazania właściwości z której zostanie pobrany operator do zainicjowania zadania 20. Złączenie zaznaczenie powoduje ograniczenie generowanego zadania do jednego aktywnego zadania w danym procesie. Jeśli węzeł jest celem wielu tranzycji i następuje zakończenie wielu zadań poprzedzających to program pozwoli na wygenerowanie tylko jednego zadnia Zakładka Ustawienia czasów Rys. 20 Formularz Ustawienia czasów 24
21. Algorytm Zaznaczenie tego pola umożliwia edycję zakładek: Realizacja, Generowanie, Aktywność oraz Akcja. 22. Rozpoczęcie Wartość zainicjuje pole DataOd na zadaniu. Jeśli pole jest puste, nastąpi podstawienie czasu utworzenia zadania. 23. Zakończenie - Wartość zainicjuje pole DataDo na zadaniu. Jeśli pole jest puste, nastąpi podstawienie czasu utworzenia zadania. 24. Ważny od określa termin od kiedy zadanie będzie widoczne na kalendarzu i liście zadań. Pozostawienie wartości pustej spowoduje że task będzie widoczny po utworzeniu 25. Rodzaj przypomnienia pozwala na określenie od kiedy zadanie będzie się pojawiało w oknie przypomnień i Moje zadania w panelu Workflow Brak zadanie nie będzie się pojawiało w oknie przypomnień Przed rozpoczęciem zadanie zacznie się pojawiać o określony w p.26 czas przed rozpoczęciem zadania (DataOd p.22) Przed zakończeniem zadanie zacznie się pojawiać o określony w p.26 czas przed zakończeniem zadania (DataDo p.23) Wyrażenie pozwala wskazać wyrażenie, które określi termin rozpoczęcia wyświetlania w liście przypomnień. 26. Czas jeśli wybrano rodzaj przypomnienia przed rozpoczęciem lub zakończeniem, umożliwia wprowadzenie czasu. 27. Wyrażenie jeśli wybrano rodzaj powiadomienia Wyrażenie, pole pozwala wprowadzić pole które będzie źródłem czasu do przypomnienia. 28. Obsługiwać Wybranie opcji TAK spowoduje włączenie powiadomień dotyczących przeterminowania zadania. 29. Definicja zadania wzorzec zadania, które zostanie wygenerowane podczas tworzenia zadania pierwotnego. Jest odpowiedzialny za obsługę przekroczenia terminu wskazanego w polu nr 30. Na liście wyświetlane są zadania systemowe przypisane do tabeli Tasks. 30. Wyrażenie (DateTime) Data po której zadanie zostaje uznane za przeterminowane. Obsługa przeterminowania jest realizowana w zadaniu wskazanego w polu Definicja zadania. Sposób działania jest uzależniony od ustawień Definicji zadania. Zakładka Wyzwalanie zadań Zakładka jest dostępna po dodaniu licencji na dodatek Harmonogram Zadań. Szczegóły zawiera opis dodatku. 25
Przejście - tranzycja Przejście (tranzycja)stanowi element łączący stany procesu (definicje tasków) zawierający warunek realizacji zadania źródłowego (source) oraz utworzenia zadania docelowego (target). Jeśli dany węzeł jest źródłowym dla większej ilości tranzycji i nastąpi spełnienie warunku więcej niż jednej z nich, nastąpi rozgałęzienie - wygenerowanie zadania dla każdego stanu docelowego. Rys. 21 Formularz przejścia (tranzycji) Formularz uruchomiony dla procesu pracującego w trybie zaawansowanym posiada trzy zakładki: Ogólne widoczna dla procesu pracującego w dowolnym trybie Nazwa pole edytowalne także po dwukrotnym kliknięciu w strzałkę z poziomu grafu. Nazwa nie musi być unikalna, jest jednak wymagana. Definicja przejście może zostać utworzone według wzorca zdefiniowanego w konfiguracji programu z menu podręcznego w obszarze roboczym grafu. W takim wypadku pole Definicja zostaje uzupełnione odpowiednia wartością wzorca. Wzorzec jest źródłem algorytmu warunku dla tranzycji. Menu podręczne może zawierać specjalizowane warunki dla konkretnego typu obiektu. Dodatkowe pozycje będą widoczne (jeśli zostały zdefiniowane) po kliknięciu prawym przyciskiem myszy w węzeł. 26
Rys. 22 Menu podręczne grafu pozwalające wstawić tranzycje według definicji Źródłowy określa węzeł workflow z którym jest związany warunek realizacji Docelowy określa węzeł workflow który jest wzorem do utworzenia zadania systemowego (taska) w przypadku spełnienia warunku przejścia Warunki realizacji edytor warunków pozwala wprowadzić wyrażenie stanowiące warunek realizacji zadania źródłowego. Warunek może się opierać o task źródłowy, proces lub obiekt biznesowy z którym związane jest zadanie źródłowe (Task.Parent). Dodanie warunku odbywa się przez wskazanie obiektu z listy rozwijanej nad edytorem a następnie zdefiniowanie wyrażenia poprzez wybranie +. Zakładka Algorytm dostępna w widoku zaawansowanym, pozwala wprowadzić algorytm w postaci kodu C# z pominięciem edytora warunków. Informacje zakładka dostępna w widoku zaawansowanym, zawiera informacje na temat dostępnych metod i właściwości podczas konstruowania warunku 27
Kreatory Kreator można interpretować jako Instrukcję wykonania przez jednego operatora krok po kroku zbioru operacji. Przy czym realizacja operacji może się udać albo w całości albo w ogóle nie może się udać tylko częściowo. Przykładem kreatora jest instalacja oprogramowania enova na stanowisku. Użytkownik przechodzi przez kolejne kroki prowadzony prze kreator, dopiero zatwierdzenie ostatniego powoduje finalizowanie instalacji. Przerwanie pracy kreatora na którymkolwiek kroku, spowoduje odrzucenie wprowadzonych zmian w całości. Kreatory są wykorzystywane w dwojaki sposób: Kreatory służące do zebrania danych z wielu obszarów programu w ramach jednego formularza wraz z weryfikacją poprawności wprowadzonych danych, umożliwiające manualne uruchomienie kreatora przez użytkownika poza przetwarzaniem procesowym stanową funkcjonalność dostępną w wersji złotej modułu workflow Kreatory będące sposobem dostarczania środowiska pracy do realizacji zadania w ramach procesu workflow. Uruchomienie kreatora Standardowe zdefiniowane przez producenta kreatory dostępne są na licencji złotej modułów enova. Program zezwala na ich modyfikację w ograniczonym zakresie. Możliwość tworzenia własnych kreatorów dostępna jest po zakupie licencji Workflow w wersji złotej lub platynowej. Kreatory, jeśli nie są używane w przetwarzaniu workflow to znaczy są wskazane na definicji zadania systemowego (taska) nie związanego z procesem workflow, mogą być dostępne w programie jako pozycje w menu czynności, grupa Kreatory nad listami np. Kontrahentów, Wizytówek oraz Kampanii: Rys. 23 Uruchamianie kreatora z poziomu listy 28
Jeśli na definicji zadania systemowego związanego z procesem workflow wskazano kreator to zostanie on uruchomiony po wybraniu Uruchom proces w oknie powiadomień lub przez dwukrotne kliknięcie w pozycję na liście zadań systemowych użytkownika. Rys. 24 Uruchamianie kreatora w ramach procesu workflow Jeśli w trakcie wybierania kreatora zostanie przytrzymany klawisz SHIFT, skrót do akcji zostanie dodany do menu Ulubione: Rys. 25 Kreator w oknie ulubione w pasku nawigacji 29
Formularz kreatora Po uruchomieniu kreatora pojawia się formularz zawierający dane określone w definicji kreatora w konfiguracji: Rys. 26 Okno kreatora Po lewej stronie formularza oznaczona na brązowo znajduje się lista kroków przez które będzie musiał przejść operator w trakcie pracy z kreatorem. Podświetlony jest aktualnie widoczny krok. Przemieszczanie między kolejnymi krokami, następuje przez wybranie oznaczonego na czerwono przycisku Dalej, powrót do kroku poprzedzającego nastąpi po wybraniu oznaczonego na zielono przycisku Wstecz. Operator nie ma możliwości zmiany kolejności przemieszczania między zakładkami, lista kroków jest w trybie tylko do odczytu. 30
Górna część formularza oznaczona na niebiesko zawiera informacje opisowe dotyczące aktualnego kroku. Główna część okna to panel danych zawiera informacje z którymi pracuje operator. Pierwsza zakładka kreatora Kampania z korespondencją stanowi przykład użycia standardowej zakładki obiektu (w tym wypadku kampanii) w kreatorze. Wybranie Dalej powoduje przejście na kolejną zakładkę. Rys. 27 Przykład wykorzystania w kreatorze definiowalnej zakładki użytkownika Zakładka zawiera dane wzorca projektu które zostaną powielone na każdym projekcie tworzonym dla każdego adresata (lista kontrahentów zostanie ustalona w ostatnim kroku kreatora). Zakładka stanowi przykład zastosowania definiowalnej zakładki w kreatorze. Następna zakładka Korespondencja masowa pozwala operatorowi przygotowującemu kampanię, na wprowadzenie treści wiadomości która zostanie wysłana do adresatów w ramach korespondencji masowej. 31
Rys. 28 Przykład wykorzystania standardowej zakładki w kreatorze. Tutaj, zakładka korespondencji CRM Rys. 29 Zakładka Grupa docelowa stanowi przykład wykorzystania w mechanizmie kreatorów listy rekordów. Przytrzymując CTRL można zaznaczyć wielu zapisów. 32
Potwierdzenie przez Zapisz i zakończ spowoduje zapis danych w bazie. Konfiguracja definicji kreatorów Standardowe kreatory dostępne są na licencji złotej modułów enova. Program zezwala na ich modyfikację poza: Zmianą nazwy kreatora, zmianą tabeli kreatora, zmianą liczby kroków kreatora, zmiana guid kreatora. Dodawanie własnych definicji kreatorów możliwa jest po zakupie licencji złotej lub platynowej Workflow Konfiguracja definicji kreatorów dostępna jest w menu Narzędzia -> Opcje -> Ogólne-> Definicje kreatorów. Rys. 30 Lista definicji kreatorów w konfiguracji 33
Formularz definicji kreatora zawiera zakładki: Ogólne, Kroki kreatora, Informacje oraz jeśli na pierwszej zakładce wybrano w polu Algorytm wartość Tak pojawi się folder. Algorytmy sterujące. Pole Typ danych pozwala na wskazanie klasy obiektów z którą związany będzie kreator. Pole jest obowiązkowe. Należy wypełnić także pole Nazwa. W razie konieczności ukrycia kreatora, można ustawić pole Zablokowana wartością Tak. Rys. 31 Kreator - zakładka ogólne W ramach zakładek foldera Algorytmy sterujące, można oprogramować następujące metody: (WizardStepDefinition[]) CreateSteps(): Metoda umożliwia określenie algorytmu zwracającego kroki definicji kreatora (domyślnie zwracane wszystkie nie zablokowane kroki). (Row) GetRow(): Metoda zwraca wiersz, w kontekście którego kreator pracuje (należy określić algorytm zwracający wiersz, można także utworzyć nowy, metoda wywoływana w konstruktorze). (bool) IsEnable(): Metoda umożliwia określenie algorytmu określającego czy kreator ma być przetwarzany. (void) BeforeSaveAndFinish(): Metoda umożliwia określenie algorytmu wywoływanego przed zapisaniem i zakończeniem kreatora. (void) AfterSaveAndFinish(): Metoda umożliwia określenie algorytmu wywoływanego po zapisaniu i zakończeniu kreatora. 34
Zakładka Kroki kreatora zawiera listę kroków przez które będzie przechodził operator podczas pracy z kreatorem: Rys. 32 Kreator zakładka kroki kreatora Formularz kroku kreatora pozwala na dostosowanie wyglądu i sposobu działania pojedynczej zakładki kreatora. 35
Rys. 33 Krok kreatora - zakładka Ogólne Lp. Numer w sekwencji kroków kreatora. Pozwala określić kolejność kroków. Definicja pole tylko do odczytu zawiera nazwę definicji kreatora. Typ danych klasa obiektów z jaką związany jest kreator. Domyślnie inicjowane wartością z analogicznego pola na definicji kreatora. Możliwa jest także zmiana typu, jednak obiekt oczekiwanego typu musi znajdować się w kontekście lub zostać wskazany w algorytmie wyboru wiersza kroku. Nazwa Pole obowiązkowe, zawierające nazwę kroku. 36
Opis Pole jednowierszowe może zawierać opis techniczny widoczny tylko z poziomu definicji kroku, Opis wielolinijkowy zawiera treść która zostanie wyświetlona w nagłówku kroku może zawierać instrukcje dla operatora wypełniającego krok. Typ kroku Pozwala określić wygląd i zachowanie formularza kroku. W zależności od wartości wybranej, pojawia się dodatkowa zakładka w definicji kroku pozwalająca określić zawartość formularza kroku Dostępne są: Standardowa zakładka Pozwala wskazać jedną ze standardowych zakładek obiektu klasy z pola typ danych.. Pojawia się zakładka Standardowa zakładka oraz pole wyboru jednej ze standardowych zakładek. Rys. 34 Krok kreatora - zakładka wyboru rodzaju formularza standardowego Zakładka użytkownika pozwala przygotować zakładkę zawierającą określone przez siebie pola na zakładce o nazwie Zakładka użytkownika. 37
Rys. 35 Krok kreatora - zakładka definiowania formularza użytkownika Zakładka wydruku pozwala wskazać wydruk jaki będzie dostępny dla operatora w postaci przycisku na zakładce. Zakładka wydruku zawiera listę zarejestrowanych dostępnych wydruków. Zakładka z listą obiektów Pozwala wyświetlić listę zapisów, spośród kolekcji powiązanych z obiektem, lub wskazanej w kodzie przez konfigurującego definicję kreatora. Przykład wybranej kolekcji pokazano na zrzucie poniżej. Zaznaczono kolekcję Attachments. Automatycznie w kodzie poniżej zostało wprowadzone poprawne wyrażenie zwracające View kolekcje obiektów. Programistycznie kolekcja może zostać ograniczona za pomocą Condition. Może także zostać wskazana dowolna inna kolekcja view. Załączniki Pozwala na dodawanie załączników oraz odnośników Zakładka z listą obiektów - (możliwość edycji na liście) daje takie same możliwości jak Zakładka z listą obiektów lecz umożliwia edycję. 38
Rys. 36 Krok kreatora - zakładka z listą obiektów (możliwość edycji na liście) Zakładka z opisem - Zakładka pozwala na umieszczenie jako zakładki w kreatorze, rozbudowanego, formatowanego opisu zawierającego ilustracje osadzone w treści. W ramach zakładki Zakładka z opisem, wprowadzić treść. Obrazki osadzone w treści dodawane są przez wybranie z menu nad obszarem edycji, Nowy element -> Osadzony załącznik, zaznaczenie obszaru i w panelu właściwości wybranie Wczytaj obraz. Po wskazaniu obrazu, zostanie osadzony w treści zakładki kreatora. Zakładka nie podlega edycji przez operatora wywołującego kreator. 39
Rys. 7 Krok kreatora - zakładka kolekcji obiektów Zapis sesji po kroku Wykonuje zapis sesji przy przejściu między krokami. Zalecane ustawienie: Nie. Rodzaj operatora pozwala określić adresata powiadomienia: Aktualny zalogowany w chwili tworzenia powiadomienia (pobierany z aktualnej sesji). Wybrany Wskazany na definicji zadania konkretny operator enova. Tworzący dokument Operator który utworzył rekord enova wskazany jako Parent na zadaniu. Modyfikujący dokument - Operator który ostatni zmodyfikował rekord enova wskazany jako Parent na zadaniu. Wyrażenie pozwala wprowadzić wyrażenie zwracające obiekt typu (Soneta.Business.App.Operator). Rola Umożliwia wskazanie roli zadanie będzie widoczne przez operatorów przypisanych do wskazanej roli. Wystarczy że zostanie zrealizowane przez jednego z operatorów, co spowoduje usunięcie zadania z list wszystkich operatorów. 40
Lista czynności zawiera przygotowane przez programistów operacje, które są przypisane do poszczególnych rodzajów tabeli (kartoteki). W folderze Algorytmy sterujące znajdują się możliwe do oprogramowania metody oraz zmienne: (Exception) Accepted(): Metoda umożliwia określenie algorytmu akceptacji kroku (wywoływana po naciśnięciu przycisku Dalej na formularzu). Musi zwrócić wyjątek jeżeli krok nie może być zaakceptowany i null jeżeli krok może być zaakceptowany. (bool) IsVisible(): Metoda umożliwia określenie algorytmu widoczności kroku. (View) GetViewForListStep(): Metoda umożliwia określenie algorytmu zwracającego listę rekordów (rekordy te po przejściu do kolejnego kroku są umieszczane w kontekście okna). (Row) GetRow(): Metoda zwraca wiersz, w kontekście którego krok kreatora pracuje (należy określić algorytm zwracający wiersz, można także utworzyć nowy, metoda wywoływana w konstruktorze). Dostępne są następujące właściwości i metody: (T) GetRow<T>(): Metoda zwraca wiersz, w kontekście którego pracuje krok kreatora zrzutowany do typu T. (WizardStepDefinition) StepDefinition: Właściwość zwraca definicję kroku kreatora. (Context) Context: Właściwość zwraca kontekst. (Login) Login: Aktualny login użytkownika. (Row) RowInternal: Właściwość zwraca wiersz, w kontekście którego krok kreatora pracuje. Row: Właściwość zwraca wiersz, w kontekście którego krok kreatora pracuje zrzutowany na odpowiedni typ danych. Module: Właściwość zwraca moduł. (Kampanie) Table: Właściwość zwraca tabelę. 41
Schemat generatora obiektów Schemat jest wzorcem według którego zostanie utworzony nowy obiekt enova. Pozwala w sposób konfiguracyjny utworzyć wzorzec obiektu a następnie użyć schematu np. w procesie workflow. Definicja dostępna jest z poziomu konfiguracji programu Workflow -> Definicje kreatorów. Ogólne Rys. 38 Formularz schematu generowania obiektów Nazwa pole wymagane i unikalne w obrębie bazy danych. Opis informacja na temat sposobu działania schematu widoczna na definicji schematu. Typ źródłowy pozwala wskazać typ rekordu który będzie przekazany podczas wywoływania schematu i stanie się źródłem danych dla tworzonego obiektu. Typ docelowy pole wymagane wskazuje jakiego typu obiekt zostanie utworzony po wywołaniu generatora na podstawie schematu. 42
Mapowanie wartości zakładka pozwala wskazać w jaki sposób będą inicjowane pola tworzonego rekordu. Rys. 369 Mapowanie właściwości schematu generatora obiektów Definicja mapowania właściwości zawiera listę właściwości podczas tworzenia schematu, na podstawie odczytanych z bibliotek programu danych, zostaną wprowadzone właściwości wymagane. Po zaznaczeniu pozycji możliwe jest wprowadzenie algorytmu inicjowania właściwości w polu pod listą. Jeśli inne pola poza domyślnymi będą inicjowane, należy dodać nowe mapowanie (przycisk pod listą). Kasowanie pozycji inicjowania odbywa się przez zaznaczenie wybranej i wciśnięcie. 43
Konstruktor cześć obiektów enova wymaga wywołania specjalizowanej metody tworzącej obiekt (konstruktor), np. tworząc dokument zakupowy w ewidencji dokumentów tworzymy obiekt DokEwidencja ale wybieramy konstruktor ZakupEwidencja. Kod algorytmu konstruktora pozwala na wprowadzenie parametrów inicjowania obiektu. Algorytm inicjacji obiektu docelowego dla utworzonego obiektu pozwala na wykonanie algorytmu na już wygenerowanym obiekcie (castedrow). Rys. 40 Algorytm inicjowania obiektu docelowego 44
Rozbudowa narzędzi edytora Workflow Program został zaprojektowany tak, by osoba wdrażająca workflow mogła tworzyć własne elementy panelu narzędziowego w edytorze procesu workflow. Dzięki temu można bez potrzeby pisania własnych rozszerzeń programu dodawać komponenty specjalizowane na potrzeby konkretnego wdrożenia bądź typu rekordu. Przykład: automatyczny eksport danych za pomocą specyficznego formatu na określonym etapie procesu. Wdrożeniowiec może tworzyć własne wzorce węzłów oraz przejść (warunków) grafu. Element definicji Workflow Możliwość utworzenia nowego wzorca dla węzła dostępna jest z poziomu konfiguracji programu Opcje -> Workflow -> Wzorce elementów Workflow. Rys. 41 Formularz elementu definicji workflow 45
Formularz zawiera szereg pól pozwalających w odpowiedni sposób zainicjować tworzoną definicję elementu grafu: Typ danych pozwala związać definicję elementu workflow z konkretnym typem danych. Wybrana wartość spowoduje zainicjowanie pola ParentType na definicji taska (węzeł workflow). Pozostawienie pola pustego spowoduje iż po przeciągnięciu na obszar roboczy elementu panelu narzędziowego, w trybie uproszczonym program podstawi jako typ z którym związana jest definicja taska, obiekt WFWorkflow, w trybie zaawansowanym zapyta użytkownika jeden raz o tabelę enova a w zaawansowanym program będzie wyświetlał okno parametrów za każdym razem gdy użytkownik przeciągnie element toolbox z pustym polem Typ danych na obszar roboczy. Wskazanie konkretnego typu na definicji elementu workflow, umożliwi odwołanie do właściwości konkretnego typu, w algorytmach na zakładkach w grupie Algorytm. Nazwa pole wymagane unikalne w obrębie. Jest to pole unikalne w obrębie bazy danych. Opis informacja opisująca zachowanie elementu. Inicjujący proces wartość pola jest podstawiana do pola Inicjujący proces na elemencie workflow. Jednocześnie na węźle istnieje możliwość zmiany wartości pola. Typ akcji wartość pola jest modyfikowalna tylko dla rekordów które mają zaznaczone pole Inicjujący proces na true. Dostępne rodzaje akcji : Manualny proces będzie inicjowany z poziomu panelu workflow. Automatyczny zdarzenie systemowe będzie inicjowało proces. Realizacja stanu: Przez warunki spełnienie warunku tranzycji wychodzącej z węzła powoduje realizacje zadania związanego z elementem grafu. Ustawienie domyślne. Nie powoduje wymuszenia zamknięcia procesu realizacja zadania powoduje zamkniecie procesu wyłącznie gdy nie żadnych aktywnych zadań w procesie. Zastosowanie np., jako powiadomienie, którego oznaczenie jako odczytane, powoduje zamknięcie całego procesu. Wymusza zamknięcie procesu realizacja zadania tego typu, powoduje zamknięcie wszystkich aktywnych zadań procesu (stan ustawiany na 46
Odrzucone) oraz samego procesu. Np. Zamknięcie procesu zamawiania w wyniku odrzucenia oferty przez klienta. Kreatory Definicja Wskazuje na kreator jaki będzie służył użytkownikowi do realizacji otrzymanego zadania. Pole na elemencie definicji, zainicjuje pole Kreator na definicji zadania systemowego. Kreatory definicja kreatora elementu grafu program umożliwia utworzenie specjalizowanego elementu który na podstawie wskazanych przez użytkownika pól w konfiguracji, wykona złożoną operację. Ustawienie pola spowoduje uruchomienie kreatora po dwukrotnym kliknięciu ikony węzła przez osobę tworzącą proces. Np. element definicji procesu który posiada algorytm przekształcający dokument ZO do dokumentu FV na podstawie wskazanej na definicji taska relacji handlowej. Osoba wdrażająca uruchamia kreator węzła i w jednym polu kreatora wybiera definicję relacji handlowej. Ikona grafu pole Ikona umożliwia wskazanie pliku graficznego, który będzie prezentowany na grafie. Należy kliknąć PPM w obszar Ikona i z menu podręcznego wybrać Wczytaj. Rys. 42 Zakładka Ikona grafu na elemencie definicji workflow 47
Algorytmy Action zakładka pozwala na wprowadzenie algorytmu jaki zostanie wprowadzony do metody Action w definicji taska (do elementu węzła). Algorytmy IsEnable - zakładka pozwala na wprowadzenie algorytmu jaki zostanie wprowadzony do metody IsEnable w definicji taska (do elementu węzła), określając okoliczności generowania zadania. Modyfikacja dozwolona tylko w przypadku ustawienia pola Inicjuj proces oraz Rodzaj akcji typu: Automatyczna. Informacje prezentuje zestaw właściwości i metod z jakich można korzystać podczas wprowadzania algorytmu. 48
Definicja przejścia Program daje możliwość utworzenia własnych warunków realizacji stanów procesu. W zależności od konfiguracji nowy rodzaj przejścia będzie dostępny na grafie edycji procesu w menu podręcznym: Rys. 43 Menu podręczne grafu z definicjami tranzycji Formularz definicji przejścia dostępny jest z konfiguracji Workflow -> Definicje tranzycji. Ogólne podstawowa konfiguracja warunku przejścia, Rys. 44 Zakładka ogólne definicji przejścia 49
Nazwa pole wymagane, unikalne w obszarze bazy danych, Typ danych określa typ rodzica zadania źródłowego z którym związany jest warunek przejścia. Po wybraniu typu, będzie możliwość odwołania do właściwości wiersza na poziomie Algorytmu przejścia. Jeśli pole pozostanie puste, w algorytmie będzie możliwość odwołania tylko do właściwości Task oraz WFWorkflow. Algorytm kod który jest wywoływany podczas przetwarzania metody IsRealized taska ustawionego jako źródłowy dla przejścia. Spełnienie warunku powoduje zamknięcie zadania i wygenerowanie zadania ustawionego jako Target na przejściu (tranzycji). Rys. 45 Algorytm definicji przejścia 50