Definovatelné položky - záložka Detail

Zobrazí detailné informácie o nadefinovaných položkách k aktuálnemu záznamu triedy BO zo záložky Zoznam. Údaje o definovateľných položkách nadefinovaných k danej triede objektu sú usporiadané do subzáložiek:

Obsiahnuté subzáložky: Položky Definícia položky

V hornej časti záložky Detail môže byť variantne zobrazený niektorý z Panelov definovateľných údajov detailu pre túto agendu. Zobrazenie panela definovateľných údajov detailu závisí od aktuálneho nastavenia v menu Nastavenie pre danú agendu a prihláseného užívateľa.

Ďalej sú v hornej časti záložky Detail k dispozícii nasledujúce položky:

Názov Popis
Trieda

Trieda Business objektu (BO), pre ktorý sú užívateľské položky definované. Pri novej definície položiek triedu vyberiete zo skrytého zoznamu, pri už existujúcej definícii je položka neprístupná, takže ju nie je možné meniť.

Pro každou třídu lze nadefinovat maximálně jednu definici definovatelných položek.

Ponúkajú sa len tie triedy BO, ktoré danú funkcionalitu podporujú (dané výrobcom).

K niektorým triedam BO nie je možné definovať extra položky. Viď ďalej popis začiarkavacieho políčka "Extra".

Řetězec, pod kterým se jednotlivé třídy v seznamu nabízejí, odpovídá položce "Popis" daného Business objektu a můžete podle ní i daný Business objekt dohledat v popisu Struktur a definic GenDoc.chm.

K vybranej triede sa zobrazuje aj CLSID (identifikačný GUID) Business objektu danej triedy.

V dokumentácii GenDoc.chmCLSID Business objektov uvedené ako v nekomprimovanom dlhšom 36-znakovom tvare (32 znakov vr. pomlčiek), resp. v 38-znakovom (vr. pomlčiek, zátvoriek), tak v pakovanom 26-znakovom tvare (viď PackedGUID), v ktorom sa používajú v programe (podľa nich je tiež možné popis v dokumentácii GenDoc.chm rýchlo dohľadať).

Subzáložka Položky

Obsahuje:

Zoznam položiek - zoznam riadkov definícií položiek

Needitovateľný zoznam definovateľných položiek už nadefinovaných k aktuálnej triede BO zo záložky Zoznam. V zozname sú pre každú užívateľskú položku uvedené základné údaje o nej. Význam jednotlivých údajov je zrejmý z názvu alebo popisu v subzáložke Definícia položky, bližšie objasníme len nasledujúce:

Názov Popis
Systémová Položka, ktorá informuje, či ide o systémovú definíciu alebo nie.
Kód Kód definovateľnej položky. Kód je prideľovaný automaticky programom podľa vnútorných pravidiel pri zadaní novej definície definovateľnej položky.

Lišta navigátora

V spodnej časti subzáložky je k dispozícii lišta navigátora:

Príklad lišty navigátora v tejto subzáložke

Navigátor v tejto subzáložke obsahuje tlačidlá:

  • Na pohyb kurzora po riadkoch (na začiatok, predchádzajúci riadok, ďalší riadok, na koniec) zoznamu účtov, zmene ich poradia a hľadanie hodnoty v zozname. Poradie položiek má význam najmä orientačný. Keď ide o položky agend miezd, ktoré vstupujú do výpočtu, tak platí, že poradie položiek nijako neovplyvňuje výpočet miezd.
  • Vložiť - Na vloženie nového riadka pre definíciu ďalšej užívateľskej položky k danej triede objektov pred aktuálny riadok (na ktorom stojí kurzor). Údaje danej položky sa zadávajú v subzáložke Definícia položky a sú dostupné pre editáciu len vtedy, keď je vybraná trieda Business objektu. Pokým nie je trieda zvolená, sú needitovateľné.
  • Pridať - Na pridanie nového riadka pre definíciu ďalšej definovateľnej položky k danej triede objektov na koniec. Údaje pridávanej položky v subzáložke Definícia položky sú dostupné pre editáciu len vtedy, keď je vybraná trieda Business objektu. Pokým nie je trieda zvolená, sú needitovateľné.
  • Vymazať - Na vymazanie aktuálneho riadka, resp. označených, pokiaľ je nejaký označený, s definíciou užívateľskej položky.

    Pro mazání definic definovatelných položek platí stejné upozornění, jako pro mazání celé definice - viz popis u funkce Vymazat v záložce Seznam.

  • Spočítané do ... - Funkcia na vyhľadanie definícií súčtov, do ktorých aktuálna definovateľná položka vstupuje ako sčítanec. Funkce je k dispozici pouze pro třídy Business objektů agend modulu Mzdy a personalistika, pro ostatní nemá význam.
  • Kopírovať - Uskutoční kópiu aktuálnej položky do novo pridaného záznamu. Slúži na urýchlenie editácie, keď definujete viac položiek s podobnými vlastnosťami. Údaje kopírovanej položky sú dostupné pre editáciu len vtedy, keď je vybraná trieda Business objektu. Pokým nie je trieda zvolená, sú needitovateľné.
  • Typ čísla - Slúži na hromadné nastavenie položky Typ čísla pri číselných položkách (tzn. položkách typu Číslo), čo je nutné k Prechodu na novú lokálnu menu EUR. Spracuje označené, ak je nejaká položka označená, v opačnom prípade len aktuálnu položku. Má význam len pre položky typu Číslo.
  • Vyhľadať - Funkcia pre vyhľadanie použitia aktuálnej položky resp. označených, pokiaľ je nejaká označená, v rôznych miestach programu ako napr. v definovateľných stĺpcoch, v definovateľných vstupných formulároch, v definovateľných paneloch detailu alebo zoznamu, v definíciách obmedzení na záložkách Obmedzenie príslušných agend, v tlačových zostavách, exportoch atď. Výsledky zobrazí v agende Editor. Je-li pro hledání označeno více položek najednou, pak si výsledy lze zobrazit v agendě Editor najednou anebo jednotlivě pro každou položku zvlášť.
  • Načítať dáta - funkcia slúži na vygenerovanie skriptu s háčikom a jeho kompilácii v agende Balíčky skriptov, ktorý je potrebný, aby bolo možné používať na položke typu znaky a typu editácie číselník filtrovanie záznamov z číselníka pomocou parametra @@. Po vytvoření skriptu je nutné restartovat systém ABRA Gen. Pokiaľ už pre definovateľnú položku skript existuje, nie je možné ho vygenerovať znova, pretože nemôžu existovať dva skripty rovnakého mena. Pokiaľ by to napriek tomu bolo potrebné, je najprv nutné skript v agende Balíčky skriptov zmazať ručne.

Subzáložka Definícia položky

Subzáložka na zadanie vlastnej definície aktuálnej položky zo subzáložky Prehľad položiek. Obsahuje:

Příznaky uživatelských položek, viz dále, jsou "cachovány" a aby se změny řádně projevily, je nutné vypnutí a znovuspuštění systému ABRA Gen.

Ďalej pozor na prípadné opravy niektorých údajov definovateľných položiek, ktoré ste už použili vo vstupných formulároch. Opravy sa nemusia automaticky vo formulári prejaviť, príp. tiež môžu spôsobiť chybnú funkciu. Viď popis vo funkcii Oprava.

Formulár definície detailu

Názov Popis
Názov a popisy
  Názov položky

Názov položky v databáze.

Obecně může jít o libovolný alfanumerický řetězec 1-28 znaků (resp. 25 znaků pokud je použitý Identifikátor a výběr z číselník + cizí klíč) dlouhý plus prefix. Prefix sa predvypĺňa automaticky programom podľa toho, či ide o systémovú definíciu alebo nie a podľa toho, či ide o extra položku alebo nie. Aké prefixy sa môžu vyskytnúť, viď Pravidlá použitia prefixov a kódov Udf položiek.

Povinná položka. Používa sa v číselníkových položkách na výber položky, napr. do vstupných formulárov, na výber položky vo výpočtových schémach a ďalších definíciách v mzdách a personalistike apod. Názov by mal byť unikátny a čo najvýstižnejší, aby uľahčoval neskoršiu orientáciu v zozname položiek.

V prípade extra položiek už po uložení nie je možné opravovať.

Pokud se v názvu položky použije suffix _ID (tento sufix se automaticky doplňuje u položek, které mají zaškrtnutou volbu Cizí klíč), tak u těchto položek se předpokládá, že se jedná o OID položku (interní jednoznačný identifikátor), která může být odkazem do jiných číselníků. Velikost této položky musí být vždy 10 znaků.

V některých částech ABRA Gen se provádí kontrola této velikosti a pokud velikost vkládané hodnoty je větší, než požadovaných 10 znaků (položka s sufixem _ID má např. velikost 20 znaků), tak systém zobrazí chybové / informační hlášení a nedovolí hodnotu uložit. Z výše uvedeného důvodu doporučujeme suffix _ID používat jen u odkazů na jiné číselníky.

Ak chcete hodnoty položiek prenášať pri vzájomnom importe dokladov, nemôžu byť zodpovedajúce položky rôznych Business objektov nadefinované ľubovoľne. Čo musí položka spĺňať, aby ich bolo možné pri importe prenášať, viď Importy užívateľsky definovateľných položiek.

  Extra

Ak je začiarknuté, položka bude nadefinovaná ako Extra položka. Po uložení nie je možné opravovať. Ak ste definíciu vykonali chybne a nemáte ešte zadané dáta, položku zmažte a nadefinujte znovu. Pokiaľ k nej už dáta existujú, máte možnosť nadefinovať si novú extra položku a dáta si do nej nakopírovať funkciou Kopírovať dáta.

Pozor! K niektorým triedam BO nie je možné definovať extra položky:

  • BO servisnej knižky - ide o technické obmedzenie, ktoré je dané tým, že do servisnej knižky sa zapisuje i automaticky, napr. počas obnovy dát, keď sa objekty ukladajú ešte pred tým, ako je celý systém riadne inicializovaný.
  • Prípady, keď niekoľko BO zdieľa jednu tabuľku - V tomto prípade je väčšinou možné extra položky definovať v rámci inej triedy. Pokiaľ v definícii danej triedy nie je možné definovať extra položky, ale je ich možné definovať inde, zobrazuje sa pod položkou "Trieda" textová informácia, kde je možné definíciu extra položiek pre daný Business objekt zadať. Viď Obmedzenia pre definíciu extra položiek v rámci niektorých Business objektov.
  Systémová

Nastavenie, či ide o definíciu systémovú alebo nie. Bežný užívateľ však nemá možnosť toto nastavenie zadávať, položka mu nie je na editáciu k dispozícii.

Systémové a nesystémové položky sú okrem tejto položky ešte navyše odlíšené prefixom dopĺňaným automaticky v názve položky, viď popis položky Názov.

Ako systémové definície sú typicky dodávané výrobcom definovateľné položky miezd a personalistiky. Pre systémové záznamy platí obmedzenie, čo sa týka užívateľských opráv a sú automaticky aktualizované. Aktualizácia prichádza do úvahy hlavne pre mzdové agendy, ďalej viď Defaultné dáta a update mzdových agend.

  Popis položky Popisný názov. Display Label danej položky, tzn. popis ktorý bude pri danej položke uvedený, pokiaľ bude použitá vo vstupnom formulári.
  Popiska položky Display Hint danej položky, tzn. hint, ktorý sa bude pri danej položke zobrazovať, keď bude použitá vo vstupnom formulári.
Základné vlastnosti
  Len na čítanie

Nastavenie, či má byť daná položka editovacia (je možné jej hodnotu užívateľsky editovať) alebo či je určená len na zobrazovanie hodnoty v nej uloženej. Pokiaľ je položka len na čítanie, tak v nej nie je možné editovať hodnotu, a to ani keby v definícii definovateľného vstupného formulára, kde je daná položka použitá, bolo pre ňu nastavené, že je editovacia.

Pre definovateľné položky miezd a personalistiky, ktoré sú počítané, tzn. pre ktoré je definovaný výpočet vo Výpočtových schémach, by malo byť nastavené, že nie sú k dispozícii pre editáciu (keďže editovaná hodnota by sa po výpočte aj tak prepísala hodnotou vypočítanou.) Objasníme na príklade:

Majme nadefinovanú položku mzdového listu "Nárok na stravenky celkom", pre ktorú je definovaný výpočet ako súčet z iných položiek. Keď by sme v definícii položky "Nárok na stravenky celkom" povolili editáciu a rovnako povolili editáciu vo vstupnom formulári, v ktorom je položka obsiahnutá (tzn. vlastnosť Len na čítanie by bola nezačiarknutá), tak by pri editácii takéhoto formulára bola položka užívateľovi k dispozícii na zadávanie, tzn. mohol by do nej zadať ľubovoľnú hodnotu, napr. omylom. Ale hneď ako by bol spustený výpočet miezd, príslušná položka by sa prepočítala a užívateľsky zadaná hodnota by bola automaticky prepísaná vypočítanou.

  História

Nastavenie, či sa pre danú položku má sledovať história zmien jej hodnôt, pokiaľ áno, pôjde o položku s históriou. Objasníme na príklade:

Majme nadefinovanú položku Priezvisko zamestnanca k triede BO Zamestnanci. Pre danú položku je potrebné sledovať, akým spôsobom sa menila hodnota v čase, preto pre ňu nastavíme sledovanie histórie.

Sledování historie je možné aktivovat na libovolné třídě a datového typu. Výjimku tvoří Uživatelsky definovatelná položka s Datovým typem Poznámka, kde není možné historii zapnout.

  Povinná

Nastavenie, či má ísť o povinnú položku, tzn. program bude vyžadovať jej vyplnenie.

Vyplnění položky hlídá příslušný BO při svém ukládání a pokud položka k němu nadefinovaná je nastavena jako povinná a není vyplněna, pak uložení záznamu striktně nepovolí! A to bez ohľadu na to, či je alebo nie je spomenutá položka použitá na niektorom z definovateľných formulárov definovaných k danému BO!

Vyplnenosť povinných užívateľských položiek sa nekontroluje, pokiaľ si záznam obsahujúci vstupný formulár s takouto položkou len skrývate alebo naopak obnovujete zo skrytých. Čiže pokiaľ ste mali starší skrytý záznam z doby, keď položka ešte nebola povinná, potom ste jej vyplnenie nastavili ako povinné a obnovili ste záznam zo skrytých, tak jeho obnova bude možná, ale povinná položka samozrejme nebude vyplnená a bude ju treba vyplniť ručne opravou daného záznamu.

Takže keď si nadefinujete povinnú položku, určite ju použite aspoň na jednom zo vstupných formulárov k danej triede BO. Keď to neurobíte, nebudete môcť uložiť žiadny nový záznam danej agendy, pretože program bude požadovať jej zadanie, ale nebudete ju mať kade zadať.

  Prenos

Nastavenie, či sa pri kópii daného objektu má hodnota spomenutej položky prenášať do nového objektu. Objasníme na príklade:

Majme nadefinované položky napr. Ďalšie špecifikácie k triede objektov Skladová karta s nastavením Prenosu. Pri skladovej karte K1 vyplníme jej hodnotu. Keď potom budeme skladovú kartu K1 kopírovať , skopíruje sa aj hodnota položky Ďalšie špecifikácie.

Prenos často využívajú definovateľné položky miezd a personalistiky, typicky položky triedy mzdové listy čiastkové a súhrnné pri tvorbe nových mzdových listov. Či sa však prenos hodnôt nastavený v definícii položiek uplatní, závisí ešte od nastavenia pri konkrétnej funkcii, ktorá tvorbu nového objektu danej triedy vykonáva. Viď aj Predvypĺňanie položiek v agendách miezd a personalistiky.

Nemusí ísť priamo o funkciu Kopírovať, ale o ľubovoľnú inú, ktorá tvorí nový objekt (napr. doklad v danej agende) podľa nejakého iného. Objasníme na príklade:

V agende Mzdové uzávierky vykonávame v rámci Inicializácie mzdového obdobia Generovanie mzdových listov so začiarknutím "Prenášať hodnoty z predchádzajúceho ML". Potom sa pre položky, ktoré majú definovaný Prenos, skopírujú hodnoty z mzdového listu predchádzajúceho mzdového obdobia.

Prenesená (kopírovaná) hodnota má prednosť pred Východiskovou hodnotou prípadne zadanou v definícii položky, príp. Východiskovou hodnotou definovanou v agende iným spôsobom (napr. v Druhoch prac. pomerov v mzdách a personalistike). Viď aj Predvypĺňanie položiek v agendách miezd a personalistiky.

  Prenos pri importoch

Nastavenie, či sa má hodnota spomenutej položky prenášať pri vzájomných importoch dokladov do následného dokladu. Napr. pri importoch dodacieho listu do faktúry vydanej a pod. Začiarknutie tohto príznaku na prenos tejto položky do následného dokladu je podmienkou nutnou, nie však postačujúcou.

Ak chcete hodnoty položiek prenášať pri vzájomnom importe dokladov, nemôžu byť zodpovedajúce položky rôznych Business objektov nadefinované ľubovoľne. Čo musí položka spĺňať, aby ich bolo možné pri importe prenášať, viď Importy užívateľsky definovateľných položiek.

  Hromadná zmena

Nastavenie, či meniť hodnoty danej užívateľsky definovateľnej položky prostredníctvom funkcie hromadnej opravy v príslušnej agende. Ak je začiarknuté, bude sa daná položka ponúkať na výber vo formulári pre hromadnú zmenu položiek - viď Okno s definovateľným zoznamom hromadne opraviteľných položiek.

Dátový typ
 

Dátový typ

+ dopĺňajúce údaje

Dátový typ definovateľnej položky. Zvolený datový typ určuje, které z následujících položek se zpřístupní. Pro přehlednost položky, které se zpřístupňují podle zvoleného dat typu, popíšeme jen u toho typu, kterého se týkají.

Ak chcete hodnoty položiek prenášať pri vzájomnom importe dokladov, nemôžu byť zodpovedajúce položky rôznych Business objektov nadefinované ľubovoľne. Čo musí položka spĺňať, aby ich bolo možné pri importe prenášať, viď Importy užívateľsky definovateľných položiek.

Dátový typ a niektoré súvisiace údaje (veľkosť apod.) už nie je možné po uložení opravovať.

Pozor na prípadné opravy niektorých údajov definovateľných položiek, ktoré ste už použili vo vstupných formulároch. Opravy sa nemusia automaticky vo formulári prejaviť, príp. tiež môžu spôsobiť chybnú funkciu. Viď popis vo funkcii Opraviť.

Lze volit z následných datových typů, pro něž se zpřístupní další doplňující položky:

Identifikátor

Datový typ Identifikátor umožňuje volit Způsob editace. K jednotlivým hodnotám spôsobu editácie sa potom definujú nasledujúce dopĺňajúce údaje:

Spôsob editácie:
Východisková Veľkosť

Dĺžka položky definovateľné položky, tzn. koľko znakov bude možné do danej položky zadať. V tomto případě je pevně stanovena na 10 znaků.

Pokud se v názvu položky použije suffix _ID (tento sufix se automaticky doplňuje u položek, které mají zaškrtnutou volbu Cizí klíč), tak u těchto položek se předpokládá, že se jedná o OID položku (interní jednoznačný identifikátor), která může být odkazem do jiných číselníků. Velikost této položky musí být vždy 10 znaků.

V některých částech ABRA Gen se provádí kontrola této velikosti a pokud velikost vkládané hodnoty je větší, než požadovaných 10 znaků (položka s sufixem _ID má např. velikost 20 znaků), tak systém zobrazí chybové / informační hlášení a nedovolí hodnotu uložit. Z výše uvedeného důvodu doporučujeme suffix _ID používat jen u odkazů na jiné číselníky.

Zobrazovacia veľkosť

Zobrazovaná dĺžka užívateľskej položky, tzn. koľko znakov bude v danej položky zobrazených (tzn. keď je dĺžka položky väčšia ako jej zobrazovacia dĺžka, nemusí byť samozrejme vidieť všetky znaky naraz).

Zarovnanie položky

Spôsob zarovnania užívateľskej položky.

Číselník Číselník

Odkaz na tabuľku číselníka, z ktorého sa má do danej položky vyberať. Požadovaný číselník vyberiete zo skrytého zoznamu ponúkaných. Pokud se jedná o číselník chráněných objektů, můžete ještě zadáním parametrů v následující položce nastavit, zda tuto skutečnost respektovat i u této definovatelné položky a jak, tj. s jakou filtrační maskou pro číselník bude v daném místě chráněný číselník použit.

Niektoré z parametrov zadaných priamo v definícii definovateľnej položky slúžia na obmedzovanie podľa záznamov (tzn. uplatnia sa pri zostavovaní podmienky DynSQL), iné na editáciu záznamov (tzn. uplatnia sa v editačnej položke na obmedzenie ponúkaných číselníkových záznamov resp. všeobecne v oprave Business objektu), iné :

  • ObjectSecurityMask alebo SecurityMask - keď je zadaný v definícii položky, použije sa na predvyplnenie parametrov pri použití tejto definovateľnej položky do definovateľného vstupného formulára (a ovplyvňujú potom, ktoré záznamy z číselníka sa ponúkajú pri zadávaní hodnôt do daného formulára s ohľadom na prístupové práva užívateľa k príslušnému číselníku). Potom sa pri vytváraní editačného prvku na editáciu číselníka na definovateľných formulároch automaticky nastavuje vytváranému prvku maska podľa hodnoty parametra. Obdobně se tento parametr využívá přímo v Business objektu, který obsahuje danou definovatelnou položku (aby kontrola omezení dle práv nastavená tímto parametrem fungovala i v rámci úprav BO přes otevřené rozhraní AbraOLE). (Hodnoty: 0 ⇒ žiadna kontrola práv, 1 ⇒ len chránené objekty s právom Zobraziť, 2 ⇒ len chránené objekty s právom Použiť).
  • DynSQLSecurityMask nebo SecurityMask - použije se vytváření podmínky (v DynSQL) podle definovatelné položky (samozřejmě pouze tehdy, je-li v definici def. položky nastaveno, že se má použít pro omezení výběrů dat). Ovplyvňuje, aké hodnoty sa potom v danej definovateľnej položke ponúkajú z číselníka, ak je definovateľná položka použitá na obmedzenie dát a ako sa uplatnia prístup. práva pri výbere záznamov z databázy, pokiaľ sa za danú položku aktuálne neobmedzuje. Ak sa parameter DynSQLSecurityMask nenájde, použije sa parameter SecurityMask.
  • SecurityMask - parameter tu používaný v predchádzajúcich verziách. Zachovaný z dôvodu spätnej kompatibility.
  • SecurityWithNull=True - spôsobí, že sa k obmedzeniu podľa chráneného objektu pridáva aj fragment SQL pre nevyplnené hodnoty (tzn. keď nie je príslušný obmedzovací prvok začiarknutý, zobrazia sa automaticky všetky záznamy s danou položkou nevyplnenou). Ďalej viď popis obmedzenia Rozšíriť o nevyplnené, predovšetkým Správanie pri rôznych kombináciách obmedzovania podľa číselníkových údajov, ktoré môžu byť nevyplnené.

Ak nie sú žiadne parametre uvedené, pri vytváraní podmienky DynSQL sa práva uplatnia, tzn. ako keby DynSQLSecurityMask=1 (a záznamy s nevyplnenou položkou nebudú zobrazené) a pri editácii sa neuplatnia, tzn. ako keby ObjectSecurityMask=0.

Objasníme na príkladoch:

Užívateľ Novák má prístupové práva na zobrazenie i použitie k stredisku 100. K stredisku 200 má právo len na zobrazenie a stredisko 300 nemá právo ani zobrazovať ani použiť. Majme tiež užívateľskú položku "Stredisko opravy", nepovinnú, nadefinovanú ako číselníkovú s odkazom do číselníka stredísk a použitú na obmedzovanie výberov dát, nadefinovanú pre nejakú dokladovú agendu, napr. Dlhodobý majetok. Dále si obdobnou položku nadefinujeme pro číselník (např. Umístění majetku).

V definícii položiek "Stredisko opravy" nech je parameter DynSQLSecurityMask=1.

  • Dlouhodobý majetek: Ak užívateľ bude chcieť v záložke Obmedzenie obmedzovať za prvok "Stredisko opravy", budú sa mu v záložke Obmedzenie v prvku "Stredisko opravy" ponúkať len strediska 100 a 200. Pokiaľ podľa danej položky neobmedzuje, vyberú sa LEN záznamy, ktoré majú v položke "Stredisko opravy" stredisko, ku ktorému má právo zobrazovať, tzn. strediská 100 a 200. Ak bude editovať kartu majetku, budú sa mu ponúkať v položke "Stredisko opravy" všetky strediská.
  • Číselník umístění majetku: Po otvorení číselníka bude mať daný užívateľ v záložke Zoznam načítané všetky záznamy bez ohľadu na práva k strediskám. Ak užívateľ bude chcieť obmedzovať/filtrovať za prvok "Stredisko opravy", budú sa mu vo funkcii Filtrovať rozšírene v prvku "Stredisko opravy" ponúkať len strediská 100 a 200. Pokiaľ podľa danej položky nefiltruje, vyberú sa po aplikácii filtra LEN záznamy vyhovujúce filtru, ktoré súčasne majú v položke "Stredisko opravy" stredisko, ku ktorému má právo zobrazovať, tzn. strediská 100 a 200. Ak bude editovať záznam umiestnenia majetku, budú sa mu ponúkať v položke "Stredisko opravy" všetky strediská.

Zadanie ako v Príklade 1. Ale v definícii položky "Stredisko opravy" je parameter DynSQLSecurityMask=1 a súčasne SecurityWithNull=True. Pri obmedzování podľa tejto položky sa budú štandardným spôsobom zohľadňovať prístupové práva k danému chránenému objektu a spolu s nimi sa automaticky zobrazujú všetky záznamy s danou položkou nevyplnenou, pokiaľ nie je príslušný obmedzovací prvok začiarknutý. Tzn. pokiaľ užívateľ podľa danej položky neobmedzuje, vyberú sa všetky záznamy, ktoré majú v položke "Stredisko opravy" stredisko, ku ktorému má právo zobrazovať, tzn. strediská 100 a 200 a navyše sa zobrazia všetky záznamy, ktoré majú danú položku nezadanú.

Zadanie ako v Príklade 1. Ale v definícii položky pre zadanie "Strediska opravy" je parameter ObjectSecurityMask=2. Ak užívateľ bude zadávať nový záznam, bude môcť do položky "Stredisko opravy" zadať len stredisko 100. Pokiaľ by v definícii vstupného formulára bol parameter ObjectSecurityMask=1, potom by užívateľ mohol v editácii zadať stredisko 100 alebo 200. Ak by v definícii vstupného formulára nebol ani parameter ObjectSecurityMask ani SecurityMask, tak by užívateľ mohol v editácii zadať stredisko ľubovoľne bez ohľadu na svoje práva, tzn. ako stredisko 100 tak 200 alebo 300.

Zadanie ako v Príklade 1. Ale v definícii položky pre zadanie "Strediska opravy" nie je žiaden parameter. Pak se při výběru záznamů (omezování v dokladové agendě, filtrování v číselnících) systém zachová stejně jako v příkladu 1. Ako sa zachová pri editácii UDF položky, viď príklad 3.

Číselníkovú položku je možné vložiť do vstupných formulárov jednak ako Číselník a jednak ako Číselník (objektový), čo môže byť v mnohých prípadoch výhodnejšie alebo dokonca i nevyhnutné. Ďalej pozri popis oboch prvkov vo vstupnom formulári.

Textová položka

Položka zobrazovaná resp. zadávaná z daného číselníka vo formulári. Vyberať môžete z textových položiek, ktoré daný číselník ponúka.

Parametre

Možnosť zadať, s akými parametrami sa má daný číselník vyvolať.

Môžu tu byť dva druhy parametrov:

  • Parametre, ktoré sa využijú na obmedzovanie podľa záznamov (pri zostavovaní podmienky DynSQL). Tie sa potom prejavia pri vyvolaní číselníka z položky, podľa ktorej sa v danej agende obmedzuje (viď napr. záložka Obmedzenie), resp. rozšírene filtruje (viď napr. funkcia Nastaviť filter). Príkladom sú parametre typu SecurityMask, RollFilter a pod.
  • Parametre pre editáciu záznamov (Business objektu). Tie sa využijú na filtráciu číselníka pri jeho vyvolaní z číselníkovej položky napr. zo vstupného formulára. Príkladom sú parametre @@ a pod.

    V tomto druhém případě se zde zadaný parametr použije pouze pro předvyplnění stejnojmenné položky v návrhu Definovatelného formuláře. Či sa nakoniec uplatní, závisí od toho, ako zadáte parametre na výslednom formulári.

Od v. 14.53.10 je nutné pri filtrácii číselníkov za definovateľnú položku vytvoriť kľúč pre filtrovanie ručne pomocou háčika v skriptingu AddCustomKey. Viac viď Príklad 5 nižšie.

Niektoré je možné použiť pre oba prípady. Parametre je možné kombinovať. V prípade parametrov rovnakého typu sa potom výsledok vyhodnotí ako ich logický súčin (prienik), pozri príklady ďalej.

Príklady parametrov:

FilterDocumentType

[kód typu dokladů 1; kód typu dokladů 2; ...]

Používa sa pre podmienku DynSQL s číselníkom Rady dokladov. V číselníku sa ponúknu rady dokladov len tých typov dokladov, ktoré sú špecifikované v tomto parametri. Jednotlivé typy dokladov sa oddeľujú znakom, ktorý sa nevyskytuje v názve typu, je teda možné použiť ';'.

Omezení číselníku jen za vybraný typ dokladů

Nadefinujeme si položku typu znaky s editáciou pomocou číselníka a vyberieme napr. číselník radov dokladov. Pri použití položky vo vstupnom formulári ale chceme, aby sa číselník z položky vyvolaný otvoril len s radmi určitého typu dokladov, napr. len typu faktúry vydané. Potom v definícii v časti Parametre zadáme:

Príklad vyvolania číselníka s parametrami

@ToAccount

[TRUE|FALSE|1|0]

Používá se pro podmínku DynSQL s číselníkem Typy dokladů. V číselníku sa ponúknu len tie typy dokladov, ktoré majú v kľúči ToAccount, teda Účtovať nastavenú hodnotu podľa tohto parametra.

SecurityMask, SecurityWithNull, DynSQLSecurityMask, ObjectSecurityMask

Používá se pro podmínku DynSQL s číselníky chráněných objektů. Viď príklady vyššie pri položke Číselník.

RollFilter:Parametre pre číselník

Parametr pro podmínku DynSQL. Tento špeciálny parameter špecifikuje číselníkový parameter, ktorý sa odovzdá do číselníka vyvolaného zo zoznamu podmienok. Pomocou parametra je možné zabezpečiť, aby sa pri otvorení číselníka ako výberového zobrazili len určité záznamy, napr. len určité hodnoty obsiahnuté v kľúči. (Parameter RollFilter môže nahradiť i špeciálne parametre FilterDocumentType a @ToAccount).

Majme číselníkovú užívateľskú položku s názvom SkladX, ktorá sa odkazuje na číselník skladov s tým, že sa má využívať i na obmedzovanie. Pokiaľ chceme, aby sa po otvorení číselníka skladov vyvolaného ako výberového z tejto obmedzujúcej položky ponúkli len sklady zadané ako polohované, zadáme v definícii položky SkladX parameter takto:

RollFilter:@@IsLogistic=A

Pak číselník skladů vyvolaný z této omezující položky zobrazí jen záznamy s hodnotou klíče IsLogistic rovné A, tj. jen polohované sklady.

RollFilter:@@DocumentType=31
Ekvivalentní forma výrazu: FilterDocumentType='31'

Allowed

[OID1; OID2; ...]

Používa sa na filtrovanie záznamov z číselníka vyvolaného inak ako z obmedzujúcej podmienky, tzn. na editáciu záznamu (Business objektu). Ide o možnosť filtrovať podľa reťazcov OID, ktoré je možné vybrať.

_Excluded

[OID1; OID2; ...]

Používa sa na filtrovanie záznamov z číselníka vyvolaného inak ako z obmedzujúcej podmienky, tzn. na editáciu záznamu (Business objektu). Ide o možnosť filtrovať podľa reťazcov OID, ktoré nie je možné vybrať.

@ resp. @@

(tj. @Výraz_klíče [Hodnota1], @#Výraz_klíče [Hodnota1;Hodnota2;...] @@Názov_kľúča [Hodnota1], @@#Názov_kľúča [Hodnota1;Hodnota2;...])

Používa sa na filtrovanie záznamov z číselníka vyvolaného inak ako z obmedzujúcej podmienky, tzn. na editáciu záznamu (Business objektu). Týmito parametrami je možné číselník filtrovať podľa určitého zoznamu kľúčových hodnôt, ktorým sa rovná kľúč nadefinovaný v DynSQL alebo výraz daného kľúča.

Tieto parametre sú využiteľné i z otvoreného rozhrania a tu boli tiež podrobne popísané vrátane ďalších príkladov. Viď Parametre pre číselníky vyvolané z číselníkových položiek.

Majme číselníkovú užívateľskú položku SkladX, ktorá sa odkazuje na číselník skladov. Položku vložíme do vstupného formulára. Ďalej majme sklady s kódmi 01,02,03,04 s tým, že polohované sú 01,02 a 03. Správanie po otvorení číselníka skladov vyvolaného ako výberového z danej položky vo formulári, pokiaľ sú k danej číselníkovej položke zadané nasledujúce parametre a tieto sú prevzaté do formulára:

@@Name=Hlavní
Číselník skladů zobrazí jen sklad s názvem Hlavní.

@@#Code=01;02;
Číselník skladů zobrazí jen sklady s kódem 01 a 02.

@@#Code=01;03
@@IsLogistic=A

Číselník skladů zobrazí jen sklady splňující obě podmínky (logický součin), tj. sklady s kódem 01 a 03.

V tomto prípade vychádzame z toho, že v dodávanom DynSQL skladov sú kľúče s názvami Name, Code a IsLogistic. Bolo by možné použiť tiež len jeden @ (za výraz kľúča), keďže všetky tri kľúče obsahujú jednoduchý výraz rovnajúci sa názvu rovnomennej položky (fieldu), tzn. napr. kľúč s názvom Code obsahuje výraz rovnajúci sa fieldu Code z tabuľky skladov atď.

Rozdiel medzi použitím parametra RollFilter a @@ objasníme na príklade:

Rozdíl mezi uplatněním parametru RollFilter a @@:

Majme číselníkovú užívateľskú položku SkladX, pri ktorej sú zadané nasledujúce parametre podobne ako v predchádzajúcich príkladoch:

RollFilter:@@#Code=01;02
@@#Code=03;04 (tento parametr je převzat do vstupního formuláře).

Pri otvorení číselníka skladov z položky SkladX ako obmedzujúcej položky (napr. zo záložky Obmedzenie) sa uplatní prvý parameter, tzn. zobrazia sa len záznamy s hodnotou kľúča Code rovnajúce sa 01 a 02, tzn. len sklady s kódom 01,02. Pri otvorení číselníka zo vstupného formulára sa uplatní druhý parameter, tzn. zobrazia sa len sklady s kódom 03,04.

Pre filtrovanie za definovateľnú položku je nutné od v. 14.53.10 jej kľúč vytvoriť začiarknutím parametra Umožniť podľa tejto položky radiť zoznam a pomocou háčika v skriptingu AddCustomKey (predtým sa kľúč vytváral automaticky). Skript s háčikom je tiež možné vytvoriť pomocou funkcie Načítať dáta.

Vytvoření klíče pro filtrování u uživatelské položky:

Mějme vytvořenou definovatelnou extra položku pro třídu Osoba s názvem X_DEALER, popisem Prodejce, datového typu Ano/Ne a mějme u ní zatržen parametr Umožnit podle této položky řadit seznam. Dále mějme vytvořenou definovatelnou extra položku pro třídu Skladová karta s názvem X_DEALERS, popisem Prodejce, datového typu Znaky, způsobem editace Číselník a odkazující do číselníku Číselník osob. I u této položky zatrhneme parametr Umožnit podle této položky řadit seznam, jako položku odkazovaného číselníku zvolíme Příjmení.

Ďalej vytvorme dva definovateľné formuláre. První pro třídu Osoba, na který přidáme extra položku X_DEALER, a druhý pro třídu Skladová karta, na který přidáme extra položku X_DEALERS a do pole Parametry vložíme:

@@X_DEALER=A

Nyní restartujeme aplikaci a otevřeme Adresár osôb. Na definovatelném formuláři zatrhneme u některých osob zatržítko Prodejce. Pokud nyní otevřeme agendu Skladové karty a na námi vytvořeném definovatelném formuláři otevřeme adresář osob, bude seznam osob omezen za ty, kteří mají zatržen parametr Prodejce.

Jiné případy

U některých číselníků je uvedení vhodného parametru povinné. Takovým číselníkem je např. číselník Tiskových sestav, který nemá smysl vyvolávat bez specifikace programového bodu, k němuž jsou tisk. sestavy nadefinovány. Pokud tedy máte položku typu Znaky → Číselník → Číselník Tiskových sestav, pak je třeba v parametru uvést parametr _PROGPOINT. Programové body pro jednotlivá místa ABRA Gen můžete dohledat v popisu Struktur a definic GenDoc.chm.

_PROGPOINT=X4SX2B3BBPNOF2MDBX3EXJTJN0. (Jedná se o dohledání programového bodu pro danou agendu v GENDoc.)

Znaky

Datový typ Znaky umožňuje volit Způsob editace. K jednotlivým hodnotám spôsobu editácie sa potom definujú nasledujúce dopĺňajúce údaje:

Spôsob editácie:
Východisková Veľkosť

Dĺžka položky definovateľné položky, tzn. koľko znakov bude možné do danej položky zadať.

Zobrazovacia veľkosť

Zobrazovaná dĺžka užívateľskej položky, tzn. koľko znakov bude v danej položky zobrazených (tzn. keď je dĺžka položky väčšia ako jej zobrazovacia dĺžka, nemusí byť samozrejme vidieť všetky znaky naraz).

Zarovnanie položky

Spôsob zarovnania užívateľskej položky.

Voľby Názov voľby Položka umožňuje editáciu názvov jednotlivých možností z nasledujúcej položky.
Voľby

Při zadávání položky Volby stanoví uživatel délku řetězce v údaji Velikost, tím zároveň určí maximální počet možností v položce Volby, které je možné zadat.

Názvy jednotlivých volieb sa menia v predchádzajúcej položke Názov voľby.

Všetky voľby, začiarknuté aj nezačiarknuté pri definícii položky, sa ponúkajú v návrhu Definovateľného formulára. Na výslednom formulári sa potom zobrazujú len voľby začiarknuté pri definícii formulára.

Do položky Východisková hodnota sa zapíšu len voľby začiarknuté pri definícii položky Voľby. Len tieto voľby sa potom ponúkajú pri obmedzovaní záznamov v záložke Obmedzenie resp. na iných miestach systému, ktoré pracujú na rovnakom princípe. Avšak defaultne sa v nových záznamoch danej agendy predvypĺňajú len tie hodnoty, ktoré sú začiarknuté ako tu v definícii položky Voľby, tak aj v položke Východisková hodnota.

Veľkosť Počet volieb, ktoré bude možné zadať. Túto položku už nie je možné po uložení opravovať.
Zobrazovacia veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Adresárová cesta Veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Zobrazovacia veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.

Celé číslo

Dátový typ Celé číslo umožňuje zvoliť z viacerých spôsobov editácie, ku ktorým sa potom definujú nasledujúce doplňujúce údaje:

Spôsob editácie
Východisková Veľkosť

Veľkosť definovateľnej položky, tzn. koľko znakov bude možné do danej položky zadať.

Do definovateľnej položky typu celé číslo definovanej s týmto spôsobom editácie bude možné v definovateľných formulároch zadávať nielen kladné, ale aj záporné hodnoty, tzn. vr. znamienka (takže dĺžka by potom mala byť zadaná zodpovedajúcim spôsobom). Zadanie vr. záporných hodnôt využijete napr. pre položky, ktoré majú mať charakter nejakých korekčných opravných hodnôt k iným položkách (typicky v mzdách) apod.

Zobrazovacia veľkosť Zobrazovaná veľkosť užívateľskej položky, tzn. koľko znakov bude v danej položky zobrazených (tzn. keď je dĺžka položky väčšia ako jej zobrazovacia dĺžka, nemusí byť samozrejme vidieť všetky znaky naraz).
Skrytý zoznam Veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Zobrazovacia veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Možnosti

Tu nadefinujete hodnoty skrytého zoznamu, tzn. možnosti, ktoré následne budú užívateľovi ponúkané ako hodnoty skrytého zoznamu. Jeden riadok oddelený Enterom potom znamená jednu hodnotu skrytého zoznamu.

Či sa vo výslednom nadefinovanom formulári použijú hodnoty skrytého zoznamu zadané tu alebo v položke Možnosti v definícii definovateľného formulára, závisí od začiarknutia políčka Možnosti prevziať z definície.

Vnútorne sú v programe jednotlivé nadefinované možnosti interpretované celým číslom podľa svojho poradia, pričom počiatočné číslo, ktorému zodpovedá prvá možnosť je nastaviteľné v položke "Počítať od" priamo v definícii vstupného formulára, do ktorého je nadefinovaná položka typu Skrytý zoznam použitá. Objasníme na príklade:

Nadefinujeme si užívateľskú položku typu celé číslo s editáciou formou skrytého zoznamu nasledovne:

Príklad zadania definícií možností

Keď danú položku vložíme do vstupného formulára, nadefinované hodnoty sa budú ponúkať ako možné hodnoty skrytého zoznamu pri editácii danej položky vo vstupnom formulári:

Ak nastavíme položku Počítať od rovnú nule, vnútorná interpretácia jednotlivých hodnôt našej užívateľskej položky v programe je poradie celých čísel, počínajúc nulou. Tzn. prvá hodnota je vnútorne interpretovaná ako 0, druhá hodnota ako 1 atď.

Zvislý prepínač Veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Zobrazovacia veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Možnosti

Tu nadefinujete hodnoty pre prepínač, tzn. možnosti, z ktorých užívateľ bude môcť následne jednu zvoliť. Jeden riadok oddelený Enterom potom znamená jednu hodnotu prepínača. Vnútorne sú v programe jednotlivé nadefinované možnosti interpretované celým číslom podľa svojho poradia, pričom počiatočné číslo, ktorému zodpovedá prvá možnosť je nastaviteľné v položke "Počítať od" priamo v definícii vstupného formulára, do ktorého je nadefinovaná položka typu Prepínač použitá. Objasníme na príklade:

Nadefinujeme si užívateľskú položku typu celé číslo s editáciou formou skrytého zoznamu nasledovne:

Príklad zadania definícií možností

Keď danú položku potom vložíme do vstupného formulára, nadefinované hodnoty sa budú ponúkať ako možné hodnoty prepínača pri editácii danej položky vo vstupnom formulári:

Ak nastavíme položku Počítať od rovnú jednej, vnútorná interpretácia jednotlivých hodnôt našej užívateľskej položky v programe je poradie celých čísel, počínajúc jednotkou. Tzn. prvá hodnota je vnútorne interpretovaná ako 1, druhá hodnota ako 2 atď.

Vodorovný prepínač Veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Zobrazovacia veľkosť To isté ako rovnomenná položka pri Východiskovom spôsobe editácie, viď vyššie.
Možnosti Podobne ako rovnomenná položka pri Zvislom prepínači, viď vyššie, len pôjde o prepínač vodorovný.

Pri použití položky tohto typu do vstupného formulára je ďalej možné nastaviť aj iné vlastnosti, napr. oddeľovanie tisícov.

Číslo

K dátovému typu Číslo sa definujú nasledujúce dopĺňajúce údaje:

Typ čísla

Údaj potrebný na posúdenie toho, či užívateľsky definovateľnú položku treba prepočítavať z pôvodnej lokálnej meny na novú lokálnu menu, napr. pri Prechode na novú lokálnu menu EUR. Defaultne nadobúda hodnotu Nedefinované.

Pri prechode na euro musí užívateľ prideliť jednu z nasledujúcich hodnôt:

  • Len hodnota - Pri konverzii dát sa nijako neprepočítava hodnota užívateľsky definovateľnej položky.
  • Suma v mene - Suma v mene sa prepočíta tak, aby zodpovedala novej lokálnej mene.
  • Suma v lokálnej mene - Pri konverzii dát sa prepočítava hodnota užívateľsky definovateľnej položky konverzným kurzom na novú lokálnu menu.

    Údaj môžete nastaviť i hromadne pomocou funkcie Typ čísla dostupnej v lište navigátora v subzáložke Položky.

Veľkosť

Veľkosť definovateľnej položky, tzn. koľko znakov bude možné do danej položky zadať. Tu pre veľkosť s ohľadom na prípadné desatinné miesta platí, že veľkosť je počítaná vrát. desatinných miest. Tzn.:

Ak je veľkosť=3, desatiny=2, tak povolené hodnoty sú v rozsahu -9.99 až +9.99.

Zobrazovacia veľkosť Zobrazovaná veľkosť užívateľskej položky, tzn. koľko znakov bude v danej položky zobrazených (tzn. keď je dĺžka položky väčšia ako jej zobrazovacia dĺžka, nemusí byť samozrejme vidieť všetky znaky naraz).
Desatiny Desatinná časť definovateľnej položky.

Pri použití položky tohto typu do vstupného formulára je ďalej možné nastaviť aj iné vlastnosti, napr. oddeľovanie tisícov.

Dátum

K dátovému typu Dátum sa definujú nasledujúce dopĺňajúce údaje:

Zobrazovať čas

Ak je začiarknuté, bude možné v danej dátumovej položke zadávať i údaj o čase, ako je tomu v niektorých prípadoch pri pevných položkách typu Dátum - viď Editačné položky dátumové.

Ak je súčasne začiarknuté Používať pre obmedzenie výberov dát, bude potom automaticky možné danú definovateľnú položku obmedzovať i podľa času.

Áno/Nie

Dátový typ Áno/Nie nevyžaduje ďalší dopĺňajúce údaje.

Poznámka

Dátový typ Poznámka je takmer zhodný s typom Znaky, akurát má "maximálny" možný počet znakov. Tento maximálny počet znakov platí:

K dátovému typu Poznámka sa definujú nasledujúce dopĺňajúce údaje:

Zobrazovacia veľkosť

Zobrazovaná veľkosť užívateľskej položky, tzn. koľko znakov bude v danej položky zobrazených (tzn. keď je dĺžka položky väčšia ako jej zobrazovacia dĺžka, nemusí byť samozrejme vidieť všetky znaky naraz).

Výber dát a radenia
  Používať na obmedzenie výberov dát

Príznak, či sa má daná položka používať v obmedzovacích podmienkach na výbery dát z databázy. Keď je začiarknuté, bude možné podľa hodnoty danej položky záznamy z databázy obmedzovať resp. filtrovať alebo hromadne označovať. Tzn. daná položka pribudne v zozname položiek, podľa ktorých je možné obmedzovať, filtrovať, označovať atď.:

Všeobecne platí nasledujúce: Ako bolo spomenuté v kap. Záložka Obmedzenie - všeobecne, obmedzovacie (filtrovacie) podmienky dostupné v danom mieste programu pre výbery dát z databázy, sú dané definíciou dynamického zdroja dát (DynSQLs), tzn. DynSQL príkazu, ktorý sa vzťahuje k danému miestu programu (viď podmienky DynSQL v nástroji DynSQLEditor) a ďalej užívateľsky definovateľnými položkami, ktoré majú v definícii nastavené "Používať pre obmedzenie výberov dát" a sú nadefinované pre Triedu Business objektu s CLSID, ako je CLSID uvedený pri aliase A v datasete daného DynSQL príkazu. Tzn. platí, že daná užívateľská položka pribudne v zozname podmienok vo všetkých miestach programu, ku ktorým sa vzťahujú tie DynSQL príkazy, ktorých niektorý dataset obsahuje alias A s CLSID rovným triede Business objektu, pre ktorého je položka nadefinovaná. Objasníme na príklade:

Majme DynSQL "Objednávky vydané" s datasetmi MAIN (pre získavanie dát z hlavičiek dokladov OV) a ROW (pre získavanie dát z riadkov dokladov OV). Dataset ROW nech má definovaný alias A s CLSID=CHMK5QAWZZDL342X01C0CX3FCC. Používa sa v agende Objednávok vydaných, viď napr. záložka Obmedzenie agendy OV.

Ďalej majme DynSQL "Hodnotiace kritérium - Riadky objednávok vydaných". Toto DynSQL nie je zviazané priamo s nejakou agendou, ale je určené pre využitie z definícií počítaných hodnotiacich kritérií (pre hodnocenie dodávateľov). Jeho dataset MAIN nech má definovaný alias A s CLSID=CHMK5QAWZZDL342X01C0CX3FCC.

Pokiaľ potom nadefinujeme položku k triede Business objektov "Objednávky vydané - riadky" (tzn. s CLSID=CHMK5QAWZZDL342X01C0CX3FCC) a nastavíme pri nej, že sa má používať pre obmedzenie výberov dát, potom pribudne medzi obmedzovacími prvkami ako v záložke Obmedzenie agendy OV, tak v definícii kritéria, ktoré sa odkazuje na DynSQL "Hodnotiace kritérium - Riadky objednávok vydaných".

Keď ide o číselníkovú položku s odkazom do číselníkov chránených objektov, tak sa ešte vhodným nastavením parametrov nastaví, ako zohľadňovať prístupové práva k nim. Viď popis položiek ČíselníkParametre pri položke Znaky so spôsobom editácie Číselník a ďalej popis obmedzenia Rozšíriť o nevyplnené.

Ďalej viď:
- Omezování u položek s historií
- Omezování na položky, kterou jsou současně kategorizačním údajem, viz popis funkce Filtrovat v Adresáři firem

  Umožniť podľa tejto položky radiť zoznam

Príznak, či sa má dať podľa danej položky radiť v zoznamoch. Keď je začiarknuté a keď sa táto položka má zobrazovať ako užívateľsky definovateľný stĺpec zoznamu, bude možné podľa tohto stĺpca zoznam triediť.

Táto možnosť radenia v zozname nie je k dispozícii pre dátový typ Poznámka.

Automaticky sa potom za behu vykonajú príslušné úpravy v DynSQL pre dokladové agendy (pridanie príslušného "fieldu", kľúča zodpovedajúceho názvu atď.), resp. sa vykoná registrácia nového kľúča pre číselníky (s rovnakým menom ako definovateľná položka), teda tak, že triedenie podľa danej položky bude k dispozícii vrátane možnosti meniť radenie kliknutím na stĺpec.

Vedľajším efektom tohto začiarknutia je tiež to, že tieto položky sú potom dostupné aj priamo cez hlavný dataset MAIN. (Napr. v definícii tlačových zostáv). Viď dátový model - čo je v dátovom modeli zobrazované.

Datový typ Celé číslo se způsobem editace Skrytý seznam, Svislý přepínač a Vodorovný přepínač se třídí podle vnitřní interpretace hodnot nikoli podle hodnot v seznamu. Objasníme na príklade:

Nadefinujeme si užívateľskú položku typu celé číslo s editáciou formou skrytého zoznamu rovnako ako v príklade vyššie. Potom pomocou vstupného formulára priradíme jednotlivým skladovým kartám konkrétnu farbu obalu a vytvoríme si definíciu Def.1 obsahujúcu definovateľný stĺpec Farba obalu a napr. Kód a Názov skladovej karty. Pokiaľ potom v zozname skladových kariet podľa Def.1 radíme zoznam podľa Farby obalu, skladové karty sa zoradia podľa vnútornej interpretácie hodnôt, tzn. podľa čísel 0 až 3, ktoré zodpovedajú jednotlivým farbám obalu, a nie podľa abecedne zoradených názvov farieb.

Radenie v prípade položiek s históriou prebieha podľa aktuálnej hodnoty položky, tzn. nie je podporované radenie so zohľadnením historických hodnôt položiek.

K datovému typu Znaky - číselník se definují ještě následující doplňující údaje:

Zvolte položky odkazovaného číselníku k řazení

Po stisku tlačítka / tlačítka (môže sa líšiť podľa verzie a nastaveného vzhľadu) se nabídne modální okno se seznamem všech persistentních položek daného číselníkového objektu. Tu je možné začiarknuť, podľa ktorých z nich má byť možné zoznam radiť, keď bude táto zobrazovaná v zozname. Tzn. v zozname bude definovaný stĺpec odkazujúci sa na užívateľskú položku typu číselník a z daného číselníka bude zvolená na zobrazenie jedna z položiek, ktorá je zadaná ako položka, podľa ktorej sa má dať triediť.

Pokiaľ užívateľ začiarkne viac položiek súčasne, vytvorí sa zodpovedajúci počet fieldov a kľúčov v DynSQL pre dokladové agendy resp. sa vykoná registrácia zodpovedajúceho počtu nových kľúčov pre číselníky.

Objasníme na príklade:

Nech chceme na doklady zadávať spôsoby dopravy, ktoré chceme rozlišovať menou, v ktorej sa bude za dopravu nakoniec odberateľovi fakturovať. K jednotlivým spôsobom dopravy si teda chceme priradiť menu. Kód a názov meny chceme vidieť v zozname spôsobov dopravy.

Potom si nadefinujeme užívateľskú číselníkovú položku napr. "Mena dopravy" s odkazom do číselníka mien, začiarkneme, že sa podľa nej má triediť a to napr. podľa týchto položiek číselníka mien:

Potom si v agende Spôsoby dopravy vyvoláme editor stĺpcov. V ňom si funkciou Nový stĺpec postupne vytvoríme definíciu dvoch nových stĺpcov typu Objekt. Medzi ponúkanými dátovými položkami objektu bude aj naša užívateľská číselníková položka "Mena dopravy":

Prvý stĺpec nadefinujeme odkazom na kód meny (tzn. vo výraze bude U_MENADOP.Code), druhý na Názov (tzn. vo výraze bude U_MENADOP.Name):

Definíciu zobrazenia stĺpcov uložíme pod nejakým názvom. Keď ju použijeme, môže zoznam vyzerať nasledovne:

Podľa stĺpca s názvom meny triediť je možné, pretože sme ho začiarkli na triedenie v definícii položky. Podľa kódu triediť nie je možné - ten sme nezačiarkli.

Triediť nie je možné podľa číselníkových položiek, pokiaľ sa odkazujú do číselníkov, ktoré nemajú žiadne kľúče alebo majú len kľúče na polia, ktoré sú odkazmi do iného číselníka. Ide napr. o číselníky Zodpovedné osoby, Pracovníci, Užívatelia pošty, Vodiči. (Keďže hodnoty v kľúčoch sa načítavajú z iných tabuliek (napr. Meno pracovníka v číselníku pracovníkov vo výrobe sa načítava z napojeného číselníka Osoby)). Pri takýchto položkách je síce možné možnosť triedenia začiarknuť, no na výber sa neponúka žiadna položka, ktorú by bolo možné na radenie vybrať.

  Príznaky

Možnosť v rámci definície položky nastaviť rôzne ďalšie vlastnosti. Pre triedy objektov, ktoré nepodporujú nastavovanie ďalších vlastností, sa možnosť nastavenia tejto vlastnosti neponúka, tzn. položka Príznaky nie je k dispozícii. Príznaky často využívajú definovateľné položky miezd a personalistiky.

Príklady príznakov:

  • Položka má vplyv na vypočítaný mzdový list - pre položky triedy zamestnanec a pracovný pomer, kde je možné začiarknutím nastaviť, či zmena v položke má mať vplyv na vypočítaný mzdový list. Potom zmena uskutočnená v takýchto položkách spôsobí zhodenie príznaku správnosti výpočtu miezd. Objasníme na príklade:

Majme nadefinovanú položku napr. Suma poistného na životné poistenie k triede objektov Zamestnanec a majme ju umiestnenú v niektorom zo vstupných definovateľných formulárov. Zamestnancovi vykonáme úspešný výpočet miezd. Keď potom dodatočne pre daného zamestnanca uskutočníme v danom mzdovom období opravu hodnoty tejto položky, danému zamestnancovi sa tým automaticky nastaví, že výpočet miezd neprebehol úspešne a je ho potrebné zopakovať.

Pri položkách samotnej triedy Mzdových listov sa tento typ príznaku neponúka, pretože všetky položky mzdových listov čiastkových aj súhrnných majú automaticky vplyv na vypočítanie miezd, tzn. oprava ľubovoľnej z nich spôsobí zhodenie príznaku správnosti výpočtu miezd.

  • Položku je možné editovať v uzavretých mzdových obdobiach - pre položky triedy mesačné údaje firmy, kde je možné začiarknutím nastaviť, či danú položku bude možné v agende Mesačné údaje firmy opravovať aj v prípade, že je dané mzdové obdobie už uzavreté.
Možnosti k dátovému typu
  Vytvoriť index

K dispozícii iba pre Extra položky. Ak je políčko začiarknuté, tak sa súčasne s danou položkou vytvorí tiež index (v databáze) na zrýchlenie načítania dát.

Pri kopírovaní extra položiek s nastaveným príznakom "Vytvoriť index" (funkcia Kopírovať v lište navigátora), sa index nekopíruje (generuje sa nový názov indexu).

  Cudzí kľúč

K dispozícii len pre Extra položky, pre dátový typ Znaky a spôsob editácie Číselník. Ak je začiarknuté, v databáze pri vytvorení príslušnej položky v príslušnej tabuľke vznikne i cudzí kľúč (ForeignKey), tzn. záznam o väzbe medzi danou Extra položkou a cudzím kľúčom z inej tabuľky (cudzím kľúčom v systéme ABRA je typicky ID daného číselníkového záznamu)). Existence cizího klíče mj. zajistí kontrolu referenční integrity na úrovni databáze. Tzn. do danej číselníkovej extra položky nebude možné zapísať inú hodnotu ako hodnotu obsiahnutú v danom číselníku a z odkazovaného číselníku nebude možné zmazať hodnotu, ktorá je pri nejakom zázname zadaná do tejto definovateľnej Extra položky. Príznak Cudzí kľúč je možné nastaviť len pri vytváraní novej Extra položky, pri už existujúcich položkách táto možnosť k dispozícii nie je. Ak je cudzí kľúč nastavený, nie je už možné pri danej def. položke meniť vlastnosti Spôsob editácie a Číselník.

Pokud položka není zatržena, kontrola referenční integrity se neprovádí a jako výchozí hodnota definovatelné položky může být nastavena vazba na již neexistující záznam. Viz poznámka u položky Výchozí hodnota.

  Rozlišovať veľkosť písmen Položka je aktivní pouze, pokud byla zatržena též položka Používat pro omezení výběrů dat. Není k dispozici pro položky typu Poznámka a Poznámka (unicode). Hodnota tohto parametra, ktorého funkčnosť je zrejmá z jeho názvu, slúži na predvyplnenie parametra Rozlíšenie veľkosti písmen na záložke obmedzenia (resp. Filtra či Hromadného označenia).
  Východisková hodnota

Hodnota, ktorá sa má defaultne predvypĺňať pre nové záznamy danej agendy (môžu vznikať aj kópiou existujúcich).

Východisková hodnota zadaná v definícii položky sa nemusí uplatniť, pokiaľ je nový objekt tvorený kópiou existujúceho a pre danú položku je súčasne nastavený Prenos (a pri funkcii, ktorá tvorbu nového objektu podľa iného (kópiou) uskutočňuje, je prenos tiež nastavený).

Východisková hodnota zadaná v definícii položky sa tiež nemusí uplatniť, pokiaľ je pre danú položku nastavená východisková hodnota iným spôsobom priamo v nejakej inej špecializovanej agende, viď napr. Predvypĺňanie položiek v agendách miezd a personalistiky.

Nie je k dispozícii pre položky, ktoré sú určené len na čítanie (viď vyššie). Dôvodom je samozrejme to, že takéto položky nie je za určitých okolností dovolené meniť a predvyplnenie nejakou hodnotou by bolo chápané ako zmena danej položky, nakoľko vyplnenie položky východiskovou hodnotou je na rovnakej úrovni ako vyplnenie položky z klávesnice.

Pokud je položka typu Znaky a zvolený způsob editace je číselník, pak může být v položce Výchozí hodnota zobrazováno i identifikační číslo (ID) vybraného záznamu z číselníku a to podle toho, jaká položka je z daného číselníku zvolena jako vybíraná (viz popis textové položky u datového typu Znaky). ID vybraného záznamu bude zobrazováno také v případě, že Způsob editace byl z původně nastavené možnosti Číselník dodatečně změněn na typ Výchozí.

Pokud je položka typu Znaky, zvolený způsob editace Číselník a není zatržena možnost Cizí klíč, může nastat následující scénář:

  • Při definici výchozí hodnoty uživatel otevře zvolený číselník, ze kterého vybere požadovaný výchozí záznam a uloží. Na níže uvedeném obrázku definujeme výchozí hodnotu položky navázané na Adresár firiem, jako výchozí hodnotu jsme si zvolili firmu s kódem 0036.

    Jako výchozí hodnota je nastavena vazba na existující firmu s kódem 00036. ID této firmy je 2B00000101.

  • Firmu 00036 následně někdo z Adresáře firem smaže (bez možnosti obnovení).
  • Do nových záznamů agendy s uvedenou definovatelnou položkou se bude stále vyplňovat ID odstraněného smazaného záznamu, přestože záznam s tímto ID již v Adresáři firem neexistuje (protože není zatržena volba Cizí klíč, mezi definovatelnou položkou a Adresářem firem neexistuje pevná vazba, referenční integrita se nekontroluje).

Pokud taková situace nastane, v poli Výchozí hodnota se přestane zobrazovat kód firmy (protože firma byla z databáze odstraněna), nicméně stále se bude zobrazovat ID smazaného záznamu, které se stále používá jako výchozí hodnota definovatelné položky (díky zobrazování ID je zřejmé, že výchozí hodnota existuje).

Jako výchozí hodnota se používá odkaz na již neexistující záznam s ID 2B00000101 v navázaném číselníku. Výchozí hodnotu bude zřejmě zapotřebí upravit (odkazovat se na jinou, aktuálně existující firmu).

V případě, že je popsané chování nežádoucí, řešením je používání příznaku Cizí klíč. Existence cizího klíče zajistí, že se firmu nepodaří smazat, pokud bude v některé definovatelné položce se způsobem editace Číselník nastavena jako výchozí.

Lišta navigátora

Ide o ten istý navigátor ako v subzáložke Prehľad položiek.

Panel na zobrazenie zoznamu položiek

V spodnej časti subzáložky ďalej môže byť zobrazená oblasť na zobrazovanie zoznamu položiek zo subzáložky Prehľad položiek, tzn. položiek už nadefinovaných pre aktuálnu triedu Business objektov zo záložky Zoznam. Je k dispozícii len, keď je v menu Nastavenie aktuálne začiarknutá voľba na zobrazenie prehľadu položiek aj v definícii. Umožňuje rýchlo listovať v zozname už nadefinovaných položiek (bez nutnosti prepínať na subzáložku Prehľad položiek) a prehliadať resp. editovať ich definíciu.

Pravidlá použitia tohto panelu sú pre všetky agendy, v ktorých sa môže panel takéhoto charakteru vyskytnúť, spoločné a boli podrobne popísané v kap. Panel na zobrazenie zoznamu na iných záložkách.

Zobrazenie zoznamu v Detaile

V niektorej časti tejto záložky môže byť zobrazený Zoznam (Panel na zobrazenie zoznamu na iných záložkách), teda záznamy zo záložky zoznam (podrobnejšie viď Spoločné prvky v číselníkoch - záložka Detail).

Zobrazenie zoznamu závisí od aktuálneho nastavenia v menu Nastavenie pre danú agendu a prihláseného užívateľa.

Funkcia k záložke Detail:

Podmnožina funkcií zo záložky Zoznam.

V editačnom režime platia zásady platné pre editáciu záznamov v knihách. K dispozícii sú štandardné funkcie pre režim editácie, pričom po uložení záznamu v závislosti na jeho údajoch môže dôjsť k vyvolaniu nejakej ďalšej automatickej akcie, viď akcie volané po uložení záznamu.