




Dotyczy wersji 2021.1.x autor: Michał Kastelik
Reguły biznesowe pozwalają na definiowanie uniwersalnych wyrażeń lub warunków sterujących zachowaniem procesów w WEBCON BPS. Reguły formularza pozwalają na zastosowanie funkcji, które działają na formularzach.
Do tworzenia obu typów reguł można użyć metody drag-and-drop przeciągając potrzebne elementy z przybornika po prawej stronie edytora.
W niniejszym artykule zostaną opisane funkcje i metody jakie są dostępne do wykorzystania w WEBCON BPS 2021.
Tworzenie nowych reguł biznesowych w Designer Studio
Aby rozpocząć tworzenie nowej reguły biznesowej, należy w wybranym procesie, rozwinąć gałąź Konfiguracja i nacisnąć prawy klawisz myszy na danym obiekcie.
Rysunek 1 Tworzenie nowej reguły w Designer Studio
Okno edytora reguły składa się z następujących elementów:
- Zwracany typ danych – pozwala na określenie jaki rodzaj danych zostanie zwrócony jak wynik działania reguły:
- Wartość tekstowa,
- Wartość zmiennoprzecinkowa,
- Tak/Nie,
- Data,
- Lista użytkowników
Rysunek 2 Definiowanie zwracanego typu danych
- Sekcja testowania reguły – na dole edytora po lewej stronie znajdują się przyciski służące do sprawdzenia działania reguły:
- ID elementu,
- Pobierz ID,
- Testuj,
- Pokaż
Rysunek 3 Przyciski służące do testowania reguł
- Słownik wyboru elementów – po prawej stronie okna edytora znajdują się zakładki służące do prostego budowania reguł z wykorzystaniem wbudowanych funkcji etc.
Rysunek 4 Edytor reguł w Designer Studio
Tworzenie reguł biznesowych polega na zbudowaniu z dostępnych elementów słownika w sposób graficzny funkcji zwracającej określoną wartość.
Do budowania reguł w WEBCON BPS można wykorzystać wbudowane operacje, funkcje, wartości, obiekty oraz parametry.
Zakładka Operacje
W tej sekcji są dostępne elementy, dzięki którym są możliwe:
- Operacje arytmetyczne – takich jak dodawanie (+), odejmowanie (-), mnożenie (*) lub dzielenie (/) liczb.
- Operacje logiczne – pozwalające na rozbudowanie warunków funkcji o elementy oraz (AND), lub (OR), nie (NOT).
- Porównania – dostępne są operacje:
- = – równa się, jest identyczny,
- <> – różne, nie równa się,
- > – większe
- >= – większe lub równe,
- < – mniejsze,
- <= – mniejsze lub równe
- EMPTY – puste (brak wartości).
Rysunek 5 Zakładka Operacje w edytorze reguł
Zakładka Funkcje
W tej sekcji znajdują się funkcje jakie mogą być użyte do stworzenia nowej reguły biznesowej. Aby uprościć ich organizację, funkcje zostały podzielone na katalogi.
Rysunek 6 Zakładka funkcje w edytorze reguł
Wybór warunkowy
W tym katalogu znajduje się funkcja IF THEN umożliwiające stworzenie warunku logicznego. Dodatkowo dostępne są elementy takie jak:
- PATH – wybór ścieżki z danego procesu,
- POSITIVE – określenie warunku jako spełniony (TAK, TRUE, 1),
- NEGATIVE – określenie warunku jako niespełniony (NIE, FALSE, 0)
Rysunek 7 Przykładowa reguła z wykorzystaniem IF THEN
Lista pozycji (tylko w WEBCON BPS 2021)
Poniższe funkcje zostały wprowadzone w wersji 2021 i są dostępne tylko przy tworzeniu reguł biznesowych dla poszczególnych aplikacji (nie są dostępne przy globalnych regułach biznesowych).
Funkcje dotyczące atrybutu lista pozycji zawierają następujące elementy:
- ITEM LIST COUNT – funkcja zwraca ilość wierszy znajdujących się w atrybucie lista pozycji,
- HAS ANY ROWS – funkcja zwraca wartość TRUE, jeżeli lista zawiera jakikolwiek element, w przeciwnym wypadku zwróci FALSE.
- SELECT VALUES – funkcja pozwala na zwrócenie wartości znajdujących się na liście pozycji. Po wskazaniu funkcji w edytorze, należy określić kolumnę z jakiej mają zostać wybrane wartości.
Rysunek 8 Wybór kolumny w funkcji SELECT VALUES
Reguły AI
Funkcje dotyczące mechanizmu analizy AI, pozwalają na następujące działania:
- AI ANALYSIS RULE COUNT FOR INSTANCE – funkcja zlicza reguły AI działające na elemencie obiegu
- AI ANALYSIS BROKEN RULE COUNT FOR INSTANCE – funkcja zlicza elementy AI złamane na danym elemencie obiegu,
- AI ANALYSIS SCORE FOR INSTANCE – funkcja zwraca element analizy AI dla elementu obiegu.
Użytkownicy
- CURRENT USER IS ONE OF – funkcja sprawdza, czy aktualny użytkownik znajduje się w określonej grupie osób, jeżeli tak, zwracana jest wartość TRUE, w przeciwnym razie FALSE.
- USER IS ONE OF – funkcja sprawdza, czy podany użytkownik, lista użytkowników lub ich grupa znajduje się w podanej liście lub grupie użytkowników.
- USERS – funkcja pozwala pobrać listę użytkowników, w postaci kolekcji wartości ID#Nazwa rozdzielonych znakami ;
Liczba
- ROUND – funkcja służąca zaokrągleniu wartości liczbowych, umożliwia wskazanie precyzji zaokrąglenia.ROUND [1.25] [1] -> zwraca wartość [1.3]
ROUND [1.25] [0] -> zwraca wartość [1]
ROUND [11.25] [-1] -> zwraca wartość [10]
Tekst:
Funkcje pozwalają na operacje na wartościach tekstowych, dostępne są następujące operacje:
- TO UPPER – zamienia wartość tekstową na duże litery, np. umowa -> UMOWA.
- TO LOWER – zamienia wartość tekstową na małe litery, np. UMOWA -> umowa.
- TEXT LEN – funkcja zwraca długość tekstu (liczbę znaków).
- SUBSTRING – funkcja pozwala na wydzielenie fragmentu tekstu na podstawie indeksu znaku początkowego oraz ilości znaków jakie należy pobrać.
Pierwszy znak w tekście posiada index = 1.
- STRING REPLACE – funkcja pozwala na zamianę w podanym tekście wskazanej frazy na inną podaną frazę. W podanym poniżej przykładzie zostanie zwrócony wynik „WEBCON BPS 2021”.
- INDEX OF – funkcja zwraca pozycję pierwszego wystąpienia wskazanego ciągu znaków w przekazanym tekście. Przeszukiwanie rozpoczyna się od wskazanej pozycji startowej. Pierwszy znak tekstu ma wartość = 1. Przykład poniżej wraca wartość = 8.
- CONCAT – funkcja służy do łączenie kilku tekstów w jeden ciąg tekstowy. Przykład poniżej zwraca wartość tekstową 123.
- TRIM – funkcja usuwająca białe znaki na początku oraz na końcu wskazanego tekstu.
- LIKE – funkcja pozwala na sprawdzenie, czy podany tekst zawiera podany wzór tekstu. Jeżeli tak, zwracana jest wartość TRUE.
- CONTAINS – funkcja pozwala sprawdzić, czy podany tekst zawiera określony fragment tekstu, jeżeli tak zwracana jest wartość TRUE, przy sprawdzaniu ignorowana jest wielkość liter.
- STARTS WITH – funkcja sprawdza, czy podany tekst rozpoczyna się od określonego fragmentu, przy sprawdzeniu ignorowana jest wielkość liter.
- SPLIT – funkcja pozwala na podzielenie tekstu na części, zgodnie z podanym separatorem, którym może być dowolny ciąg znaków. Wynikiem działania funkcji jest kolekcja elementów rozdzielonych średnikami (;).
Przykład poniżej zwraca jako wynik: WEBCON;BPS;2021.
Data i czas:
- NOW – funkcja zwraca aktualną datę wraz z godziną,
- TODAY – funkcja zwraca aktualną datę
- DATE DIFF – funkcja oblicza różnicę między dwoma datami, możliwe jest wskazanie następujących elementów różnicy: sekunda, minuta, godzina, dzień, tydzień, miesiąc, rok. Po określeniu wartości zwraca różnicę w postaci wartości liczbowej.
- DATE ADD – funkcja umożliwia dodanie do określonej wartości daty określoną liczbę: sekund, minut, godzin, dni, miesięcy lub lat. Po jej wybraniu należy wybrać z listy element określający czas a w kolejnym polu wskazać wartość liczbową jaka ma zostać dodana.
- DATE PART – funkcja zwraca liczbę całkowitą określającą sekundę, minutę, godzinę, dzień, miesiąc lub rok podanej daty.
Kolekcje elementów:
- GET IDs – funkcja umożliwiająca pobranie z kolekcji w formacie ID#Nazwa kolekcję zawierającą samo ID. Pobrane elementy są rozdzielane średnikiem.
GET IDs[‘144#Amortyzator;14#Chłodnica;4#Skrzynia] zwróci [144;14;4] - GET NAMEs – funkcja umożliwia pobranie z kolekcji w formaice ID#Nazwa kolekcję zawierającą same nazwy. Pobrane elementy są rozdzielone średnikiem.
GET IDs[‘144#Amortyzator;14#Chłodnica;4#Skrzynia] zwróci [Amortyzator;Chłodnica;Skrzynia] - IS IN – funkcja sprawdza czy dany element znajduje się w kolekcji elementów, zwraca TRUE lub FALSE w zależności od wyniku tego sprawdzenia. Elementy są porównywane jako ciągi znaków, wielkość znaków nie ma znaczenia. Przy porównywaniu brane są pod uwagę białe znaki występujące na początku, końcu oraz wewnątrz ciągu znaków. Funkcja umożliwia na zdefiniowaniu wielu kolekcji, które będą wykorzystywane przy przeszukiwaniu.
- COLLECTION – funkcja służąca do łączenie wielu kolekcji elementów, efektem jest użycia jest zwrócenie nowej kolekcji zawierającej wszystkie połączone elementy.
Konwersje
Funkcje pozwalające na zmianę typu wartości oraz zmianę formatu wyświetlania pola typu data:
- DECIMAL TO TEXT – pozwala na zmianę wartości typu decimal na wartość tekstową,
- TEXT TO DECIMAL – pozwala na zmianę wartości tekstowej na wartość typu decimal,
- TEXT TO DATE – zmienia wartość tekstową na format daty,
- FORMAT DATE – pozwala na sformatowanie wartości daty wg określonych wymagań.
Załączniki
Funkcje dotyczące załączników:
- ATTACHMENTS COUNT – zwraca liczbę całkowitą określającą ilość załączników w danym elemencie.
- CONTENT AS BASE64 – zwraca załącznik w formacie BASE64
- CONTENT TYPE – zwraca typ załącznika jaki jest zapisany w obiegu.
- FILE NAME – funkcja zwraca nazwę pliku załącznika,
Dodatkowo jako element reguły można wykorzystać:
- Reguły biznesowe globalne,
- Reguły biznesowe procesu,
- Integracje, takie jak:
- SQL COMMAND,
- DATA SOURCE VALUE,
- SDK EXECUTION
Zakładka Wartości
Zakładka wartości pozwala na użycie wartości zapisanych w atrybucie obiegu jako zmiennej w tworzonej regule biznesowej. W wielu przypadkach użycie wybranej funkcji odnosi się do pola występującego na formularzu. W takich przypadkach należy przeciągnąć z tej zakładki pole do miejsca w danej funkcji.
Przykład poniżej zawiera definicje funkcji SET w której jako parametr użyto atrybut Start date.
Zakładka Obiekty
Zakładka Parametry
Lista wszystkich funkcji dostępnych w regułach biznesowych w WEBCON BPS 2020 oraz WEBCON BPS 2021
Wersja WEBCON BPS 2021 wprowadziła 15 nowych funkcji dostępnych w edytorze reguł biznesowych.
Wprowadzono nowy katalog funkcji lista pozycji oraz uzupełniono funkcje z kolekcji: Tekst, Kolekcje elementów oraz Załączniki.
Katalog | Funkcja | WEBCON BPS 2020 | WEBCON BPS 2021 |
Wybór warunkowy | PATH | TAK | |
POSSITIVE | TAK | ||
NEGATIVE | TAK | ||
Lista pozycji | ITEM LIST COUNT | TAK | |
HAS ANY ROWS | TAK | ||
SELECT VALUES | TAK | ||
Reguły AI | AI ANALYSIS RULE COUNT FOR INSTANCE | TAK | |
AI ANALYSIS BROKEN RULE COUNT FOR INSTANCE | TAK | ||
AI ANALYSIS SCORE FOR INSTANCE | TAK | ||
Użytkownicy | CURRENT USER IS ONE OF | TAK | |
USER IF ONE OF | TAK | ||
USERS | TAK | ||
Liczba | ROUND | TAK | |
Tekst | TO UPPER | TAK | |
TO LOWER | TAK | ||
TEXT LEN | TAK | ||
SUBSTRING | TAK | ||
STRING REPLACE | TAK | ||
INDEX OF | TAK | ||
CONCAT | TAK | ||
TRIM | TAK | ||
LIKE | TAK | ||
CONSTAINS | TAK | ||
STARTS WITH | TAK | ||
SPLIT | TAK | ||
Data i czas | NOW | TAK | |
TODAY | TAK | ||
DATE DIFF | TAK | ||
ADD DATE | TAK | ||
DATE PART | TAK | ||
Kolekcje elementów | GET IDs | TAK | |
GET NAMEs | TAK | ||
IS IN | TAK | ||
COLLECTION | TAK | ||
GET AT INDEX | TAK | ||
SUM | TAK | ||
AVG | TAK | ||
MAX | TAK | ||
MIN | TAK | ||
COUNT | TAK | ||
DISTINCT | TAK | ||
Konwersje | DECIMAL TO TEXT | TAK | |
TEXT TO DECIMAL | TAK | ||
TEXT TO DATE | TAK | ||
FORMAT DATE | TAK | ||
Załączniki | ATTACHMENTS COUNT | TAK | |
CONTENT AS BASE64 | TAK | ||
CONTENT TYPE | TAK | ||
FILE NAME | TAK | ||
GET ATTACHMENTS | TAK |
Reguły formularza
Reguły formularza posiadają dodatkowe funkcje, które dotyczącą zachowania się formularza WEBCON BPS. Podobnie jak w przypadku funkcji reguł biznesowych, zostały one podzielone na grupy ułatwiające ich wyszukanie.
Aby utworzyć nową regułę formularza, należy wybrać z gałęzi Konfiguracja węzeł „Reguły formularza” a następnie nacisnąć prawy klawisz myszy i wybrać „Nowa reguła”.
Lista funkcji dostępna do wykorzystania w regułach formularza zawiera identyczna funkcje jak przy tworzeniu reguł biznesowych + dodatkowe funkcje dotyczące modyfikacji wyglądu oraz zachowania się formularza.
Zachowanie
W tym katalogu dostępne są funkcje pozwalające na definiowanie wyświetlania lub ukrywania poszczególnych elementów formularza.
- SET – funkcja pozwalająca na ustawienie wartości do wybranego atrybutu, po przeciągnięciu atrybutu jakiego wartość ma zostać zmieniona należy przypisać mu nową wartość. Przykład poniżej przypisuje atrybutowi Start date wartość TODAY (bieżąca data).
Za pomocą funkcji SET można także wyczyścić wartość danego atrybutu, w tym celu należy przypisać wybranemu atrybutowi wartość np. EMPTY.
- SET FOCUS – funkcja ustawiająca kurson (Focus) na wskazany element.
- HIDE/SHOW – funkcja pozwala na ukrycie lub wyświetlenie określonego atrybutu lub grupy atrybutów. Przykład poniżej wyświetla grupę atrybutów Basic information.
- HIDE COMMENT/SHOW COMMENT – ukrywa lub wyświetla sekcję komentarzy na formularzu.
- HIDE OCR TRAIN BUTTONS/SHOW OCR TRAIN BUTTONS – ukrywa lub wyświetla przyciski nauki OCR na formularzu,
- HIDE PATH/SHOW PATH – ukrywa lub wyświetla daną ścieżkę przejścia na formularzu, konfiguracja pozwala na wskazanie ścieżki, która ma być ukryta lub wyświetlona.
- HIDE MENU BUTTON/ SHOW MENU BUTTON – ukrywa lub wyświetla wybrany przycisk w menu formularza. Dotyczy to przycisków utworzonych przez użytkownika (nie przycisków systemowych, np. Zapisz).
- MOVE TO NEXT STEP – funkcja pozwala na przejście do wskazanego kroku formularza.
- INVOKE MENU ACTION – funkcja pozwala na uruchomienie wskazanego przycisku menu formularza, utworzonego przez użytkownika.
- DISABLE/ ENABLE – blokuje lub odblokowuje wybrany element formularza. W trybie DISABLE element nie posiada możliwości edycji jego wartości.
- ALERT – funkcja pozwala na wyświetlenie okna w komunikatem np. o konieczności wypełnienia dodatkowego pola. Funkcja wymaga wprowadzenie treści komunikatu, jaki ma zostać wyświetlony.
- CONFIRM – funkcja działająca podobnie jak ALERT, ale dodatkowo pozwala na wybranie potwierdzenia: OK lub Anuluj.
- EXPAND/ COLLAPSE – rozwija lub zwija grupę atrybutów
- SELECT TAB – funkcja pozwala na wybranie określonej zakładki na formularzu.
Wygląd
Sekcja zawiera funkcje pozwalające na zmianę wyglądu elementów formularza:
Funkcje dotyczące wyglądu kontrolki atrybutu (CONTROL):
- SET CONTROL FONT COLOR – pozwala na określenie koloru czcionki kontrolki, jako wartość należy wpisać kod koloru, np. wartości wpisane poniżej zmienią kolor kontrolki Title na czerwony.
- SET CONTROL BACKGROUND – pozwala na określenie tła (ramkę) wskazanej kontrolki.
- SET CONTROL FONT DECORATION – pozwala na określenie stylu dekoracji czcionki: pogrubiony, pochylony, etc.
- SET CONTROL FONT SIZE – określa rozmiar czcionki, po wybraniu atrybutu, należy określić wielkość czcionki za pomocą liczby.
- SET CONTROL FONT FAMILY – określa rodzinę czcionek.
- SET CONTROL STYLE – pozwala na określenie stylu kontrolki.
Identyczne funkcje są określone w przypadku zmiany wyglądu labela atrybutu:
- SET LABEL FONT COLOR,
- SET LABEL BACKGROUND,
- SET LABEL FONT DECORATION,
- SET LABEL FONT SIZE,
- SET LABEL FONT FAMILY,
- SET LABEL STYLE.
Lista pozostałych funkcji do wykorzystania w regułach formularza jest identyczna jak w przypadku reguł biznesowych:
- Wybór warunkowy
- Lista pozycji
- Liczba
- Tekst
- Data i czas
- Kolekcje elementów
- Konwersje
Załączniki
- ATTACHMENTS COUNT – funkcja zwraca liczbę załączników jakie znajdują się w danym elemencie obiegu.
- ATTACHMENTS EXISTS – funkcja sprawdza, czy w elemencie obiegu znajdują się jakiekolwiek załączniki, zwraca wartość TRUE lub FALSE
Podsumowanie
Projektanci aplikacji w WEBCON BPS, mają dostęp do szeregu gotowych funkcji, pozwalających na zastosowanie zmian w wyglądzie czy też działaniu poszczególnego obiegu dokumentów. Dostępne zarówno w regułach biznesowych jak również w regułach formularza funkcje w szybki i prosty sposób umożliwiają wprowadzenie zmian zarówno w wyglądzie jak i regułach dotyczących danej aplikacji.
Lista dostępnych funkcji jest stale zwiększana z każdym nowym wydaniem WEBCON BPS.