Walidator sprawdza istnienie wpisu w bazie danych (np. może sprawdzić, czy istnieje użytkownik o danym id). Następnie sprawdza, czy wpis ten posiada te same wartości, które znajdują się na formularzu (możemy sami zdecydować, które wartości ma porównać).
W oknie dodania/edycji istnieje możliwość pominięcia walidacji i przejścia dalej.
Aby walidator działał poprawnie, musimy przygotować odpowiednie zapytania w bazie danych, które będą wywoływane podczas sprawdzania istnienia/identyczności/dodawania/edycji danych. W tym celu należy dodać cztery zapytania do tabeli pm_dbqueries, pamiętając o dodaniu odpowiedniego identyfikatora.
Przykład: Załóżmy, że chcemy sprawdzić, czy istnieje użytkownik, którego dane są zapisane na formularzu. Przykładowe wpisy w pm_dbqueries mogłyby wyglądać tak:
W tym przykładzie nasz klucz zapytania to USER. Do klucza zapytania musimy dodać frazy: _EXIST, _EQUALS, _INSERT bądź _UPDATE, by określić ich przeznaczenie. Parametry oznaczone znakiem zapytania możemy dodać w konfiguracji walidatora(należy pamiętać o kolejności! w ostatnim zapytaniu identyfikator wiersza pojawia się na końcu!)
Nazwa bazy danych ( typ : wartość tekstowa ) - Nazwa bazy danych skonfigurowana w dbExplorer w systemie PlusWorkflow
Klucz zapytania ( typ : wartość tekstowa ) - Klucz (przedrostek z kolumny name z tabeli pm_dbqueries) na postawie którego pobrane zostaną zapytania
Parametry zapytania ( typ : tablica wartości tekstowych ) - Wartości parametrów zapytania o istnienie
Typy parametrów ( typ : tablica wartości tekstowych ) - Typy parametrów zapytania o istnienie, jakie są zapisane w bazie(dla tekstowych - string, dla liczb - number)
Parametry zapytania ( typ : tablica wartości tekstowych ) - Wartości parametrów zapytania o identyczność
Typy parametrów ( typ : tablica wartości tekstowych ) - Typy parametrów zapytania o identyczność, jakie są zapisane w bazie(dla tekstowych - string, dla liczb - number)
Parametry zapytania ( typ : tablica wartości tekstowych ) - Wartości parametrów zapytania o dodanie
Typy parametrów ( typ : tablica wartości tekstowych ) - Typy parametrów zapytania o dodanie, jakie są zapisane w bazie(dla tekstowych - string, dla liczb - number)
Parametry zapytania ( typ : tablica wartości tekstowych ) - Wartości parametrów zapytania o aktualizację
Typy parametrów ( typ : tablica wartości tekstowych ) - Typy parametrów zapytania o aktualizację, jakie są zapisane w bazie(dla tekstowych - string, dla liczb - number)
Nazwa okna ( typ : wartość tekstowa ) - Tytuł okna, które pojawi się, gdy identyczny wiersz nie zostanie znaleziony
Pytanie o dodanie ( typ : wartość tekstowa ) - Komunikat do użytkownika, który pojawi się w oknie, gdy nie zostanie znaleziony wiersz o danym kluczu(możliwość dodania wiersza)
Pytanie o aktualizację ( typ : wartość tekstowa ) - Komunikat do użytkownika, który pojawi się w oknie, gdy zostanie znaleziony wiersz o danym kluczu ale o innych wartościach(możliwość aktualizacji wiersza)
Nazwa przycisku dodania ( typ : wartość tekstowa ) - Nazwa pod jaką ma występować przycisk służący do dodania nowego wiersza, a następnie akceptacji zadania
Nazwa przycisku aktualizacji ( typ : wartość tekstowa ) - Nazwa pod jaką ma występować przycisk służący do aktualizacji wiersza, a następnie akceptacji zadania
Nazwa przycisku przejścia dalej ( typ : wartość tekstowa ) - Nazwa pod jaką ma występować przycisk służący do przejścia dalej, bez modyfikacji wpisów w bazie danych
Nazwa przycisku cofnięcia ( typ : wartość tekstowa ) - Nazwa pod jaką ma występować przycisk służący do powrotu do formularzu zadania