Baza wiedzy Trawers ERP

Warunki (filtry). Składnia wyrażeń

1. Opis ogólny Nadawanie praw dostępu Zapytania wg warunków Przeglądanie kartotek 2. Składnia wyrażeń filtrujących 3. Przykłady filtrowania 4. [Niepoprawny warunek dla pola] 5. Tematy powiązane

1. Opis ogólny

Wyrażenia filtrujące (filtry) stosowane są podczas przeglądania kartotek: * Kartoteka odbiorców * Kartoteka dostawców * Kartoteka adresów odbiorców * Kartoteka indeksów KIM * Kartoteka partii LOT * Kartoteka serii SER * Kartoteka zleceń produkcyjnych Patrz szczegóły: Warunki (filtry). Opis ogólny Wyrażenia filtrujące (filtry) stosowane są podczas nadania praw dostępu: * do kart indeksów KIM, kart magazynowych KSOM i kart LOT/SER * do kart odbiorców i dostawców * do kart zleceń produkcyjnych * do symboli dekretacji Uprawnienia operatorów (role) Przykłady wyrażeń: ----------- 02,10-19,99 ?9,<19> ??0001 -----------

2. Składnia wyrażeń filtrujących

Wyrażenia, które definiują filtry muszą spełniać wymogi sematyczne (rodzaj użytych elementów) oraz wymogi syntaktyczne (układ elementów). W wyrażeniu określającym warunek (filtr) dozwolone są litery, cyfry oraz następujące znaki specjalne: -------------------------------------------------- [,] oddziela elementy [-] oznacza zakres [<] rozpoczyna grupę elementów pomijanych [>] kończy grupę '<' [?] znak specjalny : zastępuje jeden dowolny znak [*] znak specjalny : zastępuje ciąg znaków -------------------------------------------------- Od zastosowanych wartości pól oraz użytych znaków zależy rezultat filtrowania. Np. nie pojawią się żadne rekordy z przeglądanej kartoteki. Program może także sygnalizować błędną składnię, np. Niepoprawny warunek dla pola: <nazwa pola>

3. Przykłady filtrowania

Niech zbiór zawiera symbole:
----------------------------------------------------------- 01,02,03,04,05,06,07,08,09,10,11,12,19,21,22,31,41,48,50,99 ----------------------------------------------------------- WYRAŻENIE: 02,10-19,99 --> WYNIK: 02,10,11,12,19,99 WYRAŻENIE: ?9,<19> --> WYNIK: 09,99 WYRAŻENIE: ?1,02,10-50,<19,21-22,4?>,99 --> WYNIK: 01,02,10,11,12,31,50,99
Niech zbiór zawiera symbole:
----------------------------------------------------------- AA0001,AA0002,BB0001,BB0002,BB0003,C10001,C20001 ----------------------------------------------------------- WYRAŻENIE: AA* --> WYNIK: AA0001,AA0002 WYRAŻENIE: ??0001 --> WYNIK: AA0001,BB0001,C10001,C20001 WYRAŻENIE: <C1*,BB*> --> WYNIK: AA0001,AA0002,C20001
Wyrażenia z symbolami, które mogą zawierać znaki spacji
Gdy szukany symbol o długości 6 znaków zawiera spacje np. 'ABC ' to prawidłowe wyrażenie może mieć postać: WYRAŻENIE: ABC , <-- przecinek po 6 znakach lub WYRAŻENIE: ABC*

4. [Niepoprawny warunek dla pola]

Od zastosowanych wartości pól oraz użytych znaków zależy rezultat filtrowania. Np. nie pojawią się żadne rekordy z przeglądanej kartoteki. Program może także sygnalizować błędną składnię, np. Niepoprawny warunek dla pola: <nazwa pola>
Przyczyny problemu. Na przykładzie
Kartoteka KIM, pole: Rodzina Warunki (filtry) operatorów Rodzina : KINKIETY Program informuje: Niepoprawny warunek dla pola: Rodzina Komunikat wynika z tego, że podany w warunku symbol: Rodzina jest krótszy niż 16 znaków i nie zawiera znaków specjalnych [*] i [?] Wyjaśnienie: * W Tabeli Rodzin, symbol Rodziny może mieć do 16 znaków alfanumerycznych (można podać symbol któtszy niż 16 znaków) * W warunku KIM można wyszukiwać wartości dokładne albo ze znakami specjalnymi: [*] i [?] * Dokładne wartości, to takie, które mają długość zgodną z rozmiarem pola, np. Dostawca (C6): 123456 Magazyn (C2): 10 Rodzina (C16): ZLEWOZMYWAKI_ABC * Ze znakami specjalnymi można podać tylko fragment, np. Dostawca: 123*. W takimm przypadku liczba znaków może być mniejsza.
Zalecenie
Wyszukiwanie indeksów KIM należących do rodziny, której symbol jest krótszy niż 16 znaków: trzeba uzupełnić spacjami do 16 i zakończyć przecinkiem, np. Rodzina : RODZINA XYZ , <--- przecinek (,) po 16-tym znaku ---------------- 1234567890123456 Gdy zabraknie przecinka (,), to program napisze: Niepoprawna składnia
Warianty wyrażenia
Rodzina : RODZINA XYZ* [RODZINA XYZ*] także jest poprawne, lecz może wyszukać (filtrować) wiele kart KIM powiązanych z rodzinami, np. RODZINA_XYZ RODZINA_XYZ_1 RODZINA_XYZQ

5. Tematy powiązane

Warunki (filtry). Opis ogólny Bezpieczeństwo. Mechanizmy Uprawnienia operatorów (role) Warunki (filtry) operatorów Warunki (filtry) dekretacji Formaty daty, czasu Wyrażenia regularne (regex) Słowa kluczowe #Admin-Zadania #Admin-Parametryzacja #Raporty-Filtry