Opis tabeli WFActionExecutions

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2020.1.x; autor: Dawid Golonka

 

Wstęp

Projektując procesy i poszczególne obiegi dokumentów w systemie Webcon BPS powszechnie wykorzystuje się akcje. Akcje są to działania wykonywane bez interakcji użytkownika, definiowane na ścieżkach przejścia lub na krokach. Przykładowe akcje wykonują takie czynności jak przeliczanie wartości pola, wykonanie wpisu do AD czy wysłanie wiadomości e-mail.

Podczas pracy z systemem BPS, zarówno na etapie tworzenie procesów, testowania czy korzystania z wdrożonych już rozwiązań mogą pojawiać się sytuacje, kiedy nie mamy pewności czy zdefiniowana przez nas akcja wykonała się poprawnie, bądź czy wykonała się w ogóle.

Informacje o przebiegu wykonywanych akcji, tzw. „logi” rejestrowane są w bazie danych systemu w tabeli „WFActionExecutions” (wcześniej WFLogs). Dostęp do tabeli uzyskujemy w Systemie Zarządzania Bazą Danych, bądź z poziomu BPS Studio w zakładce „Narzędzia administracyjne”.

Przegląd logów z poziomu WEBCON BPS Studio

W górnej części interfejsu programu należy wybrać zakładkę „Akcje”, a na wstążce która się pojawi wybieramy przycisk „Narzędzia administracyjne”.

Rys. 1. Sposób wejścia do panelu "Narzędzia administracyjne".

 

W oknie, które się pojawi należy wybrać zakładkę „Pobieranie logów”.

Rys. 2. Widok okna "Narzędzia administracyjne"

 

W sekcji „Zapytanie” automatycznie podstawiany jest szkielet zapytania SQL. Takie zapytanie należy uzupełnić o identyfikator akcji lub je zmodyfikować. Poniżej można zainicjować dodatkowy filtr do zapytania, np. aby pokazać akcje wykonane w jakimś przedziale czasowym (przykład warunku: „LOG_TSInsert > '2020-04-20'” – akcje wykonane po 20 kwietnia 2020 roku). ID akcji można odczytać w oknie jej konfiguracji, w miejscu zaznaczonym na poniższym zrzucie ekranu:

Rys. 3. Miejsce odczytu wartości "ID" danej akcji

 

Przegląd logów z poziomu MS SQL Server Management Studio

Przykład zapytania do tabeli w programie Microsoft SQL Server Management Studio został zaprezentowany na poniższym zrzucie:

Rys. 4. Widok okna SQL Manager Studio z wykonanym zapytaniem

 

Jak napisać zapytanie by zobaczyć co się dzieje w logach akcji

Najczęściej sprawdzanymi kolumnami w logach akcji są:

  • LOG_ACTID – przechowuje numer ID danej akcji
  • LOG_ActionSucceeded – informacja czy akcja wykonała się poprawnie
  • LOG_AdditionalMessage – Dodatkowy komunikat. Pole ustawiane np. w wywołaniach akcji customowych
  • LOG_Description – opis czynności wykonanej przez akcję
  • LOG_Name – przechowuje nazwę danego loga
  • LOG_Status – Zwraca status akcji. Możliwe przyjmowane wartości to 0, 1, 2, 3:
    • 0 – akcja nie została wykonana (warunek nie był spełniony)
    • 1 – akcja wykonana poprawnie
    • 2 – rollback without exception/error
    • 3 – rollback after exception
  • LOG_WFDID – przechowuje numer ID elementu w którym startowana była akcja
  • LOG_WFID – przechowuje ID obiegu, z którego startowana była akcja

Przykładowe zapytanie będzie dotyczyło akcji przypisywania zastępstwa za użytkownika, który idzie na urlop. Warunkiem uruchomienia akcji jest podanie osoby w polu „zmiennik” na formularzu rejestracji wniosku urlopowego.

Rys. 5. Przykładowe zapytanie i jego rezultat (logi akcji)

 

Z pobranych wyżej kolumn można dowiedzieć się, które wywołanie akcji ma status „0”, tj. akcja nie została wykonana. Była to akcja o LOG_ID = 10860, a powodem jej niewykonania było niespełnienie warunku uruchomienia akcji. W łatwy sposób można też odnaleźć ID elementu dla którego zdarzenie miało miejsce by prześledzić dalszy przebieg obiegu w systemie.