Lista pozycji – funkcja Select values

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2021.1.x i powyżej, autor: Konrad Wojtycza

 

Wprowadzenie

W wersji WEBCON BPS 2021 wprowadzono nową funkcję formularza SELECT VALUES, pozwalającą na pobieranie danych z wybranej kolumny listy pozycji. Funkcja ta umożliwia zapisanie danych ze wszystkich wierszy kolumny listy pozycji w pojedynczym wskazanym w konfiguracji atrybucie.
Dane zapisywane są w postaci kolekcji rozdzielanej przy pomocy średnika. Puste wartości zostają pominięte.

W prezentowanym w artykule przykładzie wykorzystania funkcji SELECT VALUES, wartości z listy pozycji zostaną skopiowane do pola „Akceptanci do powiadomienia”. W polu tym wybierane są osoby, którym powinno zostać wysłane przypomnienie o dokumencie oczekującym na akceptację.

 

Zrzut ekranu 1. Zakładka Funkcje edytora wyrażeń – funkcja SELECT VALUES

 

Przypadek biznesowy

W prezentowanym przykładzie (Zrzut ekranu 2), użytkownicy skopiowani do pola „Akceptanci do powiadomienia” otrzymają powiadomienie e-mail na kroku Akceptacji. Osoba wypełniająca rozbicie analityczne może zdecydować, do kogo powinno być wysłane powiadomienie (Zrzut ekranu 3), usuwając osoby dodane automatycznie do pola „Akceptanci do powiadomienia”.

 

Zrzut ekranu 2. Użytkownicy w polu „Akceptanci do powiadomienia” są uzupełniani dynamicznie, na podstawie wartości na liście Rozbicie analityczne

Zrzut ekranu 3. Przykładowe powiadomienie e-mail

 

Obieg testowy i konfiguracja

Działanie reguły SELECT VALUES zostanie zaprezentowane na liście pozycji Rozbicia analitycznego kont księgowych (Zrzut ekranu 4).

 

Zrzut ekranu 4. Lista pozycji Rozbicie analityczne

 

W konfiguracji listy pozycji Rozbicie analityczne, w regułach wywoływanych na zmianę wartości na liście pozycji (callback), zostały dodane reguły wykorzystujące funkcję SELECT VALUES (Zrzut ekranu 5). Pierwsza z nich ustawia wartość pola wyboru typu osoba/ grupa – „Akceptanci do powiadomienia”. Wartości z kolumny „Akceptant” kopiowane są do pola „Akceptanci do powiadomienia”. Druga, analogiczna reguła, ustawia wartość pola „Numery kont” na podstawie kolumny listy pozycji „Numer konta”.

 

Zrzut ekranu 5. Konfiguracja reguł wykorzystujących funkcje SELECT VALUES

 

Dodatkowo, aby zapewnić dynamiczne uzupełnianie się pól „Akceptanci do powiadomienia” oraz „Numery kont”, na kolumnie Akceptant listy pozycji Rozbicie analityczne powinien zaznaczony być parametr „Zmiana wartości wywołuje reguły na callback” (Zrzut ekranu 6).

 

Zrzut ekranu 6. Callback na kolumnie Akceptant

 

Na formularzu, kolumny „Numer konta” oraz Akceptant uzupełniane są automatycznie na podstawie wartości wybranej w kolumnie „Nazwa konta”. W przypadku, gdy na liście pozycji znajduje się pojedynczy wiersz (Zrzut ekranu 7), akcje wykonane na ścieżce „Akceptuj” przenoszą do pola „Numery kont” oraz „Akceptanci do powiadomienia” pojedyncze wartości (Zrzut ekranu 8).

 

Zrzut ekranu 7. Lista pozycji Rozbicie analityczne z pojedynczym wierszem

 

Zrzut ekranu 8. Pola wypełnione przy pomocy funkcji SELECT VALUES

 

W przypadku gdy na liście pozycji znajdzie się więcej niż jeden wiersz (Zrzut ekranu 9), do pól „Numery kont” oraz „Akceptanci do powiadomienia”’ zostaną przeniesione wszystkie wartości oddzielone średnikami (wartości puste są pomijane) (Zrzut ekranu 10).

 

Zrzut ekranu 9. Lista pozycji Rozbicie analityczne z trzema wierszami

 

Zrzut ekranu 10. Pola "Numery kont" i "Akceptanci do powiadomienia" wypełnione kolekcją wartości pochodzącą z listy pozycji

 

W przypadku gdy na liście pozycji znajdą się zduplikowane wartości, zostanie to odzwierciedlone w działaniu funkcji SELECT VALUES (Zrzut ekranu 11). Wartości z obydwu wierszy kolumny Numer konta, zostały skopiowane do pola tekstowego „Numery kont” po rozdzieleniu średnikiem. W przypadku kolumny Akceptant, użytkownik Alicja Kasacja jest widoczna w polu „Akceptanci do powiadomienia” również dwukrotnie. Jednakże, po odświeżeniu formularza, nazwisko będzie widoczne już tylko jednokrotnie, ponieważ pole „Akceptanci do powiadomienia” jest polem wyboru typu osoba/ grupa.

 

Zrzut ekranu 11. Lista pozycji ze zduplikowanymi wierszami

 

Podsumowanie

Funkcja SELECT VALUES znacząco ułatwia pobieranie wartości z list pozycji bezpośrednio na formularzu. Funkcja ta będzie pomocna wszędzie tam, gdzie wartości wprowadzone na liście pozycji wykorzystywane są w innych polach formularza, bądź warunkują przebieg ścieżki procesowania elementu.