Zapraszam do przeczytania kolejnego artykułu opisującego narzędzie WEBCON BPS!
We wcześniejszym wpisie dotyczącym WEBCON BPS, koleżanka Iga opisywała czym jest i w czym może nam pomóc WEBCON BPS – jeżeli jeszcze nie przeczytałeś, nie zwlekaj –Budowanie procesów biznesowych z WEBCON BPS.
W tym artykule postaram się opisać:
- co robić, gdy dany proces nam nie działa,
- jak wyszukiwać błędy w konfiguracji,
- jak można wykorzystać bazę danych aby zlokalizować źródło problemu,
- jak rozwiązać problem wprowadzając często niewielkie zmiany (gdy już się dowiemy, gdzie leży problem).
Przejdźmy od razu do głównego tematu tego artykułu:
Co powoduje problemy z procesami w WEBCONIE?
Czynników może być wiele. Bardzo często jednak prowadzą one do całkowitego zatrzymania działania danego procesu. Oto niektóre z nich:
- aktualizacja środowiska WEBCON,
- błędna konfiguracja akcji,
- awaria serwera,
- brak przypisanej osoby do ścieżki,
- edytowanie formularza,
- concurrency error.
Skupmy się na aspektach konfiguracji procesów oraz akcji, które powodują błędy procesów.
Co robić gdy proces nam nie działa?
Zaczynamy zawsze od analizy komunikatu, który wyświetlany jest na formularzu (jeżeli takowy się wyświetla):
Najwięcej informacji można znaleźć w pierwszej części komunikatu oraz w opisie:
No person to assign workflow instance to, check configuration.
Taka informacja często pomoże nam znaleźć przyczynę, a następnie rozwiązać problem.
Jak wcześniej wspomniałem, możemy również skorzystać z bazy danych, która przechowuje wszystkie akcje przeprowadzane przez użytkownika podczas użytkowania środowiska. Baza danych rejestruje zdarzenia i zapisuje je w tabeli „WFLogs„. Baza, która zawiera tętabelę, nazywać może się różnie, bo nazwę możemy podczas instalacji i konfiguracji środowiska dowolnie zmieniać.
Po odszukaniu tej bazy możliwe jest filtrowanie wyników, zwracanych przez bazę danych. Poniżej wypiszę oznaczenia bazy danych oraz opiszę je.
- LOG_ID – numer logu,
- LOG_DEFID – numer procesu WEBCON BPS,
- LOG_WFDID – ID elementu,
- LOG_ACTID – ID akcji procesu,
- LOG_Name – nazwa logu,
- LOG_Description – opis logu – zawiera opis błędu,
- LOG_TSInsert – data umieszczenia logu w bazie danych,
- LOG_WFID – ID elementu procesu.
Problem przedstawiony powyżej związany jest z brakiem osoby, do której może być przypisane zadanie. Aby taki problem rozwiązać, należy wejść do WEBCON Designer Studio i w procesie, na kroku, na którym pojawił się błąd, wejść w zakładkę „Paths”, a następnie w sekcji „Tasks assignment” wybrać osobę, do której zostanie przypisane zadanie po przejściu ścieżki.
Przeanalizujmy inny błąd. Poniżej przedstawiłem kolejny komunikat, inny niż poprzedni i nieco bardzo skomplikowany.
Powyższy komunikat – po chwili można się zorientować – alarmuje nas, że pewna akcja o nazwie „Start a subworkflow” na ścieżce „wait for subworkflow”, nie jest poprawnie skonfigurowana. Poniżej log bazy danych, który pokazując nam na LOG_ACTID (id akcji) – 22 oraz LOG_DEFID (id procesu) – 7 – pozwala nam na łatwe zlokalizowanie odpowiedniej akcji. Teraz już pozostaje naprawić konfigurację akcji o nazwie „Start a subworkflow”. Zauważ jak bardzo logi bazy danych są przydatne w rozwiązywaniu problemów z procesami.
Po odnalezieniu akcji odpowiedzialnej za wyżej przedstawiony błąd, sprawdźmy jej konfigurację.
Nie potrzebujemy przechodzić do innych zakładek („Advanced” oraz „Data”), bo już widać, że akcja nie jest w ogóle skonfigurowana! A komunikat pokazuje, w konfiguracji nie zostało określone dla jakiego podprocesu dana akcja ma zostać wykonana Aby rozwiązać ten problem, należy dodać odpowiednie informacje w odpowiednie kolumny, a następnie w zakładce „Data”, do podprocesu – potrzebne dane.
Spróbujmy rozwiązać jeszcze jeden problem:
Wiesz już, dlaczego wyświetlony został taki komunikat? .. Dokładnie tak jak myślisz.
Akcja „SQL Procedure” wywołuje błędne query. Odszukajmy proces, dla którego uruchomiliśmy ten element i ścieżkę „archive after subworkflow”. Dalej otwieramy akcję, która generuje błąd a następnie sprawdzamy konfigurację:
Widzisz już błąd?
SELECT WFD_AttText1 as 'WFD_AttText1'
FROM WFElements
WHERE WFD_AttText1 like '%sii%
Query bazy danych możemy testować w akcjach, które mają dostęp do przycisku „Edit” widocznego powyżej. Wejdźmy tam:
Naszym oczom ukazuje się menu edycji query. Po prawej możemy używać zmiennych wyświetlanych w odpowiednich sekcjach, a na dole WEBCON Designer Studio daje nam możliwość przetestowania swojego query w oparciu o ostatni element danego procesu, w którym została umieszczona ta akcja. Najpierw klikamy „Load ID”, a następnie „Test”. W tym momencie ukazuje nam się informacja o błędzie. Łatwo można zauważyć, że błąd dotyczy dokładnie części query:
'%sii%;
W tej części brakuje cudzysłowia na końcu query za „%”. Sprawdźmy co się stanie gdy dodamy ciapkę i przetestujemy query.
Query po przetestowaniu zwróciło nam wyniki takie, jakie oczekiwaliśmy. Teraz błąd nie będzie sie już wyświetlał. Został rozwiązany.
Przed nami ostatni błąd, który czeka na analizę:
Poniżej przepiszę (niepełną na zdjęciu) linię komunikatu, która powinna najbardziej nas zainteresować:
The Web application at http://intranet/workflow/dokumenty/szablon.docx could not be found. Verify that you have
typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add
a new request URL mapping to the intended application.
Komunikat alarmuje, że ścieżka do szablonu dokumentu jest nieprawidłowa. Aby naprawić ten błąd odnajdujemy akcję, która wygenerowała błąd, a następnie dodajemy dokładny link, do dokumentu, który najpierw trzeba wrzucić na SharePoint. Prawidłowy link powinien zawierać podstawowe informacje, umieszczone poniżej:
http://<webURL>/<SiteCollection>/<Folder>/<NameOfTheDocument>.docx
Np.:
http://WEB/TestSiteCollection/TestDocumentLibrary/TestTemplate.docx
Po tym nadajemy generowanemu plikowi nazwę i klikamy “Save”.
Poprawna konfiguracja takiej akcji (generowania pliku), to głównie podanie prawidłowego linku do szablonu dokumentu, z którego proces ma korzystać.
Finish…
Takim sposobem dochodzimy do końca naszej przygody z naprawianiem błędów w WEBCON BPS. Pamiętaj:
- Czytaj dokładnie komunikaty na stronie.
- Korzystaj z bazy danych i tabeli WFLogs.
- Sprawdzaj przed zapisaniem konfigurację akcji.
- Testuj Query bazy danych.
- Testuj swoje akcje i procesy na elementach testowych.
- Nie bój się pytać o pomoc!
Jeżeli zachowasz te kilka wskazówek i wdrożysz je do codziennej pracy, może nawet kilkakrotnie obniżysz ilość błędnych akcji w swoich procesach, przez co oszczędzisz czas, a klienci będą zadowoleni ze współpracy z tobą i twoją firmą!
Zostaw komentarz