...
Metoda walidująca weryfikuje czy parametr pesel_param jest PESELem. Jeżeli nie jest, to dodaje tłumaczoną informacje o tym do obiektu ValidationErrors oraz oznacza, że chodzi o zmienną podaną w parametrze.
...
Zdefiniujemy zatem jeszcze funkcję, którą wykorzystamy jako warunek wykonania akcjiwalidacji. Ustawienie warunku odbywa się za pomocą narzędzia PlusWorkflowEditor.
...
Code Block | ||
---|---|---|
| ||
@Functions public class BasicFunctions { @Function public Booleanboolean lteempty( FloatString a, Float b value ) { return a.floatValue()value <= b.floatValue()= null || value.trim().isEmpty(); } } |
Każda zarejestrowana funkcja powinna dostarczać implementację tej funkcji w języku JavaScript na potrzeby przeglądarki. Dla funkcji wykorzystywanych w akcjach formularza jest to wymagane. Implementacja jest następująca:
Code Block | ||
---|---|---|
| ||
PW.Functions.register("lte", "boolean", ["float", "float"], function(value1, value2){
return value1 <= value2;
}); |
Wykorzystanie tej funkcji jako warunek wykonania akcji oznaczać będzie, że akcji zostanie uruchomiona, gdy value1 będzie mniejsze lub równe od value2. W przeciwnym razie akcja zostanie zatrzymana.
Konfiguracja wtyczki
...
Konfiguracja wtyczki
Walidator został już zdefiniowany. Należy jeszcze "powiedzieć" systemowi, że wtyczka udostępnia akcje walidator i funkcje funkcję oraz korzysta z tłumaczeń. Plik suncode-plugin.xml powinien wyglądać następująco:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <plugin key="${project.groupId}-${project.artifactId}" name="HideValidate ActionPesel Tutorial"> <!-- Udostępnianie tłumaczeń --> <i18n key="i18n"/> <!-- Udostępnianie akcjiwalidatorów --> <form-actionsvalidators key="actionsvalidators" /> <!-- Udostępnianie funkcji--> <functions key="functions" /> <!-- Lokalizacja do skryptów z funkcjami--> <web-scripts key="formScripts" fragment="form" > <resource>/resources/functions/functions.js</resource> </web-scripts> </plugin> |
Info |
---|
Do wstrzyknięcia skryptu zawierającego implementacje funkcji wykorzystano moduł <webscripts> opisany w rozdziale Wstrzykiwanie skryptów |
...
Wykorzystanie walidatora w zadaniu
Stworzona akcja Stworzony walidator będzie mogła mógł być wykorzystana wykorzystany w edytorze procesów po uruchomieniu wtyczki. Aby sprawdzić jej zadanie jego działanie należy stworzyć prosty proces, a następnie dodać naszą akcjęnasz walidator do przycisku akceptacji. Aby to zrobić należy wejść w formularz zadania następnie po lewej stronie rozwinąć Akcje i przeciągnąć naszą akcję na formularz., następnie wejść w edycję przycisku akceptacji i rozwinąć zakładkę Walidatory. Następnie przy pomocy przycisku należy dodać walidator.
Po upuszczeniu akcji na formularzu dodaniu walidatora pojawi się okno z jego definicją akcji. Należy uzupełnić parametr akcji walidatora oraz warunek wywołania.
W tym momencie dodaliśmy akcję walidator do zadaniaprzycisku akceptującego zadanie, która będzie ukrywać zmienne Zmiennoprzecinkowa i Data i Czas, jeżeli wartość zmiennej Całkowita będzie mniejsza bądź równa 0. W przeciwnym wypadku zmienne zostaną pokazane.Poniżej wartość zmiennej Calkowita wynosi -2, więc zmienne zostały ukrytektóry będzie weryfikował czy zmienna Pesel jest PESELem. Walidacja będzie wywoływana tylko jeżeli zmienna Imię i Nazwisko nie będzie pusta.
Poniżej został przedstawiony wynik walidacji błędnego PESELu.
Natomiast gdy zmienna Całkowita ma wartość dodatnią to zmienne zostaną z powrotem wyświetlone.
...