Nowe reguły do tekstu w WEBCON BPS 2021

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2021.1.1 autor: Konrad Wojtycza

 

Wprowadzenie

 

W wersji 2021 WEBCON BPS wprowadzono nowe funkcje formularza działające na tekście:

  • CONCAT – łączy wartości tekstowe w jeden tekst.
  • SPLIT – Rozdziela wskazany tekst na części, zgodnie z podanym separatorem. Separatorem może być dowolny ciąg znaków. Wynikiem działania funkcji jest kolekcja elementów rozdzielonych średnikami ‘;’. Jeśli w podanym tekście nie został znaleziony separator, wynikiem działania funkcji będzie jeden wiersz tekstu.
  • INDEX OF – zwraca pozycję pierwszego wystąpienia wskazanego ciągu znaków w przekazanym tekście. Przeszukiwanie tekstu rozpoczyna się od wskazanej pozycji. Pozycja pierwszego znaku tekstu ma wartość 1.

W niniejszym artykule zostanie przedstawiona konfiguracja i sposób działania wyżej wymienionych funkcji na utworzonym w tym celu formularzu.

Konfiguracja funkcji CONCAT

 

Utworzono 4 atrybuty typu tekstowego. Zawartość atrybutów Text 1, 2, 3 jest łączona poprzez funkcję CONCAT i wyświetlana jako wartość atrybutu Concat(Text 1, 2, 3) (Rys. 1).

Rys. 1 Działanie funkcji CONCAT

 

W konfiguracji funkcji CONCAT należy podać wartości wejściowe, które zostaną połączone w jedne ciąg znaków. Domyślnie, wartości te są łączone ze sobą bez spacji, dlatego w przedstawionej konfiguracji każdy atrybut Text został rozdzielony stałą procesową zawierającą spację

CONCAT[[Tekst][ Tekst][Tekst][Tekst]]

Rys. 2 Przykładowa konfiguracja reguły formularza CONCAT

 

Funkcja CONCAT może działać na formularzu dynamicznie, po każdej edycji wartości atrybutów Text 1, 2, 3, bądź statycznie, dopiero po przejściu ścieżką, czy po kliknięciu na przycisk.

W celu uzyskania dynamicznego działania funkcji CONCAT na polach Text 1, 2, 3 w zakładkach Styl i zachowanie dodano regułę ustawiającą wartość pola Concat(Text 1, 2, 3) na zmianę (Rys. 3)

Rys. 3 Reguła ustawiająca wartość pola Concat(Text 1, 2, 3) na zmianę wartości

 

Konfiguracja funkcji SPLIT

Ciąg znaków utworzony przez funkcję CONCAT w polu Concat(Text 1, 2, 3), został rozdzielony średnikami przy użyciu funkcji SPLIT  w polu Split(Concat(Text 1, 2, 3)) (Rys. 4).

Rys. 4 Działanie funkcji SPLIT

 

W konfiguracji funkcji SPLIT należy podać tekst, który powinien zostać podzielony separatorem w postaci średnika, a także znak, który będzie zastąpiony średnikiem przez funkcje (Rys. 5).

SPLIT[[Tekst][Znak, który zostanie zastąpiony separatorem]]

Rys. 5 Przykładowa konfiguracja funkcji SPLIT

 

Podobnie jak w przypadku funkcji CONCAT, funkcja SPLIT może działać dynamicznie na formularzu albo statycznie.

Aby umożliwić dynamiczne działanie funkcji SPLIT, na polu zawierającym tekst do rozdzielenia (u góry Concat(Text1,2,3)) w zakładce Styl i zachowanie należy dodać regułę ustawiającą wartość pola, w które  wstawiany jest efekt działania funkcji (Rys. 6).

Rys. 6 Reguła czyszcząca wartość pola Split(Concat(Text 1, 2, 3)) na zmianę wartości

 

W przypadku funkcji SPLIT nie jest możliwa zmiana domyślnego separatora, tj. średnika. Zmianę średnika w tekście będącym wynikiem funkcji SLPIT można uzyskać wykorzystując inną funkcję operującą na tekście – STRING REPLACE (Rys. 7, Rys. 8).

Rys. 7. Przykładowa konfiguracja funkcji SPLIT REPLACE

 

Rys. 8. Działanie funkcji SPLIT REPLACE

 

Konfiguracja funkcji INDEX OF

 

Wyszukiwany ciąg znaków wpisywany jest w atrybucie Searched word. Tekst, w którym wyszukiwany jest wskazany ciąg znaków, został wprowadzony w atrybucie Text. W polu Start at position należy wskazać pozycję startową wyszukiwania, tj. pozycję znaku tekstu, od którego powinno rozpocząć się wyszukiwanie (Rys. 9).

Rys. 9 Działanie funkcji INDEX OF

 

INDEX OF[[Tekst][Wyszukiwany ciąg znaków][Pozycja startu wyszukiwania]]

 

Rys. 10 Przykładowa konfiguracja funkcji INDEX OF

 

Tak jak w przypadku poprzednich funkcji, funkcja INDEX OF może być wywoływana dynamicznie na formularzu, albo po przejściu ścieżką, wybraniu przycisku w menu formularza itp. Konfiguracja dynamicznego i statycznego działania jest analogiczna do konfiguracji dla poprzednich funkcji.