Image Added
Polish |
---|
← Powrót do listy dostępnych walidatorów Panel |
---|
title | Podstawowe informacje |
---|
| |
Panel |
---|
| 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ć). Warning |
---|
Walidator nie działa w trybie podglądu! |
Sposób działania został przedstawiony na poniższym diagramie: Image Modified
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. |
|
...
Parametry konfiguracyjne
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
...
| Nazwa parametru | Od wersji | Opis | Typ parametru | Wartość domyślna | Rodzaj pola | Uwagi i ograniczenia |
---|
Nazwa bazy danych* | 1.0.14 | Login sprawdzanego użytkownika. | Tekst | | Lista wartości | | Klucz zapytania* | 1.0.14 | Parametr określa, czy wyszukiwany użytkownik musi znajdować się na liście aktywnych użytkowników. | Tekst | | Pole edytowalne | | Parametry zapytania o istnienie* | 1.0.14 | Wartości parametrów zapytania o istnienie |
|
|
...
Tablica wartości tekstowych | | Pole edytowalne | | Typy parametrów* | 1.0.14 | Typy parametrów zapytania o istnienie, jakie są zapisane w bazie |
|
|
...
| Tablica wartości tekstowych | | Lista wartości | | Parametry zapytania o identyczność* | 1.0.14 | Wartości parametrów zapytania o identyczność |
|
|
...
Tablica wartości tekstowych | | Pole edytowalne | | Typy parametrów* | 1.0.14 | Typy parametrów zapytania o identyczność, jakie są zapisane w bazie |
|
|
...
| Tablica wartości tekstowych | | Lista wartości | | Parametry zapytania o dodanie* | 1.0.14 | Wartości parametrów zapytania o dodanie |
|
|
...
Tablica wartości tekstowych | | Pole edytowalne | | Typy parametrów* | 1.0.14 | Typy parametrów zapytania o dodanie, jakie są zapisane w bazie |
|
|
...
| Tablica wartości tekstowych | | Lista wartości | | Parametry zapytania o aktualizację* | 1.0.14 | Wartości parametrów zapytania o aktualizację |
|
|
...
Tablica wartości tekstowych | | Pole edytowalne | | Typy parametrów* | 1.0.14 | Typy parametrów zapytania o aktualizację, jakie są zapisane w bazie |
|
|
...
| Tablica wartości tekstowych | | Lista wartości | | Nazwa okna* | 1.0.14 | Tytuł okna, które pojawi się, gdy identyczny wiersz nie zostanie znaleziony |
|
|
...
Tekst | | Pole edytowalne | | Pytanie o dodanie* | 1.0.14 | Komunikat do użytkownika, który pojawi się w oknie, gdy nie zostanie znaleziony wiersz o danym kluczu(możliwość dodania wiersza) | Tekst | | Pole edytowalne | | Pytanie o aktualizację |
|
|
...
* | 1.0.14 | 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) | Tekst | | Pole edytowalne | | Nazwa przycisku dodania |
|
|
...
* | 1.0.14 | Nazwa pod jaką ma występować przycisk służący do dodania nowego wiersza, a następnie akceptacji zadania | Tekst | Dodaj | Pole edytowalne | | Nazwa przycisku aktualizacji |
|
|
...
* | 1.0.14 | Nazwa pod jaką ma występować przycisk służący do aktualizacji wiersza, a następnie akceptacji zadania | Tekst | Aktualizuj | Pole edytowalne | | Nazwa przycisku przejścia dalej |
|
|
...
* | 1.0.14 | Nazwa pod jaką ma występować przycisk służący do przejścia dalej, bez modyfikacji wpisów w bazie danych | Tekst | Przejdź dalej | Pole edytowalne | | Nazwa przycisku cofnięcia |
|
|
...
* | 1.0.14 | Nazwa pod jaką ma występować przycisk służący do powrotu do formularzu zadania | Tekst | Wróć do formularza | Pole edytowalne | |
|
Panel |
---|
title | Przykładowa konfiguracja |
---|
| Image Added
|
Panel |
---|
| 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: |
|
...
USERS_EXIST | SELECT * FROM pm_cust_users WHERE |
|
|
...
...
USERS_EQUAL | SELECT * FROM pm_cust_users WHERE |
|
|
...
...
...
lastname = ? AND address = ? |
|
|
...
USERS_INSERT | INSERT INTO pm_cust_users ( |
|
|
...
...
...
lastname, address) VALUES (?, ?, ?, ?) |
|
|
...
USERS_UPDATE | UPDATE pm_cust_users SET |
|
|
...
...
lastname = ?, address = ? WHERE |
|
|
...
W tym przykładzie nasz klucz zapytania to |
|
...
USERS. 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!) |
|
...
Konfiguracja dla tego przykładu mogłaby wyglądać tak: Image Added
|
Panel |
---|
| 1.0.14 Dodanie komponentu 1.0.36 Zmiana sekcji z "Ogólne" na "Baza danych" 1.0.43 Zmiana nazwy z "Walidacja danych z formularza w bazie danych" na "Weryfikacja danych z formularza w bazie danych" 1.0.57 Dodanie dynamicznego formularza |
Panel |
---|
| View file |
---|
name | [WALIDATOR] Walidacja danych z formularza w bazie danych.zip |
---|
height | 250 |
---|
|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-64 |
---|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-388 |
---|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-433 |
---|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-463 |
---|
|
|
|
English |
---|
← Return to the list of validators available Panel |
---|
| The validator checks the existence of an entry in the database (eg it can check if there is a user with a given id). Then it checks whether the entry has the same values that are on the form (you can decide for yourself which values to compare). Warning |
---|
The validator does not work in preview mode! |
The method of operation is presented in the diagram below: Image Added
In the add/edit window you can skip validation and continue. In order for the validator to work correctly we must prepare appropriate queries in the database that will be called when checking the occurence/identity/adding/editing of data. To do this, add four queries to the pm_dbqueries table, remembering to add the appropriate identifier. |
Panel |
---|
title | Configuration paramaters |
---|
| Parameter name | From version | Description | Parameter type | Default value | Field type | Comments and restrictions |
---|
Database name * | 1.0.14 | Login of the checked user. | Text | | List of values | | Query key * | 1.0.14 | The parameter determines whether the searched user must be in the list of active users. | Text | | Editable field | | Parameters of query for occurence * | 1.0.14 | The values of the query parameters for occurence | Table of text values | | Editable field | | Parameter types * | 1.0.14 | Types of query parameters for occurence that are stored in the database | Table of text values | | List of values | | Parameters of the identity query * | 1.0.14 | Values of query parameters for identity | Table of text values | | Editable field | | Parameter types * | 1.0.14 | Types of query parameters for identity, which are stored in the database | Table of text values | | List of values | | Parameters of the adding query * | 1.0.14 | The values of query parameters for adding | Table of text values | | Editable field | | Parameter types * | 1.0.14 | Types of query parameters for adding, which are saved in the database | Table of text values | | List of values | | Parameters of the update query * | 1.0.14 | Values of query parameters for update | Table of text values | | Editable field | | Parameter types * | 1.0.14 | Types of update request parameters that are stored in the database | Table of text values | | List of values | | Window name * | 1.0.14 | The title of the window that appears when an identical row is not found | Text | | Editable field | | Question about adding * | 1.0.14 | Message to the user which will appear in the window when no row is found for the given key (option to add a row) | Text | | Editable field | | Question about the update * | 1.0.14 | Message to the user which will appear in the window when a row with a given key is found but with different values (the possibility of updating the line) | Text | | Editable field | | Name of the add button * | 1.0.14 | The name under which the button should appear to add a new row and then accept the task | Text | Add | Editable field | | Name of the update button * | 1.0.14 | The name under which the button should appear to update the row and then accept the task | Text | Update | Editable field | | Name of the continue button * | 1.0.14 | The name under which the button should appear to continue without modifying entries in the database | Text | Continue | Editable field | | Name of the undo button * | 1.0.14 | The name under which the button should appear to return to the task form | Text | Return to form | Editable field | |
|
Panel |
---|
title | Configuration example |
---|
| Image Added
|
Panel |
---|
| Example: Assume you want to check if there is a user whose data is stored on the form. The example entries in pm_dbqueries might look like this: name | query |
---|
USERS_EXIST | SELECT * FROM pm_cust_users WHERE username = ? | USERS_EQUAL | SELECT * FROM pm_cust_users WHERE username = ? AND firstname = ? AND lastname = ? AND address = ? | USERS_INSERT | INSERT INTO pm_cust_users (username, firstname, lastname, address) VALUES (?, ?, ?, ?) | USERS_UPDATE | UPDATE pm_cust_users SET firstname = ? , lastname = ?, address = ? WHERE username = ? |
In this example, our query key is USERS. We need to add the following to the question key: _EXIST, _EQUALS, _INSERT or _UPDATE to determine their purpose. Parameters marked with a question mark can be added in the configuration of the validator (remember the order! In the last query the row identifier appears at the end!) Configuration for this example might look like this: Image Added
|
Panel |
---|
| 1.0.14 Adding a component 1.0.36 Change of section from "General" to "Database" 1.0.43 Changing the name from "Validating data from the form in the database" to "Verifying data from the form in the database" 1.0.57 Adding a dynamic form |
Panel |
---|
| View file |
---|
name | [WALIDATOR] Walidacja danych z formularza w bazie danych.zip |
---|
height | 250 |
---|
|
|
Hide If |
---|
| JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-64 |
---|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-388 |
---|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-433 |
---|
|
JIRA |
---|
server | 192.168.1.52 JIRA |
---|
serverId | 2e6b42a8-62e1-3c71-bfe9-dbf183b33dc1 |
---|
key | CUFCMP-463 |
---|
|
|
|