Słownik funkcji dla Reguł Biznesowych i Reguł formularza

Facebooktwitterpinterestlinkedinmail
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.