Konfigurace serveru - ConfigXFilters.json
Soubor: SYSTÉMOVÝ_DISK:/ProgramData/WinQServer/ConfigXFilters.json
Soubor: SYSTÉMOVÝ_DISK:/ProgramData/WinQServer/ConfigXFilters.json
Rozsah: celý systém
ConfigXFilters.json definuje filtry pro záznamy Přístrojů a Kalibrací. Filtry pomáhají uživatelům vyhledávat konkrétní záznamy nebo vypisovat určité záznamy (například zařízení, u kterých již uplynul termín kalibrace).
Všechny filtry uvedené v tomto souboru se zobrazí na stránce Nastavení - Filtry v klientské aplikaci, kde si každý uživatel může samostatně vybrat, které filtry chce používat. Nově přidané filtry jsou ve výchozím nastavení na stránce Nastavení - Filtry deaktivovány.
Syntaxe
Každý filtr je definován skupinou atributů, které jsou uvedeny mezi '{' a '}'. Atribut má svůj název, kterému je pomocí operátoru ':' přiřazena hodnota (pole hodnot je uvozeno mezi '[' a ']' ). Jednotlivé atributy i samotné filtry jsou odděleny ',' od předcházející definice.
PARAMETR SKUPINY FILTRŮ
|
POPIS
|
PŘÍKLAD
|
|
"type"
|
Může být "device" nebo "calibration". Definuje, kde se má filtr zobrazit.
|
"type": "device",
|
|
"name"
|
Zobrazované jméno pro uživatele klientské aplikace.
|
"name": "Customer",
|
|
"join"
|
Slouží k pokročilému filtrování pomocí záznamů z více tabulek SQL. Součást příkazu SQL, který se přidává za klauzuli JOIN (včetně "join").
|
"join": "JOIN failure ON device_enr.id=failure.fk_device",
|
|
"sql"
|
Část příkazu SQL, která se přidává za klíčové slovo WHERE. Příkazy SQL mohou být pevně stanoveny nebo dále parametrizovány pomocí argumentů, jak je definováno níže.
|
"sql": "fk_workplace = '{{Location ID}}'",
with Location ID being f.e. 5, this filter will generate SQL command "SELECT * FROM device WHERE fk_workplace = 5"
|
|
"description"
|
Popis pro uživatele klientské aplikace.
|
"description": "Displays devices that belong to the customer's selected workplace.",
|
|
"arguments"
|
Argumenty umožňují uživatelům parametrizovat filtry pomocí jejich vstupů. Například vyhledat konkrétní přístroj na základě jeho sériového čísla. Když uživatel klikne na filtr s argumenty v klientské aplikaci, zobrazí se vyskakovací formulář s názvy parametrů, vstupy a popisy. Parametrizovaný filtr se pak aktivuje, jakmile uživatel zadá požadované vstupy a stiskne tlačítko OK.
|
"arguments": [{"name": "Serial Number", "type": "string"}],
|
|
|
|
Každá skupina argumentů se skládá z následujících parametrů:
PARAMETR SKUPINY ARGUMENTŮ
|
POPIS
|
PŘÍKLAD
|
"name"
|
Zobrazované jméno pro uživatele klientské aplikace.
|
"name": "Location ID",
|
"type"
|
Typ argumentu. Může to být "string", "integer", "decimal", "boolean", "datetime" nebo "enum".
|
"type": "integer",
|
"description"
|
Popis pro uživatele klientské aplikace.
|
"description" : "workplace ID number"
|
"allowedValues"
|
Pouze typ Enum. Seznam dostupných hodnot enum.
|
"allowedValues": ["apple", "orange"],
|
"defaultValues"
|
Výchozí hodnota, která se předvyplní ve formuláři žádosti klienta.
|
"defaultValues": "apple",
|
"isArray"
|
Umožňuje vícenásobný výběr a definuje argument jako pole hodnot. Může být "true" nebo "false".
|
"isArray": "true",
|
|
Příklad kódu filtru:
{
"type": "device",
"name": "Customer",
"sql": "fk_workplace = '{{Location ID}}'",
"description": "Displays devices that belong to the customer's selected workplace.",
"arguments": [
{
"name": "Location ID",
"type": "integer",
"description" : "workplace ID number"
}
]
},