Wprowadzenie
Za pomocą aplikacji Indywidualne weryfikacje można rejestrować weryfikacje, które uzupełniają istniejące sprawdzenia w jednostce biznesowej (Business Entity). Takie uzupełnione weryfikacje działają wyłącznie w bazie danych OLTP, w której zostały zarejestrowane.
Opis
Za pomocą aplikacji Indywidualne weryfikacje można rejestrować weryfikacje dla bazy danych OLTP, do której użytkownik jest zalogowany. Te weryfikacje nie mogą być wykorzystywane w żadnej innej bazie danych OLTP.
Indywidualna weryfikacja rozszerza proces weryfikacji określonej jednostki biznesowej (Business Entity). Tak rozszerzona weryfikacja jest stosowana zarówno w aplikacjach dialogowych, jak i podczas importu lub eksportu. Wynik tych indywidualnych weryfikacji można wyświetlić jako indywidualny komunikat. Taki komunikat jest pokazywany razem z komunikatami zapisanymi w bazie danych repozytorium w odpowiednim kontekście.
Aplikacja składka się tylko z nagłówka i obszaru roboczego.
Nagłówek
W nagłówku należy wskazać hook contract, który ma zostać uzupełniony o indywidualną weryfikację. Dostępne pole:
Hook contract – pole zawiera nazwę oraz w nawiasie w pełni kwalifikowaną nazwę hook contract. Za pomocą hook hontract dane jednostki biznesowej mogą być już częściowo weryfikowane. Wybrany hook contract jest uzupełniany o indywidualną weryfikację. Do wyboru są tylko te hook contract, dla których można zarejestrować indywidualną weryfikację.
Obszar roboczy
Dostępne funkcje
W indywidualnych weryfikacjach można używać wszystkich funkcji i poleceń języka skryptowego systemu, które mają konteksty użycia ALL i OLTP. Dostępne funkcje języka skryptowego systemu zostały opisane w następujących artykułach:
Pola zdefiniowane przez użytkownika
Wybrane jednostki biznesowe umożliwiają weryfikację pól zdefiniowanych przez użytkownika za pomocą indywidualnej weryfikacji. W takim przypadku dostępna jest funkcja z prefiksem validateExtension_, którą można zaimplementować.
Parametr view zawiera widok obiektu jednostki biznesowej, do której należą pola zdefiniowane przez użytkownika. Parametr extension zawiera pola zdefiniowane przez użytkownika.
Dla każdego atrybutu X z pól definiowanych przez użytkownika w parametrze extension istnieją następujące atrybuty:
Atrybut | Opis |
---|---|
X_val | Wartość pola definiowanego przez użytkownika o technicznej nazwie X. Typ danych X_val jest określany przez pole definiowane przez użytkownika. |
X_id | Identyfikator komunikatu pola definiowanego przez użytkownika o technicznej nazwie X. |
Indywidualna kontrola pól zdefiniowanych przez użytkownika w artykule w widoku podstawowe.
function validateExtension_EXTItem( view as DataView(com.cisag.app.general.item.model.Item), extension as Extension_EXTItem) { if (extension.PRICE_val:amount>1000) { sendMessage(extension.PRICE_id, "PRICE_TOO_HIGH", format(extension.PRICE_val:amount)) } }
Przykład: Nowa kontrola pola obowiązkowego
Można na przykład zadeklarować pole jako obowiązkowe za pomocą indywidualnej weryfikacji. W poniższym przykładzie pole Numer i data dokumentu zewnętrznego w aplikacji Zamówienia sprzedaży zostanie uznane za obowiązkowe w przypadku rodzaju zamówienia sprzedaży Zagraniczne.
Jeśli numer i data dokumentu zewnętrznego nie zostaną podane, zostanie wyświetlony komunikat o błędzie.
Należy jednak pamiętać, że numer i data dokumentu zewnętrznego nie otrzyma szarego narożnika, który zwykle sygnalizuje pole obowiązkowe.
Instrukcja
W tym przykładzie wprowadź indywidualną kontrolę w następujący sposób. 1:
- Otworzyć aplikację Indywidualne komunikaty.
-
Zarejestrować nowy komunikat:
-
- Komunikat – KOM0001
- Typ komunikatu – Błąd
- Krótki tekst komunikatu – „Należy podać numer i datę dokumentu zewnętrznego”.
- Długi tekst komunikatu – „Typ zamówienia sprzedaży „{0}” wymaga wprowadzenia numeru zewnętrznego i daty dokumentu”.
-
Otworzyć aplikację Indywidualne weryfikacje.
-
Wybrać implementację hook contract:
„Zamówienia sprzedaży (com.cisag.app.sales.order.hook.log.SalesOrder)” - Wybrać akcję Nowy na standardowym pasku narzędzi. W polu Funkcje weryfikacyjne zostanie utworzona pusta definicja funkcji dla każdej funkcji sprawdzającej.
- Wprowadzić następującą funkcję weryfikacyjną:
function validateHeader( persistent as Data-View(com.cisag.app.sales.order.model.SalesOrder), current as DataView(com.cisag.app.sales.order.model.SalesOrder)) { if (current->Type:code="Zagraniczne" AND current:customerOrderData.purchaseOrder="") sendMessage(current:customerOrderData.purchaseOrder, "KOM0001",current->Type:code); }
- Zapisać dane.
- Weryfikacja została aktywowana.
Przygotowywanie hook contract dla indywidualnych weryfikacji
Aby możliwe było rejestrowanie indywidualnych weryfikacji dla jednostki biznesowej, konieczne jest przygotowanie odpowiedniego hook contract.
W pierwszej kolejności musi istnieć hook weryfikacyjny dla danej jednostki biznesowej. Należy zaimplementować ten hook weryfikacyjny za pomocą implementacji hook contract. Implementująca klasa Java musi dziedziczyć po klasie com.cisag.pgm.base.CisCustomizableAdapter.
Do przygotowania hook contract potrzebna jest znajomość tworzenia aplikacji w języku Java oraz integracji z systemem ERP.
Konfiguracja
W aplikacji Konfiguracja nie występują dedykowane parametry dla aplikacji Indywidualne weryfikacje.
Jednostki biznesowe
Aplikacja Indywidualne weryfikacje jest powiązana z jednostką biznesową: com.cisag.sys.tools.validation.obj.UserValidation, która może być używana do:
-
przydzielania uprawnień
-
konfigurowania definicji działań
- importowania lub eksportowania danych
Uprawnienia
Uprawnienia mogą być nadawane za pomocą ról uprawnień lub przypisania do organizacji. Szczegółowe informacje znajdują się w artykule Uprawnienia.
Uprawnienia specjalne
Aplikacja Indywidualne weryfikacje nie posiada żadnych specjalnych uprawnień.
Przyporządkowania organizacji
Aplikacja Indywidualne weryfikacje nie wymaga przypisania do organizacji.
Specjalne możliwości
Aplikacja Indywidualne weryfikacje nie posiada specjalnych możliwości.
Uprawnienia dla partnerów biznesowych
Aplikacja Indywidualne weryfikacje nie jest dostępna dla partnerów biznesowych.