Funkcje JavaScript w atrybutach HTML – część 2

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2020.1.3.x autor: Agnieszka Burda

 

Wprowadzenie

W poniższym artykule omówione zostaną funkcje JavaScript, jakie są dostępne dla list pozycji w konfiguracji kontrolki HTML.

Opisane funkcjonalności są rozszerzeniem artykułu Atrybut typu HTML, który dostępny jest pod linkiem: https://kb.webcon.pl/atrybut-typu-html/.

 

Funkcje dla list pozycji

W przypadku list pozycji BPS oferuje kilka przydatnych funkcji, które może wykonywać kontrolka HTML.

Poniżej w oddzielnych podrozdziałach zostaną omówione wszystkie z nich.

A) Liczba rekordów

W niektórych sytuacjach przydatne może okazać się określenie liczby elementów na liście i zapisanie wyniku do pola. Jednym z rozwiązań, jakie oferuje nam system jest wykorzystanie kontrolki HTML.

Rys.1. Kontrolka Count employees

 

Po wciśnięciu przycisku wartość w polu Liczba pracowników zostanie zaktualizowana.

Rys.2. Działanie kontrolki Count employees

 

W Studio, w konfiguracji kontrolki HTML wykorzystano funkcję SetValue, która ustawia liczbę rekordów z listy pozycji Pracownicy (funkcja SubelementCountRows) jako wartość w polu Liczba pracowników.

Rys.3.  Konfiguracja kontrolki Count employees

 

B) Czy lista ma rekordy?

Kolejna z funkcji sprawdza, czy lista pozycji ma przynajmniej jeden rekord. Można ją wykorzystywać do pisania bardziej skomplikowanych kodów HTML.

Rys.4. Kontrolka Verify

 

Jeśli lista pozycji ma dodane wiersze, to po wciśnięciu przycisku Verify pojawi się wymagane pole Consultant. Jeśli lista nie ma żadnych wierszy lub wiersze zostaną usunięte, to po wciśnięciu ww. przycisku pole Consultant zostanie ukryte.

Rys.5. Działanie kontrolki Verify

 

W konfiguracji kontrolki utworzono funkcję onClick(), która, za pomocą SubelementHasRows sprawdza, czy lista pozycji Employees ma wiersze. Jeśli tak, pokazuje pole Consultant. W przeciwnym wypadku pole Consultant zostaje ukryte. Następnie, funkcja ta zostaje wykorzystana w konfiguracji przycisku w konfiguracji onclick – na kliknięcie przycisku.

Rys.6. Konfiguracja kontrolki Verify

 

C) Ponowna inicjalizacja listy

Kolejną przydatną funkcją jest ponowna inicjalizacja listy pozycji. W zaprezentowanym przykładzie, po wyborze managera lista pozycji powinna zostać zainicjalizowana jego podwładnymi.

Rys.7. Kontrolka Initialize Employees

 

W tym celu w konfiguracji listy pozycji w zakładce Initialization znalazło się poniższe zapytanie:

Rys.8. Inicjalizacja listy pozycji

 

Ponadto utworzona została kontrolka Initialize Employees, która po wciśnięciu spowoduje, że lista Employees zostanie uzupełniona odpowiednimi danymi pracowników.

 

Rys.9. Działanie kontrolki Initialize Employees

 

W konfiguracji kontrolki wykorzystano funkcję SubelementInitilization, która po wciśnięciu przycisku ponownie inicjalizuje podaną listę pozycji.

Rys.10. Konfiguracja kontrolki Initialize Employees

 

D) Usuń wszystkie rekordy

Następna z funkcji to czyszczenie listy pozycji. Na liście poniżej znajduje się kilka wierszy z informacjami dotyczącymi pracowników.

Rys.11. Kontrolka Clean list Employee

 

Następnie po wciśnięciu kontrolki Clean list Employee lista zostanie wyczyszczona.

Rys.12. Działanie kontrolki Clean list Employee

 

W konfiguracji kontrolki wykorzystano funkcję SubelementDelete, która wykonywana jest na kliknięcie przycisku.

Rys. 13. Konfiguracja kontrolki Clean list Employee

E) Usuń jeden rekord

Kolejna funkcja służy do usuwanie jednego rekordu w liście pozycji. W procesie utworzono listę z zainicjalizowanymi wartościami.

Rys.14. Kontrolka Clean one row

 

Aby usunąć jeden wiersz z listy należy użyć kontrolki Clean one row. W tym przypadku usunięty zostanie pierwszy wiersz.

Rys.15. Działanie kontrolki Clean one row

 

W konfiguracji kontrolki wykorzystano funkcję SubelementDelete, która wykonywana jest na kliknięcie przycisku. Pierwszym z parametrów tej funkcji jest lista pozycji, natomiast drugim – numer wiersza, który ma zostać usunięty.

Rys.16. Konfiguracja kontrolki Clean one row

 

F) Usuń kilka rekordów

W podobny sposób jak usuwanie jednego wiersza, możliwe jest usuwanie kilku wierszy.

Rys.17. Kontrolka Delete 3 rows

 

Po wciśnięciu przycisku usunięte zostaną wybrane wiersze. W tym przypadku są to 3 pierwsze wiersze listy.

Rys.18. Działanie kontrolki Delete 3 rows

 

W konfiguracji kontrolki wykorzystano funkcję DeleteSubelementRows. Pierwszy z jej parametrów to wskazana lista pozycji. Drugi to lista zamknięta w kwadratowych nawiasach, zawierająca numery wierszy, które mają zostać usunięte.

Rys.19. Konfiguracja kontrolki Delete 3 rows

 

Zakończenie

WEBCON BPS oferuje wiele funkcji dostępnych wraz z kontrolką HTML, jakie mogą zostać użyte dla listy pozycji. Oprócz niestandardowego wyglądu, wykorzystanie takiej kontrolki stwarza wiele ciekawych opcji przygotowania bardziej dynamicznego formularza.