Záložka Omezení - obecně
Omezení
Omezení
Omezení
záložka Omezení
V této kapitole je uvedeno následující:
Záložka Omezení je k dispozici sice jen u dokladových agend, nicméně na obdobných principech pracují další funkce a místa v systému (a to nejen v dokladových agendách, ale i číselnících). Např.:
- ve funkci Nastavit filtr v číselníkových agendách
- ve funkci Hromadné označování v dokladových i číselníkových agendách
- ve funkci Najít v dokladových agendách
- v zadání omezení v agendách reportů
- příp. jinde.
Tudíž většina informací, zde uvedených, platí i pro tato místa.
Dále se v jiných částech systému vyskytují místa, kde se neopracuje s definicemi omezení, ale jsou k dispozici omezující prvky. Tudíž popis týkající se prvků zde uvedený, platí i pro tato místa. Např.:
- v definici podmínek Podání INTRASTAT
- v definici omezení v Sadách datových zdrojů SCM
- příp. jinde.
Dále se v jiných částech systému vyskytují místa, kde sice nejsou omezovací prvky, nicméně se tam vytvářejí nějaké "definice", jejichž využití a pravidla pro práci s nimi jsou obdobné práci s definicemi omezení. Např.:
- viz Definice podmínek def. formulářů
- viz Definice sloupců
- viz Definice panelů zobrazovaných údajů
- viz Definice pohledů v Časovém plánu
- příp. jinde.
Viz též Často kladené otázky - Pokud si omezím/zafiltruji, mám problém s tiskem některých sestav, proč?
Záložka Omezení slouží:
- pro nastavení aktuálního omezení záznamů z dané agendy, které se mají načíst z databáze (podrobnosti o načítání dat viz Technologie zpracování dat).
- pro nastavení aktuálního třídění (řazení) záznamů
- pro nadefinování a uložení definic omezení a třídění pro opakované použití nejčastěji používaných omezení a třídění
- pro nastavení oblíbených definic omezení a třídění
- pro sdílení definic omezení a třídění mezi vybranou skupinou uživatelů
- pro načtení požadovaných záznamů dle zvoleného omezení a třídění
- pro export a import definic (v závislosti na nastavení práv)
V této kap. mluvíme výhradně o standardních záložkách Omezení standardních dokladových agend (záložky omezení navázané na DynSQL). Kromě toho se mohou v systému vyskytnout i jiné záložky Omezení, které vypadají obdobně a mají obdobné ovládání, ale platí pro ně některé odlišnosti. Viz např. Záložka Omezení funkčních agend SCM.
Vzhled záložky Omezení se liší podle toho, jestli je zobrazena v Jednoduchém nebo Plném režimu. Jednoduchý režim (jak název napovídá) má méně funkcí a neobsahuje celé seznamy omezujících prvků, Plný režim obsahuje všechny funkce a možnosti. Mezi režimy lze přepínat tlačítkem Více/Méně funkcí. Pro Plný režim musí mít uživatel v nastavení práv odtržené právo Na záložce Omezení dovolit pouze jednoduchý režim (Méně funkcí).
Je určen pro běžné uživatele, kteří nechtějí být zatěžování množstvím funkcí a nastavení, jež záložka Omezení nabízí. V pravé části nejsou zobrazeny podmínky (pokud není vybráno Nové omezení (Bez jména), ale je zde formou výrazného nadpisu název aktuálně vybraného omezení, poznámka popisující omezení (pokud je zadána) a pod poznámkou je zobrazena přehledová (needitační) informace, jaké zadané podmínky a třídění obsahuje aktuální omezení, na kterém je v levé části kurzor.
Vzhled záložky Omezení s popisem prvků v jednoduchém režimu zobrazení:
Jednotlivé části okna a prvky v něm v JEDNODUCHÉM režimu zobrazení na výše uvedeném obrázku:
- (1) - Dvě části okna - v levé části je seznam definic a další prvky pro práci s nimi (viz dále prvky seznam definic, volba zobrazení definic, ikony, filtrační panel definic aj.), v pravé části je obsah aktuálně zvolené definice, který je v jednoduchém režimu u uložených definic primárně zobrazený jen jako popis zvolené definice s možností přepnutí na plný režim (viz panel s popisem definice a tlačítko Měnit definici), u neuložené definice jako seznam omezujících prvků (stejně jako u plného režimu)
- (2) - Seznam definic
- (3) - Volba zobrazení definic
- (4) - Ikona signalizující skrytou definici resp. skrytou změněnou definici
-
(5) - Ikony signalizující sdílení:
- (6) - Ikona signalizující změněnou definici
- (7) - Filtrační panel definic
- (8) - Lišta navigátoru definic
-
(9) - Panel funkčních tlačítek v jednoduchém režimu zobrazení:
- (9a) - Skrýt/Odkrýt
- (9b) - Oblíbené/Neoblíbené a ikona signalizující oblíbené resp. oblíbenou změněnou definici
- (9c) - Výchozí
- (9d) - Více funkcí >>
- (10) - Tlačítko Měnit definici
- (11) - Panel s popisem definice
- K dispozici je i link na instruktážní video.
Je určen pro plnou kontrolu nad záložkou omezení. Je možné se do něj přepnout tlačítkem Více funkcí, uživatel však musí mít v nastavení práv odtržené právo Na záložce Omezení dovolit pouze jednoduchý režim (Méně funkcí).
Mezi levým a pravým oknem je možné se přepínat klávesovými zkratkami šipka vpravo, resp. šipka vlevo.
Vzhled záložky Omezení s popisem prvků v PLNÉM režimu zobrazení:
Jednotlivé části okna a některé prvky v něm v PLNÉM režimu zobrazení na výše uvedeném obrázku:
- (1) až (8) - shodně jako v jednoduchém režimu
-
(9) - Panel tlačítek v plném režimu zobrazení:
- (9a) - Skrýt/Odkrýt
- (9b) - Oblíbená/Neoblíbená
- (9c) - Výchozí
- (9d) - Sdílení
- (9e) - Nová
- (9f) - Uložit
- (9g) - Uložit jako
- (9h) - Zruš změny
- (9i) - Smazat
- (9j) - Exportovat a Importovat
- (9k) - << Méně funkcí
- (10) - Tlačítko pro zobrazení statistiky použití
- (11) - Poznámka
- (12) - Seznam prvků pro omezování a panel třídění
- (13) - Volba zobrazení podmínek omezení
- (14) - Filtrační panel prvků omezení
- (15) - Lišta navigátoru prvků omezení
Signalizace změny definice ikonou červené tečky
Přepínání mezi omezeními v levém seznamu způsobí aplikaci omezovacích prvků platných pro dané omezení v pravé části. Pokud uživatel provede v panelu vpravo nějakou změnu v omezovacích prvcích (včetně změny jejich pořadí nebo skrytí), zobrazí se u daného omezení v seznamu vlevo symbol změny (červená tečka). Tím je indikováno, že je omezení rozeditováno a je zřejmé, že zobrazený stav podmínek se liší od uloženého omezení. Změněné omezení lze využít k zobrazení výsledku (funkce Získat záznamy) nebo ho je možné jím přepsat původní omezení (funkce Uložit), případně jej uložit jako nové omezení (funkce Uložit jako).
V obou režimech, viz jednoduchý režim a plný režim, je v levé části zobrazen seznam definic omezení. Jako první je vždy záznam Nové omezení, dále následuje seznam uložených omezení. Aby seznam definic nebyl po prvním spuštění agendy prázdný, naplní se automaticky základními ("továrními") omezeními, které lze genericky vytvořit. U dokladových agend je to typicky zobrazení dokladů za aktuální období, za minulé období a zobrazení zadaného čísla dokladu. Pokud se jedná o doklady, na které lze vázat platbu, vygeneruje se typicky omezení typu Jen nezaplacené, Jen nezaplacené po splatnosti a Jen přeplacené. Tato omezení se založí jako globální vždy, pokud se po vstupu do agendy zjistí, že neexistuje žádné uložené omezení pro daného uživatele – typicky při prvním spuštění. Stejný mechanismus je použit u vybraných mzdových agend, kde se založí omezení za aktuální mzdové období. Tovární omezení lze do agendy vložit u existujících instalací i kdykoliv později. A to funkcí Vložit tovární definice omezení.
Seznam definic omezení v levé části je nezávislý na režimu zobrazení a obsahuje podbarvené oddělovací sekce:
Příklad seznamu definic omezení
- Nové omezení - tato sekce je zobrazena vždy a umožňuje uživateli vytvářet zcela nové omezení, které následně buď přímo použije nebo ho uloží. Podmínky nastavené pro toto budoucí nové omezení se interně pamatují, takže pokud uživatel přejde ve stromu na jiné uložené omezení a pak se vrátí na tento uzel, zůstane předchozí obsah zachován.
- Moje oblíbená omezení - do této sekce si každý uživatel může přesunout libovolné vlastní nebo sdílené omezení. Pokud tak učiní, omezení bude jen zde, tj. zmizí ze sekce Ostatní uložení omezení. Zařazení do sekce oblíbených omezení se pamatuje odděleně na uživatele, tj. každý uživatel může mít jiná svoje oblíbená omezení.
- Ostatní uložená omezení - obsahuje seznam ostatních uložených omezení, která jsou viditelná a dostupná aktuálně přihlášenému uživateli. Uživatel vždy vidí pouze omezení, která jsou jeho vlastní (tj. definice Jen pro vás), dále která sdílí s jinými uživateli (tj. definice Sdílené, u nichž je v seznamu uživatelů sdílejících toto omezení) a nebo která jsou společná pro všechny uživatele (tj. definice Globální). Viz též popis funkce Sdílení.
- Pevné omezení z jiné agendy - tato sekce se v seznamu definic objeví tehdy, pokud uživatel vyvolá tzv. Červené omezení.
Nad seznamem omezení lze také pravým tlačítkem myši vyvolat lokální menu se stejnou nabídkou funkcí jako jsou na tlačítkách pod seznamem.
Při zcela prvním spuštění agendy je seznam existujících definic setříděn podle abecedy.
Seznam definic je možné filtrovat toho, které definice jsou nastavené jako skryté. Tj. je možné definice, které se nepoužívají, ale není vhodné je smazat, skrýt. V zobrazení definic je pak možné přepínat mezi všemi definicemi a definicemi pouze viditelnými (tj. těmi, které nemají příznak skryté).
Pro rychlé hledání lze v seznamu definic použít fulltextový filtr. Pokud je seznam definic aktivní, lze začít psát z klávesnice hledaný řetězec, který se zobrazuje v poli filtrovat. Filtrování je fulltextové (tj. zadaný řetězec se může vyskytovat kdekoliv uvnitř názvu definice omezení), ignoruje diakritiku a malá, resp. velká písmena. Kromě toho lze jako hledaný výraz zadat i více slov (nebo částí slov) oddělených mezerou; pak se zobrazí pouze podmínky obsahující všechna jednotlivá slova současně. Filtrují se pouze nezatržené omezovací prvky podle názvu (na zatržené omezovací prvky nemá filtrování vliv a zobrazují se vždy dle vybrané podmínky omezení).
Při zadání "ak ro" se zobrazí podmínka "Za aktuální fiskální rok".
Filtrují se pouze nezatržené omezovací prvky. Na zatržené omezovací prvky nemá filtrování vliv a zobrazují se vždy dle vybrané podmínky omezení.
Pod seznamem definic omezení je k dispozici lišta navigátoru:
Navigátor v této záložce obsahuje tlačítka a výběr položky pro zadávání skladové karty do aktuálního řádku:
- Pro pohyb kurzoru po řádcích (na začátek, předchozí řádek, další řádek, na konec) a změnu jejich pořadí. Pořadí lze měnit vždy jen v rámci dané skupiny Moje oblíbená omezení a Ostatní uložená omezení a pamatuje se (pořadí se ukládá).
- V plném režimu je v pravé části panelu přístupná ikona pro vyvolání agendy Přehled omezení. Funkce vyvolá agendu Přehled omezení a otevře ji "přes" aktuální agendu. Zde jsou k dispozici všechny funkce agendy Přehled omezení. Takto odtud vyvolaná agenda Přehled omezení se otevře rovnou s přednastaveným omezením, tzv. červeným omezením, a to jen za ta omezení, která jsou nadefinována k aktuální agendě (z níž byla agenda Přehled omezení vyvolána).
Dostupné funkce se liší podle toho, zda se jedná o jednoduchý nebo plný režim.
Viz dále Funkce v jednoduchém režimu zobrazení: a Funkce v plném režimu zobrazení.
K dispozici pouze v plném režimu. Slouží pro zobrazení poznámky, která byla zadána při uložení definice omezení. Dále viz Poznámka.
K dispozici pouze v jednoduchém režimu pro již uložené definice omezení.
Příklad vzhledu pravé části záložky omezení v jednoduchém režimu
Pravá část záložky Omezení v jednoduchém režimu obsahuje pro definici, na které stojí kurzor v seznamu definic, popis dané definice, tj. to, jak byla v plném režimu nadefinována a uložena. Tj. její název, dále poznámku k dané definici, pokud byla zadána v rámci funkce Uložit, dále sekci Podmínky (tj. uplatněné omezovací prvky), sekci Třídění (uplatněné třídění) a sekci Připojená definice sloupců (Definice sloupců uplatněná v rámci funkce funkce Uložit). Pod nimi je umístěna funkce:
Název | Popis |
---|---|
Měnit definici | Přepne do plného režimu zobrazení (obdobně jako tlačítko Více funkcí >>), aby bylo možné definici omezení upravit. |
Vedle funkce Měnit definici je umístěn odkaz na instruktážní video.
K dispozici pouze v plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu.
Jedná se o seznam prvků, které slouží k tomu, aby si uživatel určil jednotlivé detaily pro omezení. Jaké prvky se nabízejí, závisí na konkrétním místě programu. Liší podle toho, jaké omezení dovolují provést a jsou typicky spojeny s jedním nebo více údaji v databázi (v příslušné tabulce). Omezující prvky jsou různého typu a podle toho se i používají a ovládají. Popis jednotlivých typů prvků a popis práce s nimi podrobně viz Typy prvků pro omezování.
Zde je možno použít všechny omezovací podmínky dostupné v dané agendě pro výběry dat z databáze včetně uživatelsky definovatelných položek (mají-li v definici nastaveno Používat pro omezení výběrů dat). Uživatel si tak může vytvářet i poměrně složité varianty označování.
Hodnoty do uživatelsky definovatelných položek doplněných do agend později lze dozadat i hromadně, viz Možnosti hromadných oprav.
Obecně není podporováno omezování za položky s historií a omezení za takové položky je k dispozici jen ve vybraných případech.
Zda jsou jednotlivé části k dispozici, závisí na konkrétním místě programu.
Omezovací (filtrovací) podmínky dostupné v daném místě programu pro výběry dat z databáze, jsou dány definicí dynamického zdroje dat (DynSQLs), tj. DynSQL příkazu, který se vztahuje k danému místu programu (viz podmínky DynSQL v nástroji DynSQLEditor) a dále uživatelsky definovatelnými položkami, které mají v definici nastaveno Používat pro omezení výběrů dat a jsou nadefinovány pro Třídu Business objektu s CLSID, jako je CLSID uvedený u aliasu A v datasetu daného DynSQL příkazu (více vč. příkladu viz popis položky Používat pro omezení výběrů dat).
K dispozici pouze v plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu.
V levé dolní části záložky Omezení pod seznamem definic je panel pro zobrazení poznámky zadané k dané definici v rámci funkce Uložit.
Panel pro zobrazení poznámky k uložené definici
K dispozici pouze v plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu.
Nad seznamem prvků pro omezování je k dispozici množina voleb, pomocí nichž si lze nechat zobrazovat "jen některé" z omezujících prvků. Volba se pamatuje na uživatele a uchovává se i po zavření dané agendy (s výjimkou hodnoty Skryté, které se po novém spuštění nahradí Viditelné).
Panel pro volbu zobrazení podmínek zobrazení nad seznamem omezujících prvků
Možnosti:
- Viditelné – zobrazí všechny omezovací prvky, které nejsou skryté (výchozí zobrazení)
- Skryté – zobrazí jen skryté omezovací prvky, aby bylo možné je zpět zviditelnit
- Jen zatržené – zobrazí jen použité tj. zatržené omezovací prvky. Lze tak snadno vyfiltrovat jen platné omezovací prvky daného omezení. Zvláštním případem při zvolení této volbě je případ, kdy není zatržena žádný omezovací prvek. Pak by seznam omezovacích prvků byl prázdný a proto se v tomto případě zobrazí omezovací prvky všechny až do doby, než bude alespoň jeden zatržen.
-
Jen často používané – na základě statistik použití jednotlivých omezovacích prvků automaticky zobrazí jen ty, které byly za posledních 12 měsíců alespoň jednou použity v některém z omezení, resp. byl proveden alespoň jednou dotaz obsahující daný omezovací prvek. Mimoto zobrazí vždy použité (zatržené) omezovací prvky.
Volba Jen často používané je v případě, že žádné podmínky nebyly použité a nepromítly se tedy do statistik, skrytá. Po prvním použití podmínek je pro zobrazení navíc třeba zavřít a otevřít agendu.
K dispozici pouze v plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu.
Pod lištou s volbami pro zobrazování omezovacích prvků a nad seznamem prvků pro omezování se nachází filtrační panel, který umožňuje filtrovat podle názvu omezovacího prvku. Z omezovacích prvků, které vyhoví filtraci na základě výše popsaného přepínače zobrazení dále filtruje podle názvu.
Filtrační panel nad seznamem omezujících prvků
Filtrování je fulltextové (tj. zadaný řetězec se může vyskytovat kdekoliv uvnitř názvu omezovacího prvku). Filtrování dále ignoruje diakritiku a malá, resp. velká písmena. Kromě toho lze hledaný výraz zadat i více slovy (nebo částí slov) oddělených mezerou, pak se zobrazí pouze omezovací prvky obsahující všechna jednotlivá slova současně.
Při zadání "dat vys" se zobrazí omezovací prvek "Datum vystavení dokladu".
Do filtru se zadávané znaky zapisují i tehdy, pokud fokus je v seznamu omezovacích prvků.
K dispozici pouze v plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu.
Pod seznamem prvků pro omezování je k dispozici lišta navigátoru:
Liště navigátoru pro práci s omezujícími prvky
Navigátor v této záložce obsahuje tlačítka a výběr položky pro zadávání skladové karty do aktuálního řádku:
- Pro pohyb kurzoru po řádcích (na začátek, předchozí řádek, další řádek, na konec) a změnu jejich pořadí
- Vyčistit - seznam omezovacích prvků bude vyčištěn od všech zatržených, vybraných či vepsaných hodnot.
- Skrýt/Odkrýt podmínku - Umožňuje skrýt omezovací prvek, ale pouze tehdy, pokud není použita (zatržena). Skrytí je dostupné jen v režimu zobrazení Viditelné, odkrytí pouze v režimu zobrazení Skryté. Pomocí těchto funkcí lze ze seznamu omezovacích prvků odstranit ty, které nechce uživatel v omezení vidět a upravit pořadí zbývajících položek podle potřeby. Změny se ukládají do definice omezení spolu s nastavenými omezovacími prvky.
K dispozici pouze v plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu.
V pravé dolní části záložky Omezení pod seznamem prvků pro omezování je ve většině případů panel pro nastavení třídění.
Panel pro zadání třídění výsledného seznamu
U dokladových agend se může vyskytnout více možností třídění a více možností, jak aktuální třídění nastavit. Ovládání podrobně viz samostatná kapitola Třídění v needitovatelných seznamech. Nastavené třídění lze ukládat pro opakované použití v rámci definic omezení.
Podle charakteru se tyto prvky dělí na následující:
Jsou všude tam, kde se řeší nějaké omezení nad textovým údajem. Jedná se o znakovou editační položku.
Umožňují používání tzv. divokých znaků (wildcards).
- Pokud je třeba vybrat všechny záznamy v účetním deníku, jejichž text účetního zápisu začíná na A, zadá se do omezovacího pole "A*".
- Pokud je třeba vybrat všechny záznamy, které mají na druhém místě textu znak b, zadá se do omezovacího pole "?b*"
Hledání se zde neprovádí po slovech, ale po celých textech obsažených v textových položkách. Tudíž pokud chcete vyhledat záznamy, jejichž text obsahuje nějaké slovo, musíte divoké znaky (hvězdičku) použít. Lze tudíž hledat i za slovní spojení obsahující slova kratší než 3 znaky - srovnejte se syntaxí při hledání po slovech, viz např. popis v kap. Chyby- záložka Omezení.
- Pokud chcete vybrat záznamy, jejichž text obsahuje slovo "doprava", je třeba zadat omezení "*doprava*".
- Pokud chcete vybrat záznamy, jejichž text začíná slovem "doprava", je třeba zadat omezení "doprava*".
- Pokud zadáte omezení "*doprav*", vyberou se záznamy, jejichž text obsahuje řetězec "doprav", tj. vyberou se záznamy s textem např. "Cena za dopravu", "Platba dopravy", "Doprava", "Náklady na dopravu" apod.)
- Pokud zadáte slovní spojení "*Cena za*", vyberou se záznamy s textem např. "Udaná cena za dopravu", "Cena zakázky" apod.
Lze zde zohledňovat rozlišení velikosti písmen. U některých lze použít rozšířenou syntaxi. U většiny Inverzi výběru a Dotázání se na hodnotu.
Dále viz popis dostupných příznaků - vlastností:
- Rozlišovat velikost písmen Rozlišovat velikost písmen
- Inverze výběru Inverze výběru
- Dotázat se na hodnotu Dotázat se na hodnotu
- Nepoužít nevyplněné Nepoužít nevyplněné
- Rozšířená syntaxe Rozšířená syntaxe
Omezení za nevyplněnou znakovou položku
Pokud chcete vybrat záznamy, které mají nějakou znakovou položku nevyplněnou, pak to lze provést zadáním mezery a hvězdičky:
Příklad výběru objednávek přijatých s nezadaným externím číslem. Vybere všechny OP, které nemají vyplněnu položku Externí číslo.
Umožňuje zadání rozsahů datumů. Vybrané záznamy by v dané položce měly mít hodnoty větší nebo rovny dolní hranici a menší nebo rovny horní hranici.
Zadat datumové omezení lze:
-
absolutně - tj. zadáním dolní a horní hranice datumů. Absolutní zadání se provádí pomocí dvou editačních položek typu datum
Příklad datumového omezení zadaného absolutně
-
relativně - výběrem některého relativního omezovacího kritéria. Po stisku tlačítka se nabídne seznam možných kritérií:
Popis možností:
- Podle zadaných datumů - přepne způsob zadání dat z relativního zpět na absolutní (viz výše)
- Aktuální fiskální rok - dle systémového data doplní data od prvního do posledního dne aktuálního kalendářního roku (tedy bez ohledu na počátek a konec nadefinovaného aktuálního účetního období). Nezaměňujte s aktivním kalendářním rokem.
- Minulý fiskální rok - obdobně jako předchozí volba, ale o jedno fiskální období dříve
- Aktuální kalendářní rok - dle aktivního mzdového období doplní datumy od prvního do posledního dne daného kalendářního roku
- Minulý kalendářní rok - obdobně jako předchozí volba, ale o rok dříve
- Aktuální měsíc - dle aktuálního systémového data počítače doplní datumy od prvního do posledního dne aktuálního kalendářního měsíce
- Minulý měsíc - obdobně jako předchozí volba, ale o měsíc dříve
- Aktuální týden - dle systémového data doplní datumy od prvního do posledního dne aktuálního týdne
- Minulý týden - obdobně jako předchozí volba, ale o týden dříve
- Aktuální čtvrtletí - dle systémového data doplní datumy od prvního do posledního dne aktuálního kalendářního čtvrtletí
- Minulé čtvrtletí - obdobně jako předchozí volba, ale o čtvrtletí dříve
- Pouze dnes - omezení pouze za aktuální den
- Včera - jako předchozí volba, ale o den dříve
- Za poslední rok - do omezení se vyplní aktuální den "do", a datum "od" je vyplněno aktuálním dnem minus 364 dnů
- Vlastní nastavení - speciální volba, která umožní zadat rozsah dat dle libovolného jiného vámi nadefinovaného nastavení, viz dále Definice vlastního nastavení
Příklad datumového omezení zadaného relativně za aktuální měsíc
Relativní omezovací kritéria mají následující přednosti:
- je možné si rychle vybrat omezení dat bez přemýšlení
- jsou relativní, takže je lze s výhodou používat v uložených definicích omezení (např. faktury vydané za aktuální měsíc).
Objasníme na příkladech:
Příklad 1: V agendě faktur vydaných si v záložce omezení zatrhneme omezení za datum vystavení a datumy zadáme relativně - vybereme "minulý měsíc". Pak zatrhneme položku Zaplacení a vybereme hodnotu "Nezaplacené". Toto omezení uložíme jako definici omezení např. pod názvem "Nezaplacené faktury z minulého měsíce". Pak můžeme v libovolném kalendářním měsíci zvolit toto omezení a aniž bychom museli zdlouhavě zadávat datumy od-do, získáme ihned přehled pohledávek z minulého měsíce.
Příklad 2: Pravidelně sledujeme dosažené tržby za minulý týden. Pokud je čerpáme dle účetnictví, pak si např. v agendě účetního deníku můžeme uložit definici omezení s datem účtování relativně - vybereme "minulý týden" a účty omezenými za třídu "6*". Pak si můžeme v libovolném dni zvolit tuto definici omezení a aniž bychom museli zdlouhavě zadávat datumy za předchozí týden, získáme ihned přehled tržeb.
Definice vlastního nastavení
Pokud kurzor stojí na volbě Vlastní nastavení, pak je k dispozici záložka Vlastní definice, ve které můžete vlastní nastavení datumů definovat. Zde můžete libovolně kombinovat absolutní i relativní způsob zadání dnů, měsíců i roků. To umožňuje definovat, která část datumu (den, měsíc a rok) se bude zadávat konkrétními hodnotami, tj. bude pevná a která se bude odvozovat od aktuálního (systémového) data.
Příklad vlastní definice pro dny zadané absolutně
Pro vlastní definici platí následující:
- Konkrétní hodnoty dnů mohou být v rozmezí 1-31
- Pokud daný měsíc neobsahuje den zadaný v horní hranici (tj. nemá 31-tého, resp. 30-tého a 29-tého), pak program automaticky do horního datumu dosadí odpovídající hodnotu posledního dne daného měsíce pro daný rok. Viz příklady dále.
- Konkrétní hodnoty měsíců mohou být v rozmezí 1-12
- K aktuálnímu dni/měsíci/roku lze připočítat kladené i záporné číslo, je-li záporné, pak volený den/měsíc/rok je vypočítáván od aktuálního zpět
Objasníme na příkladech:
Mějme různá vlastní nastavení dle tabulky 1, výsledné omezení viz tabulka 2.
Varianta: | Den od | Den do | Měsíc od | M.do | Rok od | Rok do |
---|---|---|---|---|---|---|
1 | Konkrétní:1 | Konkrétní:14 | Aktuální+:0 | Aktuální+:0 | Aktuální+:0 | Aktuální+:0 |
2 | Konkrétní:15 | Konkrétní:31 | Aktuální+:-1 | Aktuální+:-1 | Aktuální+:0 | Aktuální+:0 |
3 | Aktuální+:-7 | Aktuální+:0 | Aktuální+:0 | Aktuální+:0 | Aktuální+:0 | Aktuální+:0 |
4 | Konkrétní:1 | Aktuální+:0 | Konkrétní:1 | Aktuální+:0 | Aktuální+:0 | Aktuální+:0 |
Var. | Aktuální datum | Výsledné omezení | Další popis |
---|---|---|---|
1 | 20.1.2005 | 1.1.2005-14.1.2005 | Omezíte za prvních 14 dnů aktuálního měsíce a roku. |
7.5.2004 | 1.5.2004-14.5.2004 | ||
2 | 20.2.2005 | 15.1.2005-31.1.2005 | Omezíte za druhou polovinu minulého měsíce. |
16.3.2004 | 15.2.2004-29.2.2004 | ||
3 | 19.3.2005 | 12.3.2005-19.3.2005 | Omezíte za posledních 8 dnů (včetně dnešního). |
5.1.2005 | 29.12.2004-5.1.2005 | ||
4 | 19.3.2005 | 1.1.2005-19.3.2005 | Omezíte od prvního dne aktuálního roku do dnešního data (včetně). |
5.1.2006 | 1.1.2006-5.1.2006 |
Pokud definujeme omezení závislé na systémovém datu, při určování mezí časového intervalu lze volitelně vynechat vybrané dny v týdnu (typicky soboty a neděle), případně i svátky. Uvedená možnost se nabízí v rámci Vlastního omezení, jsou-li všechny hodnoty (den, měsíc i rok) zadány relativně (tj. Aktuální +) a je-li zadána nenulová hodnota ve dnech. (Nejsou-li tyto podmínky splněny, je vynechávání dnů bezpředmětné a příslušná část dialogu zůstává skryta.)
Chceme vybrat všechny doklady vystavené před dvěma pracovními dny a novější. Záložku Vlastní definice v dialogu Doplnění datumů vyplníme následovně:
Příklad definice časového omezení s vynecháním víkendů a svátků
V závislosti na aktuálním (systémovém) datu platném v okamžiku použití takto nadefinovaného omezení obdržíme následující intervaly:
Aktuální datum | Výsledné omezení | Poznámka |
---|---|---|
26.12.2017 | 21.12.2017 - 26.12.2017 | vynechány 1 x So, 1 x Ne, 1 x svátek |
27.12.2017 | 21.12.2017 - 27.12.2017 | vynechány 1 x So, 1 x Ne, 2 x svátek |
28.12.2017 | 22.12.2017 - 28.12.2017 | vynechány 1 x So, 1 x Ne, 2 x svátek |
29.12.2017 | 27.12.2017 - 29.12.2017 | žádné dny nevynechány |
30.12.2017 | 28.12.2017 - 30.12.2017 | žádné dny nevynechány |
31.12.2017 | 28.12.2017 - 31.12.2017 | vynechána 1 x So |
1.1.2018 | 28.12.2017 - 1.1.2018 | vynechány 1 x So, 1 x Ne |
2.1.2018 | 28.12.2017 - 2.1.2018 | vynechány 1 x So, 1 x Ne, 1 x svátek |
3.1.2018 | 29.12.2017 - 3.1.2018 | vynechány 1 x So, 1 x Ne, 1 x svátek |
4.1.2018 | 2.1.2018 - 4.1.2018 | žádné dny nevynechány |
Funkcionalitu řeší interní programová funkce, která při vynechávání svátků nepřihlíží k údajům zadaným v číselníku Placené svátky.
Použitý algoritmus je následující:
- K aktuálnímu datu se přičte resp. odečte zadaný počet měsíců/let (pokud jsou různé od nuly). (Při aritmetických operacích s měsíci/roky se žádné dny nevynechávají, bez ohledu na nastavení.)
- Získané datum se postupně povyšuje resp. ponižuje po jednom dni, dokud není toto povýšení resp. ponížení úspěšně aplikováno tolikrát, kolik dnů je zadáno v podmínce.
Aplikace na náš příklad - uvedené pravidlo použijeme ve čtvrtek 28.12.2017. Do podmínek nastavíme -2 dny, +0 měsíců a +0 let s vynecháním So, Ne a svátků:
Průběžné datum | Kategorie | Stav výpočtu |
---|---|---|
28.12.2017 | čtvrtek, pracovní den | zbývá odečíst 2 dny, pokračujeme |
27.12.2017 | středa, pracovní den | zbývá odečíst 1 den, pokračujeme |
26.12.2017 | úterý, svátek | vynecháno, stále zbývá odečíst 1 den, pokračujeme |
25.12.2017 | pondělí, svátek | vynecháno, stále zbývá odečíst 1 den, pokračujeme |
24.12.2017 | neděle + svátek | vynecháno, stále zbývá odečíst 1 den, pokračujeme |
23.12.2017 | sobota | vynecháno, stále zbývá odečíst 1 den, pokračujeme |
22.12.2017 | pátek | hotovo, výsledné datum dosazené do omezení bude 22.12.2017 |
Omezení za nevyplněné datum
Pokud chcete vybrat záznamy, které mají nějakou položku typu datum nevyplněnou, pak to lze provést následovně:
Příklad výběru karet majetku s nezadaným konkrétním datem. Vybere všechny karty majetku, které nemají vyplněno datum vyřazení, tj. dosud nebyly vyřazeny.
Pokud je omezení za datum v daném místě programu povinné omezující kritérium (defaultně zatrženo a není možno jej odtrhnout, viz defaultně zatržené omezovací prvky), ale datum není zadáno (např. po spuštění funkce Vyčistit), pak je interně reprezentováno datumem 30.12.1899 a takové datum pak může figurovat i v případných výpisech apod., dále viz Často kladené dotazy, datum 30.12.1899.
Dále viz popis dostupných příznaků - vlastností:
- Inverze výběru Inverze výběru
- Dotázat se na hodnotu Dotázat se na hodnotu
- Zadávat i čas Zadávat i čas
Typicky slouží pro omezení nad položkami typu částka. Vybrané záznamy by v dané položce měly mít hodnoty větší nebo rovny dolní hranici a menší nebo rovny horní hranici.
Dále viz popis dostupných příznaků - vlastností:
- Inverze výběru Inverze výběru
- Dotázat se na hodnotu Dotázat se na hodnotu
Totéž jako předchozí, ale pro celočíselné údaje - např. pořadové číslo dokladu.
Dále viz popis dostupných příznaků - vlastností:
- Inverze výběru Inverze výběru
- Dotázat se na hodnotu Dotázat se na hodnotu
Je všude tam, kde se omezuje za údaje, které se odkazují do nějakého číselníku.
Příklad omezovacího prvku za číselníkové údaje
K dispozici je tlačítko . Jedná se o funkční tlačítko s volbou. Po stisku tlačítka nebo z klávesnice stiskem klávesové zkratky Alt+šipka dolů (stejně jako u skrytých seznamů) se vyvolá nabídka:
Příklad vyvolané nabídky
Můžete zvolit jednu z možností:
- Otevřít číselník a vybrat přímo z něj - Číselník otevřete rovnou po stisku tlačítka nebo volbou Otevřít číselník z vyvolané nabídky (a to jako malý výběrový číselník), způsob výběru záznamu(ů) z číselníku viz příslušná kapitola.
- Zadat omezení podle obsahu ABRA schránky - Princip ABRA schránky a funkce pro zadání omezení pomocí ABRA schránky viz kap. ABRA schránka, funkce ABRA schránky.
Vpravo od tlačítka se pak zobrazuje aktuální provedený výběr. V případě, že byl vybrán pouze jeden záznam, je zobrazen jeho název. V případě, že bylo vybráno více záznamů než 1 a méně nebo rovno 20, je zobrazen jejich seznam (nebo jeho část) spolu s uvedeným počtem vybraných záznamů. V případě, že je vybráno více než 20 záznamů, je zobrazen pouze jejich počet.
V případě, že již byl proveden nějaký výběr v číselníkovém omezovacím prvku, a dojde k opětovnému vyvolání číselníku, jsou vybrané záznamy v číselníku označeny. Pokud tedy chcete aditivně přidat další ke stávajícímu omezení, musíte je tedy rovněž označit. Pokud chcete stávající výběr zrušit a vybrat jiné, zrušte dosavadní označení a vyberte jiný(é) záznamy dle potřeby.
Podmínky, za kterých se záznamy obsahující skryté hodnoty číselníkových položek zobrazí při různých typech omezení, jsou uvedeny v popisu chování při různých kombinacích inverze při omezování za číselníkové údaje.
Za číselníkové údaje lze omezovat i včetně podřízených záznamů a dále je speciálně ošetřeno omezování za číselníkové položky v případě, že není povinná a není na záznamech vyplněna pomocí rozšíření o nevyplněné.
Dále viz popis dostupných příznaků - vlastností:
- Inverze výběru Inverze výběru
- Rozšířit o nevyplněné Rozšířit o nevyplněné
- Dotázat se na hodnotu Dotázat se na hodnotu
- Nepoužít nevyplněné Nepoužít nevyplněné
Tento prvek je vizuálně obdobný předchozímu, ale na rozdíl od něj je použit tam, kde se omezuje přes záznamy z jiné agendy, která není číselníkem, ale je charakteru dokladové agendy.
Po stisku tlačítka je vyvolán průvodce výběrem dokladu, pomocí něhož vyberete požadované záznamy, podle nichž si přejete omezovat.
Po jejich výběru se vpravo od tlačítka zobrazuje aktuální provedený výběr. V případě, že byl vybrán pouze jeden záznam, je zobrazen jeho název. V případě, že bylo vybráno více záznamů než 1 a méně nebo rovno 20, je zobrazen jejich seznam (nebo jeho část) spolu s uvedeným počtem vybraných záznamů. V případě, že je vybráno více než 20 záznamů, je zobrazen pouze jejich počet.
V případě, že již byl proveden nějaký výběr a dojde k opětovnému vyvolání průvodce a jsou vybrány jiné záznamy, je původní výběr nahrazen novým. Nelze tedy takto aditivně přidat další ke stávajícímu omezení, je třeba vyvolat průvodce znovu a vybrat všechny požadované záznamy pro omezení najednou.
Tento typ omezovacího prvku se používá v případech, kdy položka, podle které se omezuje, může nabývat několika hodnot z určitého konečného výčtu hodnot (výčet hodnot je dán výrobcem, tedy nezaměňujte s číselníky), ale v omezení je možné si vybrat pouze jednu hodnotu. (Na rozdíl od následujícího typu omezovacích položek, kde je možno vybrat více hodnot najednou).
Jedná se o prvek typu skrytý seznam, do omezení vybíráte jednu hodnotu ze skrytého seznamu:
Příklad omezovacího prvku s výčtem hodnot, kterých může prvek nabývat, a s jednou hodnotou vybranou
Dále viz popis dostupných příznaků - vlastností:
- Inverze výběru Inverze výběru
Tento typ omezovacího prvku se používá v případech, kdy položka, podle které se omezuje, může nabývat několika hodnot z určitého konečného výčtu hodnot (výčet hodnot je dán výrobcem nebo uživatelem, tj. nezaměňujte s číselníky), ale je účelné (a v daném místě programu vnitřně technicky realizovatelné) si zvolit i více těchto hodnot najednou. (Na rozdíl od předchozího typu omezovacích položek, kde je možno vybrat pouze jednu hodnotu ze seznamu). Výčet hodnot je dán:
- Výrobcem.
- Uživatelem - pomocí Definovatelné položky datového typu Znaky se způsobem editace Volby, která má zaškrtnut příznak Používat pro omezení výběrů dat.
Po stisku tlačítka je vyvoláno dialogové okno s nabídkou možných hodnot, z nichž zatrhnete ty, které se mají v omezení použít. Zatržené hodnoty znamenají logický součet (tedy doklad musí splňovat aspoň jednu zatrženou hodnotu, aby byl vybrán):
Příklad, kdy ve výsledném seznamu dokladů budou jen ty, které jsou zaplacené přesně anebo jsou přeplacené.
K dispozici je zde lokální nabídka menu, pomocí kterého lze vybírat i hromadně (tj. zatrhnout i hromadně) a to buď vybrat všechny nabídnuté možnosti, případně provést výběr inverzní:
Lokální menu pro hromadný výběr možností
Dále viz popis dostupných příznaků - vlastností:
- Inverze výběru Inverze výběru
Tento omezující prvek umožňuje zadat výraz v syntaxi SQL dotazu a dosáhnout tak omezení, která se v daném místě programu nedají zadat pouhým zatržením jiných nabízených omezovacích prvků. Typicky se jedná o složitější kombinace podmínek typu "zafiltruj číselník firem za firmy s fakturovanou částkou vyšší než...". Pro omezení lze použít také QuickReports výrazy. Objasníme na příkladech:
Příklad 1: Uživatel chce najít staré faktury nezaplacené či zaplacené částečně z méně jak 75%, protože na ně chce vystavit upomínky. Na záložce Omezení použije standardní podmínku Datum vystavení a dále použije podmínku "Výraz", do které uvede následující fragment SQL: (PaidAmount / Amount) < 0.75 resp. lépe Amount > 0 and (PaidAmount / Amount) < 0.75 (aby bylo zajištěno, že nebude děleno nulou).
Příklad 2: Pokud potřebuje uživatel vybrat v Adresáři firem jen firmy s konkrétním IČO, zadá v záložce Omezení do podmínky "Výraz": a.OrgIdentNumber in ('123','456','789','223','556'). Seznam v Adresáři firem se pak omezí jen na firmy, jejichž IČO je 123 nebo 456 nebo 789 nebo 223, 556.
Příklad 3: V omezení u filtrování podle vlastního SQL výrazu lze nyní použít QuickReports výrazy. Tento výraz musí být obalen sekvencí, jinak se nebude interpretovat. Lze zde použít jakýkoliv korektně vytvořený výraz.
Např. Může být použit výraz pro určení aktuálního uživatele:
A.CorrectedBy_ID = '##QREXPRBEGIN#NxGetUserID##QREXPREND#'
Seznam IČO oddělených apostrofy tak, jak požaduje výraz v příkladu 2, pohodlně získáte v Microsoft Excelu pomocí operátoru &, který umožňuje sčítat jednotlivé řetězcové členy, následujícím způsobem: V seznamu firem v XLS souboru, který vám např. poslal obchodní partner a který obsahuje ve sloupci A název firmy a ve sloupci B IČO firmy, přičemž hodnoty začínají až od druhého řádku (v prvním řádku jsou nadpisy sloupců), vytvoříte sloupec C tak, aby platilo:
- výraz v buňce C2 = " ' " & B2 & " ' "
- výraz v buňce C3 = C2 & ",' " & B3 & " ' "
- buňku C3 z předchozího řádku chytíte za její pravý dolní křížek a roztáhnete její výraz dolů na všechny firmy. Ve sloupci C tak budou výrazy:
Řádek | Sloupec A | Sloupec B | Sloupec C | |
---|---|---|---|---|
1 | Firma | IČO | Výsledek | Výraz ve sloupci C |
2 | Firma 1 | 123 | '123' | =" ' " & B2 & " ' " |
3 | Firma 2 | 456 | '123','456' | =C2 & ",' " & B3 & " ' " |
4 | Firma 3 | 789 | '123','456','789' | =C3 & ",' " & B4 & " ' " |
5 | Firma 4 | 223 | '123','456','789','223' | =C4 & ",' " & B5 & " ' " |
6 | Firma 5 | 556 | '123','456','789','223','556' | =C5 & ",' " & B6 & " ' " |
Protože následující řádek ve sloupci C obsahuje odkaz na hodnotu řádku předchozího a hodnotu řádku aktuálního, dostanete v posledním řádku hodnoty všech IČO v apostrofech oddělených čárkami. Tento výraz pak stačí vzít do clipboardu, přenést do podmínky "Výraz" v definici Omezení v agendě Adresář firem a omezení je hotovo.
Použití tohoto prvku však vyžaduje znalost SQL, aby uživatel byl schopen specifikovat toto omezení pomocí fragmentu SQL, o které se rozšíří fráze WHERE dynamického dotazu.
Tento prvek tu však není proto, aby obtěžoval běžného uživatele znalostí SQL dotazů, ale proto, aby byl k dispozici nástroj, pomocí něhož lze dosáhnout i komplikovanějších omezení, která by se mohla uživateli v daném místě programu hodit. Běžný uživatel se nemusí konstruováním těchto výrazů vůbec zabývat a pokud potřebuje omezovat za složitější podmínky, může si objednat jejich přípravu u servisních konzultantů výrobce.
Naopak, pokud prvek použije neznalý uživatel a zadá omezující výraz nesprávně (do výrazu může napsat prakticky cokoliv), program na to bude reagovat chybou. Nejedná se však o chybu programu!!! Přitom nemusí se jednat vyloženě o chybnou syntaxi, ale třeba jen o nedomyšlenost. Objasníme na příkladu:
Pokud pro dohledání faktur zaplacených z méně jak 75% použijeme jen výraz (PaidAmount / Amount) < 0.75 z předchozího příkladu a v datech se nám vyskytne faktura na nulovou částku (např. proto, že do ní byl zúčtován daňový zálohový list přesně do nuly), pak bude program reagovat následovně:
Reakce na dělení nulou, ale nejedná se o chybu programu, nýbrž o následek nedostatečně promyšleného výrazu.
Omezující podmínka za výraz je k dispozici jen na vybraných místech programu (jen pro dataset MAIN, obsahuje-li {WHERE} nebo {ANDWHERE}). Dále tímto způsobem nelze řešit definice postavené na uložených procedurách (např. reporty Prodané zboží apod.)
Ovládání:
Po stisku tlačítka je vyvolán editor SQL výrazu:
Příklad zadaného výrazu v SQL editoru v systému ABRA Gen
Zde lze zadat požadovaný výraz v syntaxi SQL. Výraz zadaný uživatelem bude spojen jako logický součin (průnik) s ostatními zadanými podmínkami. Výrazy si lze i ukládat a poté jen vybírat z uložených pomocí funkcí, které jsou zde k dispozici:
Název | Popis: |
---|---|
Uložit jako |
Výraz aktuálně zadaný v editoru si lze uložit pod nějakým jménem. Uživatelé tedy mohou mít nadefinováno více různých výrazů pro opakované použití a jen je vybírat ze skrytého seznamu v horní části okna editoru SQL výrazů:
Příklad nabízení dvou uložených definic výrazů Výrazy jsou ukládány jako globální, tj. jsou dostupné pro všechny uživatele. Význam "globální" je obdobný jako např. u definic omezení, viz popis funkce Sdílení u definic omezení. |
Odstranit | Vymaže aktuální výraz (tj. výraz, jehož název je aktuálně zobrazen v omezovacím panelu v okně editoru SQL výrazů). |
Test | Provede kontrolu správnosti syntaxe. |
Další příklad použití omezující podmínky typu Výraz viz Často kladené otázky - Jak si vypsat ležáky.
Další příklad použití omezující podmínky typu Výraz v otevřeném rozhraní viz Příklady.
U omezení za řádkové údaje se jedná o Skupiny vnořených omezujících údajů.
Na většině míst, kde lze nastavit omezení za řádky dokladu, je dále k dispozici zatržítko Rozšířit o doklady bez řádků. Je k dispozici k zatržení jen, pokud fokus stojí na nadřízeném omezujícím prvku dané skupiny:
Zatržítko Rozšířit o doklady bez řádků se zobrazuje, stojí-li fokus na prvku Řádky.
Je-li zatrženo, zobrazuje se informace o tom vedle nadřízeného omezujícího prvku:
Informace o tom, že je zatrženo zatržítko Rozšířit o doklady bez řádků, se zobrazuje vedle slova Řádky.
Obdobná možnost může být k dispozici i v agendách, kde nejde vyloženě o řádky dokladů, ale kde k záznamu patří sada nějakých podřízených záznamů, které se k němu váží. Viz např. funkce Filtrovat v adresáři firem za kategorizační údaje. (Sice nejde o záložku Omezení, nicméně chování a ovládání je obdobné, jako u záložky Omezení).
Pouze pokud je prvek Rozšířit o doklady bez řádků zatržen, přidají se k výsledku omezení za ostatní řádkové údaje také záznamy, které neobsahují žádný řádek. To umožní uživateli, který nemá žádná privilegia, vidět i doklady, které zadal omylem bez řádků, aby je mohl opravit.
Předvyplnění prvku Rozšířit o doklady bez řádků: V okamžiku, kdy se omezuje za řádkové údaje, prvek Rozšířit o doklady bez řádkůse automaticky předvyplní podle nastavení v parametru Omezení dokladů - rozšířit o doklady bez řádků. Předvyplněné zatržení však uživatel může před provedením dotazu podle potřeby změnit.
Pozor, je třeba si uvědomit následující:
Za řádkové údaje se může omezovat nejen tehdy, pokud uživatel fyzicky zatrhl prvek Řádky, ale i tehdy, pokud jej fyzicky nezatrhl a jedná se o uživatele, u něhož se berou v potaz přístupová práva k chráněným objektům (tj. NEMÁ privilegium Supervisor ani privilegium Obcházet práva k objektům). Mezi řádkovými údaji dokladů se totiž může objevit omezení za nějaký chráněný objekt. (Viz např. středisko.) A jak je objasněno dále, u takového uživatele se za chráněné objekty omezuje i tehdy, pokud nezatrhl odpovídající omezující prvek, a to podle jeho efektivní hodnoty práva Zobrazit příslušné chráněné objekty. To je možno si představit tak, že program JAKOBY fiktivně zatrhne místo uživatele daný prvek - v tomto prvek Řádky plus jemu podřízený prvek odpovídající chráněnému objektu, tj. např. Středisko - a provede omezení za všechna střediska, k nimž má daný uživatel právo Zobrazit. Fyzicky však takové zatržení vidět není, aby se nepletlo se zatržením jiným prvků, které si uživatel opravdu fyzicky zatrhl. A jelikož došlo JAKOBY k zatržení prvku Řádky (i když vidět není), dojde i k předvyplnění prvku Rozšířit o doklady bez řádků podle firemního parametru.
Tedy platí:
- Pokud se jedná o uživatele, který nemá privilegium Supervisor nebo Obcházet práva k objektům a daný uživatel prvek Řádky fyzicky nezatrhne, vezmou se v potaz práva k řádkovým chráněným objektům a zatržení prvku Rozšířit o doklady bez řádků se předvyplní podle firemního parametru. Pak daný uživatel ve výsledném seznamu UVIDÍ doklady bez řádků TEHDY, pokud má v parametru Omezení dokladů - rozšířit o doklady bez řádků nastaveno ANO (tj. předvyplňovat zatržení prvku Rozšířit o doklady bez řádků). Pokud má v parametru hodnotu NE, pak doklady bez řádku NEUVIDÍ.
- Pokud se jedná o uživatele, který má privilegium Supervisor nebo Obcházet práva k objektům a daný uživatel prvek Řádky fyzicky nezatrhne, ve výsledném seznamu doklady bez řádků UVIDÍ VŽDY, bez ohledu na hodnotu parametru. (A to proto, že se v tomto případě za žádná práva k chráněným objektům neomezuje, tedy ani za žádné řádkové údaje. Tudíž nevadí, že daný doklad nemá žádné řádky, protože vždy vyhoví.)
-
Pokud uživatel prvek Řádky fyzicky zatrhne, ať už má nebo nemá privilegium Supervisor nebo Obcházet práva k objektům, pak ve výsledném seznamu UVIDÍ doklady bez řádků JEN TEHDY, má-li také zatržen prvek Rozšířit o doklady bez řádků. Pokud prvek Rozšířit o doklady bez řádků zatržen nemá, pak doklady bez řádků NEUVIDÍ. (V tomto případě je jedno, jaká privilegia uživatel má, protože, je-li prvek fyzicky zatržen, program omezí přesně tak, jak si uživatel fyzicky zadal.)
Jedná se o omezení za interní identifikátory (ID) záznamů agendy. Omezení není běžně k dispozici, je doplňované automaticky programem, např. v případě omezení dle označených záznamů nebo při vyvolání dokladu přes x-vazby. Zobrazuje se pak jako tzv. červené omezení.
Příklad omezení za interní identifikátor. V tomto případě jedno ID konkrétní FV.
Toto omezení není k dispozici k editaci. Pokud jej chcete zrušit, můžete tak učinit pomocí funkce Vyčistit nebo pomocí nového vyvolání funkce Vložit záznamy do omezení a poté Odebrat z existující podmínky. Pokud se však po vyčištění nebo doplnění některých dalších parametrů překlikne na jiné omezení a vrátí se zpět na toto pevné omezení za int. identifikátor, načtou se původní hodnoty.
Jedná se o omezení kombinující některá vybraná z výše uvedených. Např.:
Kombinace omezení za znakové údaje a výčtového s výběrem jedné hodnoty:
Příklad kombinovaného omezení. V tomto případě za Účet (znakově) v agendě Účetní deník, kdy v prvním prvku zadáte účet textově a v druhém specifikujete, na jaké straně účetního deníku se má hledat.
Kombinace omezení za číselníkové údaje a výčtového s výběrem jedné hodnoty:
Příklad kombinovaného omezení. V tomto případě za Účet v agendě Účetní deník, kdy v prvním prvku zadáte konkrétní účty výběrem z číselníku a v druhém specifikujete, na jaké straně účetního deníku se má hledat.
Kombinace omezení výčtového s výběrem více hodnot a výčtového s výběrem jedné hodnoty:
Příklad kombinovaného omezení. V tomto případě za stav čerpání v agendách dokladů účelů výdaje, kdy v prvním prvku zatrhnete možnosti vyčerpání a v druhém specifikujete, s jakou tolerancí se má hledat.
V omezovacích oknech se mohou variantně objevit i další speciální prvky.
Zde uvedeme přehled dostupných příznaků. Většina je uvedena v ostatním textu, nicméně text je obsáhlý, tudíž uvedeme jejich přehled zde:
Příznak Rozlišovat velikost písmen se vyskytuje u textových položek.
Ve většině textových omezovacích podmínek je k dispozici zatržítko Rozlišovat velikost písmen, kde je možnost si uživatelsky zatrhnout, zda se při vyhledávání vyhovujících záznamů má či nemá brát ohled na malá a velká písmena tak, jak jsou zadána v hledaném řetězci:
Příklad omezení za znakové údaje se zatržením, že se má brát ohled na malá/velká písmena v hledaném řetězci.
Je-li hledaným řetězcem Doprav* a je-li zatrženo Rozlišovat velikost písmen, pak jako vyhovující záznamy budou vyhodnoceny např. záznamy začínající textem Dopravce, Dopravující, Doprava apod. Ale záznam začínající textem doprava (s malým písmenem), zadanému omezení nevyhoví.
Kombinace s inverzí výběru:
V tomto případě se vyberou všechny záznamy, které neobsahují řetězec "doprav" zadaný s malými písmeny
Pokud v omezování podle znakových položek není k dispozici zatrhávací položka Rozlišovat velikost písmen, pak v naprosté většině případů platí, že je omezení tzv. case sensitive Je-li nějaká položka case insensitive, znamená to, že není citlivá na velká a malá písmena, neboli nerozlišuje velká a malá písmena. Tzn., že není rozdíl, je-li napsáno např. "Abc" nebo "abc". Opak je case sensitive., tj. rozlišuje velká a malá písmena. Proto je v zadaném řetězci, který se má dohledávat potřeba dodržet velká a malá písmena.
Příznak Inverze výběru je k dispozici u většiny omezovacích prvků, kde může mít smysl. Umožní řešit případy, kdy je třeba vybrat doklady způsobem "všechny kromě...", tedy např. typu "vyber všechny doklady vystavené v jiné než lokální měně".
U číselníkových položek lze toto řešit také výběrem (označením) všech a poté odznačením nepožadovaných. Nicméně to není ideální ovládání.
Uživatel chce vybrat doklady, které nevystavoval sám. Na záložce omezení vybere podmínku Vystavil, z číselníku uživatelů vybere sám sebe a zatrhne Inverzi výběru. Po provedení dotazu se mu ukáží záznamy, které nevytvořil.
Toto omezení ve fakturách vydaných vybere všechny faktury, které nevystavil uživatel Novák
Chování při různých kombinacích inverze při omezování za číselníkové údaje
(Pro jednoduchost nechť není zatrženo Rozšířit o nevyplněné, je-li k dispozici):
Následující popis platí bez ohledu na to, zda je nebo není zatrženo Omezení včetně podřízených.
-
Uživatel nezatrhl vůbec daný omezující prvek a
- nejedná se o číselník chráněných objektů ⇒ Výběr bude obsahovat všechny záznamy bez ohledu na to, jak mají či nemají vyplněnou příslušnou položku (odpovídající omezujícímu prvku), a to včetně hodnot skrytých.
- jedná se o číselník chráněných objektů ⇒ Uplatní se omezení dle přístupových práv. Tj. výběr bude obsahovat jen záznamy, které mají v příslušné položce vyplněnu hodnotu, k níž mají příst. právo, dále viz Omezení versus přístupová práva. Navíc se zde uplatní výjimky, kdy se vždy zobrazují i záznamy s nevyplněnou hodnotou. Viz popis výjimky, jde-li o omezení za hlavičkový údaj. Záznamy se skrytou hodnotou se nezobrazí, viz mazání chráněných objektů do skrytých.
- Uživatel zatrhl prvek, ale nevybral žádnou hodnotu z číselníku, ani nezatrhl checkbox Inverze výběru ⇒ Výběr nebude obsahovat žádný záznam. Žádné výjimky pro nevyplněné hodnoty chráněných objektů se zde už neuplatní.
- Uživatel zatrhl prvek, vybral hodnotu z číselníku (příp. zatrhl Včetně podřízených), ale nezatrhl checkbox Inverze výběru. Výběr bude obsahovat záznamy, které mají v odpovídající položce hodnotu vybranou z číselníku (příp. podřízenou).
-
Uživatel zatrhl prvek, vybral hodnotu z číselníku (příp. zatrhl Včetně podřízených) a zatrhl checkbox Inverze výběru a
- nejedná se o číselník chráněných objektů ⇒ Výběr bude obsahovat záznamy, které mají v odpovídající položce libovolnou z jiných hodnot, a to včetně hodnot skrytých, než byly hodnoty vybrané z číselníku (příp. hodnoty jim podřízené).
- jedná se o číselník chráněných objektů ⇒ Uplatní se navíc omezení dle přístupových práv. Tj. výběr bude obsahovat jen záznamy, které mají v příslušné položce vyplněnu hodnotu, k níž mají příst. právo, dále viz Omezení versus přístupová práva a tato hodnota je jiná, než byly hodnoty vybrané z číselníku (příp. hodnoty jim podřízené). V tomto případě se záznamy se skrytou hodnotou nezobrazí, viz mazání chráněných objektů do skrytých.
-
Uživatel zatrhl prvek, nevybral žádnou hodnotu z číselníku, ale zatrhl checkbox Inverze výběru a
- nejedná se o číselník chráněných objektů ⇒ Výběr se bude provádět za všechny! hodnoty z číselníku.
- jedná se o číselník chráněných objektů ⇒ Výběr se bude provádět za všechny hodnoty z číselníku, k nimž má uživatel příst. právo.
Záznamy vybrané na základě popsaného prvku, ale samozřejmě dále mohou podléhat omezení za další prvky a příst. práva.
Inverze výběru neguje jen vybrané hodnoty, tj. záznamy vybrané příznakem Rozšířit o nevyplněné inverzi nepodléhají. Chování při kombinacích obou příznaků objasníme na příkladu (pro jednoduchost nechráněného číselníku):
Omezujeme doklady podle toho, jak mají v hlavičce zadánu položku Osoba. Zatrhneme prvek Osoba a z číselníku vybereme osobu Novák. Jaké doklady budou vybrány při různých kombinacích zatržení příznaků Inverze výběru a Rozšíření za nevyplněné, ukazuje tabulka:
Osoba na dokladu: | [ ] Inverze výběru | [ ] Inverze výběru | [x] Inverze výběru | [x] Inverze výběru |
---|---|---|---|---|
[ ] Rozšířit o nevypl. | [x] Rozšířit o nevypl. | [ ] Rozšířit o nevypl. | [x] Rozšířit o nevypl. | |
Novák | ano | ano | ne | ne |
Kusá, Jirotka | ne | ne | ano | ano |
nevyplněno | ne | ano | ne | ano |
Možnost Inverze výběrů je k dispozici jen na vybraných místech v programu. Je dostupná i pro definovatelné položky.
Možnost Inverze výběrů lze nastavit i z Otevřeného rozhraní, viz příklad v části Poznámky k použití.
Při použití Inverze výběru může dotaz trvat déle a to v závislosti na objemu dat. (Je to vlastnost databázového serveru). Inverze výběru může být pomalá u číselníků s velkým množstvím záznamů, jelikož se zde provádí výběrem zbývajících číselníkových záznamů, což u velmi rozsáhlých číselníků může znamenat velký výběr.
Příznak Omezení včetně podřízených je k dispozici u číselníkových omezovacích prvků v případě, že se jedná o číselník se stromovou strukturou. Pokud to má v daném místě programu význam, je k dispozici možnost si automaticky omezit i za všechny záznamy podřízené těm, co byly vybrány z číselníku zatržením "Včetně podřízených":
V tomto případě se vyberou všechny záznamy, které v položce Středisko mají středisko "200 Brno" a dále všechny záznamy které tam mají některé ze středisek podřízených středisku 200.
Není-li zatrženo, pak se vyberou jen takové záznamy, které obsahují přímo vybrané číselníkové položky. Ve druhém případě se automaticky vyberou i záznamy, které sice neobsahují vybrané číselníkové položky, ale obsahují číselníkovou položku, která je podřízená některé z vybraných.
Při omezení vč. podřízených se nezahrnou záznamy vystavené s číselníkovými položkami, které jsou aktuálně skryté (viz funkce Skryté). Se skrytými se totiž nakládá obdobně jakoby byly smazané. Zda se záznamy se skrytými číselníkovými položkami zobrazí při inverzi výběrů, je uvedeno v popisu chování při různých kombinacích inverze při omezování za číselníkové údaje.
Možnost Včetně podřízených je k dispozici jen u číselníkových položek s hierarchií a jen na vybraných místech v programu. Možnost Včetně podřízených lze nastavit i z Otevřeného rozhraní.
U omezujících prvků za číselníkovou položku mohou být k dispozici také další zatržítka. Např. v agendě skladových karet Pouze za výchozí (jeho význam viz popis funkce Filtrovat). Nicméně ty se v záložkách Omezení nevyskytují a jejich popis je tedy uveden v patřičné sekci.
U obchodních případů, projektů a zakázek platí, že je lze uzavírat (pak se nenabízí pro další použití). Pokud byste chtěli, aby ve výpisu byly zahrnuty i záznamy vystavené na podřízené obch. případy/projekty/zakázky, které ale již nejsou pro vás aktuální a nechcete, aby se používaly, pak je neskrývejte, ale pouze je Uzavřete (viz popis funkce Uzavřít v záložce Seznam obchodních případů, resp. zakázek či projektů). Se skrytými se totiž nakládá obdobně jakoby byly smazané.
Příznak Rozšířit o nevyplněné je k dispozici u některých číselníkových omezovacích prvků v případě, že není povinné vyplňovat (např. zakázky, obchodní případy, projekty, způsoby úhrady apod.). Aby bylo možné dohledat i záznamy s takto nevyplněnými položkami, je u omezení za číselníkové údaje možno zatrhnout Rozšířit o nevyplněné. Je-li tato volba zatržena, pak se do výsledného výběru záznamů (získaného podle všech předchozích podmínek pro omezení za daný číselníkový prvek) přidají i záznamy, které mají danou položku nevyplněnou. Nepodléhá inverzi výběru, tj. výběr provedený ať už s inverzí nebo bez ní jen rozšíří o nevyplněné. Objasníme na příkladech:
Příklad použití:
Příklad 1: Uživatel má nastaveno nepovinné vyplnění zakázek, což po čase přestane vyhovovat. Potřebuje najít pouze doklady bez vyplněné zakázky, aby je mohl opravit. Na záložce Omezení si zatrhne podmínku za Zakázky, nevybere z číselníku žádnou zakázku, pouze u podmínky použije možnost rozšíření výběru o nevyplněné.
Toto omezení ve fakturách vydaných vybere všechny faktury, které mají alespoň jeden řádek, na němž je nevyplněná zakázka.
Příklad 2: Ve firmě platí, že v případě, že je zboží odebíráno osobně, se položka Způsob úhrady nevyplňuje. Od určité doby se začne vyplňovat Osobně. Uživatel chce najít dodací listy, na které bylo odebráno zboží osobně. Na záložce Omezení si zaškrtne podmínku Způsob dopravy, z číselníku vybere způsob Osobně a u podmínky zatrhne Rozšířit výběr o nevyplněné:
Toto omezení v Dodacích listech vybere všechny dodací listy, kde byl zadán Osobní odběr, a dále dodací listy, kde nebyl způsob dopravy zadán vůbec.
Pokud by navíc uživatel zatrhl Inverzi výběru, pak by získal dodací listy, kde byl zadán libovolný jiný způsob dopravy než Osobní odběr, a k tomu opět faktury, kde nebyl způsob dopravy zadán vůbec.
Příklad 3: Ve firmě bylo rozhodnuto, že vybraným klientům budou poskytovány individuální ceny. Tedy tyto firmy by měly mít přiřazen individuální ceník z číselníku ceníků. Pokud si chceme zkontrolovat, které firmy dosud ceník přiřazen nemají, můžeme v Adresáři firem použít např. funkci Filtrovat rozšířeně a to za položku Ceník bez výběru konkrétních ceníku, ale se zatržením Rozšířit o nevyplněné.
Chování při různých kombinacích omezování za číselníkové údaje, které mohou být nevyplněné (pro jednoduchost nechť není zatržena Inverze výběru, je-li k dispozici):
-
Uživatel nezatrhl vůbec daný omezující prvek a
- nejedná se o číselník chráněných objektů ⇒ Výběr bude obsahovat všechny záznamy bez ohledu na to, jak mají či nemají vyplněnou příslušnou položku (odpovídající omezujícímu prvku).
- jedná se o číselník chráněných objektů ⇒ Uplatní se omezení dle přístupových práv. Tj. výběr bude obsahovat jen záznamy, které mají v příslušné položce vyplněnu hodnotu, k níž mají příst. právo, dále viz Omezení versus přístupová práva. Navíc se zde uplatní výjimky, kdy se vždy zobrazují i záznamy s nevyplněnou hodnotou. Viz popis výjimky, jde-li o omezení za hlavičkový údaj.
- Uživatel zatrhl prvek, ale nevybral žádnou hodnotu z číselníku, ani nezatrhl checkbox Rozšířit o nevyplněné ⇒ Výběr nebude obsahovat žádný záznam. Žádné výjimky u chráněných objektů se zde už neuplatní.
- Uživatel zatrhl prvek, vybral hodnotu z číselníku (příp. zatrhl Včetně podřízených), ale nezatrhl checkbox Rozšířit o nevyplněné. Výběr bude obsahovat záznamy, které mají v odpovídající položce hodnotu vybranou z číselníku (příp. podřízenou).
- Uživatel zatrhl prvek, vybral hodnotu z číselníku (příp. zatrhl Včetně podřízených) a zatrhl checkbox Rozšířit o nevyplněné ⇒ Výběr bude obsahovat jak záznamy, které mají v odpovídající položce hodnotu vybranou z číselníku (příp. podřízenou), tak záznamy, které ji mají nevyplněnou.
-
Uživatel zatrhl prvek, nevybral žádnou hodnotu z číselníku, ale zatrhl checkbox Rozšířit o nevyplněné ⇒ Výběr bude obsahovat jen záznamy, které mají odpovídající položku nevyplněnou.
Záznamy vybrané na základě popsaného prvku, ale samozřejmě dále mohou podléhat omezení za další prvky a příst. práva.
Možnost Rozšířit o nevyplněné může být k dispozici i pro uživatelsky definované položky definované jako číselníkové s odkazem do číselníku.
Pokud se navíc jedná o číselník chráněných objektů, pak platí pravidla uvedená výše (Chování při různých kombinacích omezování za číselníkové údaje, které mohou být nevyplněné). Zda se v takovém případě bude k dané položce přistupovat jako k položce z nechráněného číselníku či standardně jako k chráněné včetně případné výjimky zobrazování všech záznamů s nevyplněnou hodnotou, lze stanovit zadáním příslušného parametru při definici takové definovatelné položky.
Možnost Rozšířit o nevyplněné je k dispozici jen u číselníkových položek a jen na vybraných místech v programu. U většiny ostatních typů položek se řeší jinak (např. viz omezení za nevyplněné datum, omezení za nevyplněnou znakovou položku) nebo u nich není vůbec potřeba (nelze je nevyplnit).
Možnost Rozšířit o nevyplněné lze nastavit i z Otevřeného rozhraní.
Při rozšíření výběru o nevyplněné může dotaz trvat déle a to v závislosti na objemu dat. (Je to vlastnost databázového serveru, kdy musí projít všechny záznamy a hledat nevyplněnou položku, na rozdíl od hledání ve vyplněných, kdy může využít např. indexů apod.).
Příznak Dotázat se na hodnotu je k dispozici téměř u všech omezovacích prvků, kde může mít smysl si omezovací prvek vybrat pro budoucí omezení, tj. uložit si jej do nějaké definice omezení, ale nezadávat do něj hodnotu a zadat ji až tzv. ad-hoc při použití daného omezení. Na všechny omezovací prvky s tímto příznakem se v okamžiku provedení dotazu systém dotáže v jednom společném dialogovém (modálním) okně a zadané hodnoty doplní do omezovacích prvků v omezení pro výsledný dotaz.
Omezovací prvek při tomto zatržení tedy nemusí, ale může mít zadánu hodnotu; pokud ji zadánu má, použije se tato jako výchozí pro předvyplnění v následném dialogu pro Zadání hodnot. Uživatel může předvyplněnou hodnotu ponechat nebo přepsat na jinou. Zadané hodnoty v potvrzeném dialogu se zapamatují a při případném zopakování dotazu jsou znovu předvyplněny a to až do doby, než je agenda zavřena nebo je zvoleno jiné omezení.
Tento příznak má význam kombinovat s příznakem Nepoužít nevyplněné (samozřejmě platí jen pro prvky, kde příznak Nepoužít nevyplněné podporován). Pak si můžete často používané prvky zatrhnout a uložit do definice omezení, aniž by vadilo, že některý z nich třeba nakonec v okamžiku použití definice nebudete chtít použít a hodnotu nezadáte.
Příklad s vybranými omezovacími prvky, u nichž byl zatržen parametr Dotázat se na hodnotu...
...a následně vyvolaným modálním oknem, ve kterém je možné patřičné hodnoty zadat.
Příznak dotazování je možný u všech omezovacích prvků typu:
- Celé číslo
- Reálné číslo
- Textový řetězec
- Datum
- Odkaz do číselníku
U číselných omezovacích prvků, které zpravidla dovolují zadat rozmezí hodnot od-do, lze v dialogu zadat buď jednu hodnotu (ta se vyplní do obou polí od i do) nebo dvě hodnoty od a do. V dialogu lze přepínání zadání jedné nebo dvou hodnot docílit stiskem malého tlačítka obsahujícího popisek buď "1" pro přepnutí na zadání jedné hodnoty (tedy např. jedno číslo dokladu) nebo "2" pro zadání dvou hodnot (tedy např. čísla dokladu od-do). Omezovací prvky celočíselné mají jako výchozí zadání jedné hodnoty (např. číslo dokladu), omezovací prvky s reálným číslem mají jako výchozí zadání dvou hodnot (např. částka dokladu, zaplaceno apod.).
Je možné se dotazovat pouze na konkrétní hodnotu; v dialogu se nenabízí další parametry omezovacího prvku jako např. negace, podřízené apod.
V dialogu se dále může u jednotlivých podmínek zobrazit ikona . Zobrazuje se u podmínek, které mají zatrženy nějaké z dostupných příznaků - vlastností (např. Nepoužít nevyplněné, Inverze výběru apod.). Aktuálně zatržené příznaky u dané podmínky se zobrazí po najetí myši na ikonu u dané podmínky.
Věnujte pozornost této informaci hlavně v případě podmínek, kde při omezení nevyplníte hodnotu. Viz též popis příznaku Nepoužít nevyplněné.
Příznak Nepoužít nevyplněné je k dispozici u znakových a u číselníkových omezovacích prvků.
Jde o to, že pokud je podmínka zatržena, ale není do ní zadána ŽÁDNÁ hodnota, tak se může stát, že agenda nebude vypisovat nic (protože nezadaná hodnota je interpretována jako prázdná hodnota a takové podmínce nebude vyhovovat ŽÁDNÝ záznam). Samozřejmě není smysluplné zatrhávat podmínku a nezadat do ní omezovací hodnotu, nicméně u podmínek zatržených předem (např. právě těch se zatržením Dotázat se na hodnotu) to naopak může být žádoucí. Pro takové případy pak je možné si zmíněné zatržítko zatrhnout
Příklad:
Příznak Rozšířená syntaxe se vyskytuje jen u některých textových položek.
K dispozici může být možnost si uživatelsky zatrhnout, zda při vyhledávání vyhovujících záznamů bude možno zadat hledaný text v rozšířené syntaxi:
Příklad omezení v agendě Objednávky vydané. V rámci prvku Schvalování je možnost omezení za text Poznámky, kde lze zatrhnout, že lze zadat rozšířenou syntaxi
Pokud je tato možnost zatržena, pak se podmínka zadaná uživatelem rozdělí na jednotlivé výrazy a každý výraz zvlášť je vložen do WHERE fragmentu této podmínky (na místo parametru {:VALUE}), a jednotlivé takto získané části jsou spojeny operátory, které uživatel použil mezi výrazy (viz níže).
Tato možnost je k dispozici jen, jsou-li v DynSQL v sekci speciální parametry odpovídající parametry.
Defaultně tato možnost hledání u znakových položek dodávána není. Je pouze k dispozici na některých položkách v záložkách Omezení (resp. filtru a funkce hromadného označování) např. následujících agend:
- Definice automatických vzkazů
- Doručené e-maily
- E-mailové účty (zde pouze ve funkci filtru a hromadného označování)
- Kontrolní body (zde pouze ve funkci filtru a hromadného označování)
- Objednávky vydané
- Odeslané e-maily
- Schvalovací scénáře
- Schvalování dokladů
- Účty odchozího serveru SMTP
- Vývojová dokumentace
- Vývojové požadavky
- Vzkazy (zde pouze ve funkci hromadného označování)
- Wiki stránky
V záložce Omezení agend Požadavky, Projektové dokumentace, Odeslané e-maily a Doručené e-maily, je použito omezení za Slova v popisech a tudíž hledání probíhá po jednotlivých slovech (v databázi jsou uložena pouze tří a víceznaková slova). Platí pro něj tedy trochu odlišná pravidla pro možnosti hledání, než jaká jsou popsána v následujícím textu.
Příklad omezení za slova v popisech se zatržením, že lze zadat rozšířenou syntaxi
Rozšířená syntaxe má větší možnosti při hledání více slov najednou. Při hledání jednoho slova (nebo jeho části) stačí nerozšířená syntaxe. Rozšířená syntaxe nabízí navíc v zásadě pouze možnost negování daného slova. Viz dále.
Je-li Rozšířená syntaxe nezatržená, pak se hledá zadaný řetězec přesně tak, jak je zapsán.
Je-li Rozšířená syntaxe zatržená, pak lze hledaný řetězec zapsat ve speciální syntaxi, která umožňuje slučovat podmínky za více slov nebo slovních spojení, podmiňovat je logickými operátory AND, OR a NOT a tím specifikovat, zda podmínky mají platit současně či naopak. V takové podmínce lze použít následující operátory (v závorce jiné varianty stejného operátoru):
- AND (&&, a nebo bílé znaky - mezery, tabulátory, CRLF)
- OR (|,||)
- NOT
- kulaté závorky
- + (připojí bezprostředně následující slovo pomocí AND konstrukce)
- - (připojí bezprostředně následující slovo pomocí AND NOT konstrukce)
Mezera mezi slovy je tedy identická s operátorem AND.
Příklad 1:
- Pokud chcete vybrat záznamy, jejichž text obsahuje slovo "doprava" a současně slovo "nákladní", je třeba zadat omezení "*doprava* *nákladní*".
- Pokud chcete vybrat záznamy, jejichž text obsahuje slovo "osobní" nebo slovo "nákladní", je třeba zadat omezení "*osobní* OR *nákladní*".
- Pokud chcete vybrat záznamy, jejichž text obsahuje slovo "doprava" a současně neobsahuje slovo "nákladní", je třeba zadat omezení "*doprava* AND NOT *nákladní*".
- Pokud chcete vybrat záznamy, jejichž text obsahuje slovo "doprava" a současně obsahuje slovo "nákladní" nebo "osobní", je třeba zadat omezení "*doprava* (*nákladní* OR *osobní*)".
Příklad 2: Mějme záznam 1 obsahující text "Cena za dopravu" a záznam 2 obsahující text "Platba cesty". Je-li zadáno:
- doprav* platba* a zatrženo Rozšířená syntaxe ⇒ nevybere se ani jeden (ani jeden nezačíná současně na doprav a platba)
- doprav* platba a zatrženo Rozšířená syntaxe ⇒ nevybere se ani jeden (ani jeden nezačíná na doprav a současně se nerovná platba)
- *cena* *doprav* ⇒ vybere se jen první
- *cena* OR platba* ⇒ vyberou se oba
- Platba ⇒ ani jeden
- Platba cesty ⇒ vybere se druhý
Rozdíl mezi zatrženou rozšířenou a nerozšířenou syntaxí lze pozorovat při hledání za více slov (či jejich částí) najednou. Objasníme na souhrnném příkladu v agendě Odeslané e-maily. Příklad je hypotetický a má pouze demonstrovat rozdíl v principu hledání.
Příznak Zadávat i čas se vyskytuje jen u některých datumových položek.
Příklad v agendách dokladů, kde se sleduje, jaký uživatel doklad opravil a datum a čas opravy
Příznak Rozšířit o doklady bez řádků se vyskytuje u některých omezovacích prvků typu Řádky. Je popsán v sekci Omezení za řádkové údaje.
Zatržítko Rozšířit o doklady bez řádků se zobrazuje, stojí-li fokus na prvku Řádky.
Příznak Použít aktivního uživatele se vyskytuje u omezovacích prvků, které pracují s výběrem uživatelů, např. položky Opravil, Vytvořil, Schválil. Pokud je zatržení aktivní, pak se záznamy v číselníku automaticky omezí za aktuálně přihlášeného uživatele.
Pokud je tento příznak zatržen, pak je možné zatrhnout jako další pouze příznak Inverze výběru. Ostatní příznaky jsou neaktivní.
Zatržítko Použít aktivního uživatele omezuje vyhledávání za aktuálně přihlášeného uživatele.
V plném režimu a pro nové (zatím neuložené) omezení v jednoduchém režimu je v pravé čísti záložky omezení k dispozici seznam prvků pro omezování.
Pro práci se seznamem jsou k dispozici následující možnosti:
Lze si zobrazit jen některé podmínky (omezující prvky), např. jen aktuálně zatržené. Více viz Volba zobrazení podmínek omezení.
Podmínky (omezující prvky) si lze zafiltrovat podle názvu. Více viz Filtrační panel omezujících prvků.
Lze měnit pořadí podmínek (omezujících prvků), nepotřebné podmínky skrývat či hromadně vyčistit. Více viz Lišta navigátoru omezujících prvků.
- Prvky, dle kterých chcete omezovat, musí být zatrženy.
-
Není-li prvek zatržen, pak se na něj nebere ohled, tj. provede se výběr záznamů z databáze bez ohledu na tento prvek.
V tomto případě se vyberou doklady bez ohledu na to, v jakém byly vystaveny období, jaké mají pořadové číslo a datum vystavení.
- Je-li prvek zatržen a současně je aktuální, zpřístupní se položky pro zadání hodnot omezení tohoto prvku (není-li aktuální, nejsou položky pro zadání hodnot omezení daného prvku na formuláři viditelné (kvůli úspoře místa na formuláři)):
V tomto případě je zadáno omezení za Období a právě se zadává omezení za pořadová čísla dokladů. ABRA vzhled.
-
Je-li prvek zatržen, vypisuje se vpravo vedle něj informace o nastavených hodnotách omezení tohoto prvku
V tomto případě se vyberou jen doklady vystavené v období 2009.
Je-li prvek zatržen, ale nejsou vybrány žádné hodnoty k omezení, ani není zatržena Inverze výběru a ani se nejedná o případ omezení za nevyplněné hodnoty, pak nejsou vybrány žádné záznamy! Jelikož žádný záznam nesplňuje takto zadanou podmínku, tj. za danou položku se omezuje, ale žádný záznam nemá v dané položce takovou (neuvedenou) hodnotu.
-
Skupiny vnořených omezujících údajů - Prvky pro omezení mohou být i zanořené pod jiný prvek - typicky se jedná o omezení za řádkové údaje, ale může jít i o jiné případy. Omezovací prvky, pod které jsou zanořeny další prvky, jsou v některých případech od ostatních graficky odlišeny (např. u omezení za řádky dokladů, je prvek Řádky podbarven):
Prvek Řádky je graficky zvýrazněn barevně, což indikuje, že má pod sebou vnořené další omezovací prvky. Je-li nezatržen, pak pod ním vnořené omezovací prvky nejsou zobrazovány. ABRA vzhled modrý.
Je-li takový prvek zatržen, zobrazí se i pod ním vnořené omezovací prvky:
Příklad části seznamu omezovacích prvků se zadaným omezením za některé řádkové údaje
Jsou-li všechna vnořená omezení odtržena, odtrhne se automaticky i jejich zastřešující prvek, např. pokud bychom v omezení za řádkové údaje v obrázku výše odtrhli omezení za Typ řádku i Středisko tak, že žádný omezovací řádkový prvek nezůstane zatržen, odtrhne se automaticky i prvek Řádky.
Obdobná možnost může být k dispozici i v agendách, kde nejde vyloženě o řádky dokladů, ale kde k záznamu patří sada nějakých podřízených záznamů, které se k němu váží. Viz např. funkce Filtrovat v adresáři firem za kategorizační údaje. (Sice nejde o záložku Omezení, nicméně chování a ovládání je obdobné, jako u záložky Omezení).
-
Pokud omezovací prvek ovlivňuje možné hodnoty jiného omezovacího prvku a jeho hodnota je dodatečně změněna, pak se odtrhne automaticky i omezení za závislý prvek, aby nedošlo k nesmyslné kombinaci, a je třeba ho případně zatrhnout a vybrat hodnoty znovu. Objasníme na příkladu:
U omezení v deníku je mj. k dispozici omezení za "Typ dokladu" a "Řadu dokladu", přičemž Typ dokladu ovlivňuje prvek Řady dokladů: nabízí se jen řady k těm typům dokladů, které jsou vybrány v prvku Typ dokladu. Zatrhneme Typ dokladu a vybereme typ Faktury vydané, pak zatrhneme řady dokladů a vybereme nějaké z nabízených řad faktur, např. řadu FV. Pak se vrátíme na prvek Typ dokladu a vybraný typ změníme, např. na faktury přijaté. Po odchodu kurzoru z prvku Typ dokladu se zruší zatržení omezení za Řady dokladů, jelikož kombinace omezení za typ Faktury přijaté a řadu FV není smysluplná.
V některých místech programu se mohou vyskytovat omezovací prvky, které jsou defaultně zatrženy a toto zatržení nelze zrušit. Je to tehdy, kdy prvek je takového charakteru, že do omezení bude zahrnut vždy, tedy má význam omezovat vždy podle nějaké z jeho hodnot, ale nemá význam omezovat bez ohledu na tento prvek. V některých případech není možno ani vybírat hodnoty takto defaultně zatrženého prvku a je předvybrána hodnota, která je v danou chvíli smysluplná. Objasníme na příkladu:
Mějme agendu účetních reportů, kde je k dispozici mj. i prvek "Započítat i žádosti":
Příklad defaultně zatrženého prvku "Započítat i žádosti".
Tento prvek je defaultně zatržen, nelze jej odtrhnout, prvek je neaktivní, nedostupný (disable), což je graficky zvýrazněno světlejší barvou (příp. šedou barvou v závislosti na verzi a aktuálním vzhledu systému) - porovnejte s barvou předchozího prvku Audit, který je zatržen uživatelem a lze odtrhnout. Zde uživatel může zvolit hodnotu Ano nebo Ne. Tzn., že do výsledného reportu účetní žádosti buď budou započítány (Ano) nebo nebudou započítány (Ne). Report za data omezená bez ohledu na tento omezovací prvek nemá pochopitelně smysl.
Pozor! V některých místech takové defaultně zatržené omezovací prvky nemusí mít předvolenu ŽÁDNOU hodnotu. Pak je nutné do nich smysluplnou hodnotu zadat, jinak se může stát, že agenda nebude vypisovat nic (protože nezadané povinné podmínce nebude vyhovovat ŽÁDNÝ záznam). Příklad:
V agendě saldokonta jsou mj. následující prvky:
Příklad defaultně zatržených prvků bez výchozí zadané hodnoty (Žádné vybrané, Žádné zadané). Pokud omezení za Účet a Datum účtování nezadáte, agenda nevypíše nic, protože bez tohoto omezení nemá význam.
Po seznamu omezovacích prvků se můžete pohybovat:
-
Klávesnicí kurzorovými šipkami a klávesovými zkratkami:
- po jednom záznamu, resp. sloupci (kurzorovými šipkami nahoru, dolů, vlevo a vpravo a Ctrl+šipky)
- po stránkách (klávesy PgUpa PgDn)
- skok na začátek a konec seznamu (klávesy homea end)
-
Myší
Často používané kombinace omezení a třídění si lze v Plném režimu uložit pro následné použití jako definici omezení.
Možnosti vytvoření nové definice omezení:
- podle aktuálního stavu omezujících prvků - Postupně zatrhněte všechny položky, podle kterých se má omezovat, a pro každou z nich (podle jejího typu) nastavte příslušnou hodnotu či rozsah hodnot, kterých má nabývat (podrobněji viz Seznam prvků pro omezování a ovládání). Dále nastavte požadované třídění. Hotové nastavení můžete uložit funkcí Uložit jako jako definici omezení. Uloženou definici omezení lze kdykoliv později opravit (tj. vybrat již nadefinovanou definici, opravit nastavení a opravené nastavení omezení uložit funkcí Uložit pod stejným jménem) příp. smazat.
- podle vybraných (označených) záznamů - viz Vložit záznamy do omezení/Odstranit záznamy z omezení (Vytvoření omezení dle označených) - Moje oblíbené záznamy
Existující uloženou definici lze poté kdykoliv opravit (v plném režimu). Tj. upravit podmínky výběru, třídění atd. a poté uložit buď pod týmž jménem nebo příp. jako další novou definici pod novým jménem.
Možnost vytvářet resp. upravovat definice omezení může být omezena přístupovými právy, která jsou umístěna v sekci: Práva k funkcím → Společná nastavení → Obecné
K dispozici jsou funkce pro práci se záznamy a pro urychlení zadávání nových dokladů a dále funkce pro práci s definicemi omezení:
Funkce pro získání záznamů a pro urychlení zadávání nových dokladů: | ||
---|---|---|
Název | Kl. | Popis: |
Získat záznamy |
enter(*) nebo F11 |
Podle zvolené definice omezení nebo vybraných omezovacích prvků provede SQL dotaz do databáze, zaktivuje záložku Seznam, kde budou zobrazeny doklady splňující nastavená omezení. Obecně platí, že čím více je seznam dokladů omezen, tím rychleji se dotaz provede. Kromě omezení nastaveného v této záložce se vezmou v potaz i případná omezení podle přístupových práv, viz Omezení versus Přístupová práva. |
Nový záznam |
F2 nebo shift+F2 |
Jedná se o vyvolání standardní funkce Nový příp. Nový s nabídkovým menu podfunkcí rovnou ze záložky Omezení (tedy bez nutnosti přepínat na záložku Seznam resp. Detail) pro přidání nového záznamu v jednotlivých agendách dokladů, popis funkce viz záložka Seznam jednotlivých agend. Jak bylo uvedeno v kap. Často kladené otázky, pokud chcete pouze zadat nový doklad, nemusíte provádět žádný dotaz v otevřené dokladové agendě ani nemusíte mít definováno výchozí omezení, stačí agendu otevřít a rovnou stisknout F2. |
Detail | F3 | Jedná se o standardní funkci Detail pro přepnutí do záložky Detail, která je standardně dostupná z jednotlivých záložek dokladových agend. Ze záložky Omezení je tato funkce k dispozici pouze přes klávesovou zkratku, ikonu nebo z menu. |
Funkce pro práci s definicemi omezení - jednoduchý i plný režim | ||
Skrýt/Odkrýt | shift+F3 |
Z omezení, které jsou pro daného uživatele viditelná, si může uživatel libovolná omezení, která nechce používat, skrýt (pamatuje se individuálně na uživatele). Oblíbená omezení není možné skrýt. Skryté omezení buď není vidět nebo je indikováno ikonou šedého křížku, což záleží na stavu přepínače zobrazení nad seznamem. Popisek tlačítka se mění dle toho, zda kurzor stojí na skrytém omezení či nikoliv. Funkce je neaktivní u omezení, které je nastaveno jako výchozí a u tzv. Červeného omezení. |
Oblíbená/Neoblíbená | shift+F5 |
Jedná se o způsob, jak definici omezení zařadit mezi oblíbená omezení nebo jej z nich vyřadit. Popisek tlačítka se mění podle toho, zda kurzor stojí na oblíbeném omezení či nikoliv. Předpokládané použití je takové, že si z celkové nabídky vytvořených omezení uživatel přesune ta omezení, která nejčastěji používá, do sekce "Moje oblíbená omezení". Pro přepínání mezi prvními devíti oblíbenými omezeními jsou následně dostupné klávesové zkratky ctrl+1 ... ctrl+9, přičemž 1 odpovídá prvnímu oblíbenému omezení, 2 druhému atd. Příklad několika oblíbených omezení v agendě Faktury vydané. Funkce je neaktivní u tzv. Červeného omezení. |
Výchozí | ctrl+enter |
Vyvolá dialogové okno, ve kterém lze definici označit jako "výchozí". Tj. nadefinovat si tzv. výchozí omezení. Je-li nějaká definice nastavena jako výchozí, pak při otevření agendy do záložky Omezení, použije program tuto definici jako implicitní nastavení omezení, rovnou podle ní provede dotaz funkcí Získat záznamy (viz výše) a zaktivuje záložku Seznam. Tj. lze tak přeskočit záložku Omezení a mít agendu rovnou otevřenou v záložce Seznam se záznamy, které vyhovují podmínkám daným ve výchozím omezení. Která záložka však nakonec bude výchozí, závisí také na nastaveném způsobu použití záložky Začínáme. Dále viz Pravidla pro zobrazování záložky Začínáme a stanovení výchozí záložky. Pokud bude nastaveno, že žádná definice omezení nebude označena jako výchozí, pak se poslední použité omezení pamatuje na uživatele pro příští otevření agendy. V takovém případě se ale agenda otevře jen do záložky Omezení (nevykoná se dotaz). Uživatel si může vybrat, zda omezení použije, a nebo zda vybere jiné. Funkce je neaktivní u omezení, které je nastaveno jako skryté a u tzv. Červeného omezení. Výchozí omezení se neuplatní, pokud během spouštění agendy, která má definované nějaké výchozí omezení, je zapnuta klávesa <Scroll Lock>. Čili pokud potřebujete např. rychle spustit agendu, v níž máte výchozí omezení, ale víte, že budete potřebovat jiné, zapněte si při spouštění agendy klávesu Scroll Lock. Výchozí omezení se neuplatní, pokud obsahuje chybu. Tj. např. obsahuje omezení za výraz, ale výraz je chybně zapsaný a tudíž nelze sestavit správně DynSQL dotaz. V takovém případě systém oznámí, že výchozí omezení je chybné a agenda se otevře bez uplatnění tohoto výchozího omezení. Uživatel by poté měl dotyčné omezení opravit. Výchozí omezení se rovněž neuplatní, pokud je agenda spouštěna přes některého ze speciálních zástupců pro otevření agendy v požadovaném tvaru a tito potlačují výchozí omezení. Význam a typy těchto zástupců viz popis funkce Vytvořit zástupce. |
Více/Méně funkcí | shift+F12 |
Jedná se o funkční tlačítko s volbou, kde můžete zvolit jednu z možností vytváření kopií dokladů dostupných v této agendě: Jednotlivé možnosti se liší tím, Více/Méně funcí
Tato funkce přepíná mezi jednoduchým režimem zobrazení a plným režimem. Pro přepnutí do plného režimu však musí mít uživatel v nastavení práv odtržené právo Na záložce Omezení dovolit pouze jednoduchý režim (Méně funkcí). Funkcionalita (a popis) tlačítka se mění v závislosti na tom, který režim je aktuálně zobrazen:
Nastavit více/méně funkcí vždy po spuštění (pro všechny agendy)
Jako výchozí je po spuštění agendy zobrazen jednoduchý režim. Tímto způsobem lze nastavit, aby se agendy spouštěly ve výchozím stavu v Plném režimu. Funkcionalita (a popis) tlačítka se mění v závislosti na tom, který režim je aktuálně zobrazen po spuštění agendy:
Funkce dovolující plný režim definice (více funkcí) lze uživateli zablokovat pomocí nového přístupového práva "Na záložce Omezení zakázat Plný režim definic omezení" (v sekci Společná nastavení / Obecné). |
Funkce pro práci s definicemi omezení - pouze plný režim | ||
Sdílení | shift+F6 |
Vyvolá dialog, kterým lze nastavit, komu bude omezení zpřístupněno. Tato funkce je chráněna právem Vytvářet a rušit globální a sdílené definice omezení. Dialog obsahuje přepínač s volbami:
Výchozí dialogové okno s výběrem základních typů sdílení. V případě zatržení druhé volby Sdílená se zpřístupní editovatelný seznam s možností zadání výčtu uživatelů a/nebo rolí a/nebo skupin rolí, které budou mít dané omezení dostupné. Pod editovatelným seznamem je k dispozici lišta navigátoru: Navigátor v této subzáložce Navigátor v této záložce obsahuje tlačítka:
Pod lištou navigátoru jsou k dispozici dále následující volby:
Příklad dialogového okna s nastavením sdílení pro uživatele a skupinu rolí. Funkce je neaktivní u tzv. Červeného omezení. User_ID - S nastavením sdílení souvisí i plnění interní položky User_ID na dané definici. Tato položka se plní následovně:
Za tuto položku lze pak definice omezovat (viz omezení za prvek Uživatel v agendě Přehled omezení, příp. funkce Omezení v agendě Uživatelé). Využije typicky správce systému, pokud chce uživatel odejde a správce chce vyčistit po něm vyčistit definice omezení. |
Nová | ctrl+N |
Pomocná funkce na tvorbu nové definice. Přesune fokus vlevo ve stromu na záznam "Bez jména (neuložené)", u něhož se vždy zobrazují všechny podmínky pro omezování, a případná zaškrtnutí vyčistí. Tj. připraví uživateli výchozí stav pro tvorbu nové definice omezení od nuly. Vytvořit novou definici lze i jinak - a to funkcí Uložit jako. |
Uložit | ctrl+S |
Uloží případné změny v aktuální definici. Tj. aktuální stav podmínek uloží do aktuální definice, na níž právě stojí kurzor. Některou existující definici tak lze poupravit (např. zatrhnout podmínky jinak) a tuto úpravu uložit (tj. přepsat definici stávající). Po vyvolání funkce se nabídne dialog pro uložení definice omezení: Vlastnosti ukládané definice Význam:
Funkce je neaktivní u tzv. Červeného omezení. |
Uložit jako | shift+ctrl+S |
Jedná se o jednu z možností vytvoření definice omezení. Po vyvolání funkce se nabídne dialog pro uložení definice omezení. Funkčnost tlačítek je stejná jako u funkce Uložit, avšak v tomto případě dojde k uložení aktuálního omezení, na kterém je kurzor, jako nového omezení. V zásadě se jedná o kopírování definice omezení. Při ukládání definice jako nové je sdílení vždy ve výchozím stavu nastaveno na Jen pro vás. Pokud by existovala v seznamu definic definice se stejným názvem, systém na toto upozorní, ale definic dovolí uložit. Touto funkcí si z nějaké existující podobné definice můžete rychle vytvořit svou vlastní (tj. jakoby vytvořit upravenou kopii definice): Tj. vyberete existující definici, poupravíte v ní podmínky omezení, jak potřebujete, a tento aktuální stav si uložíte jako další novou definici (tj. původní definice zůstane beze změny zachována). |
Zruš změny | shift+F8 |
Zruší všechny změny v zatržení podmínek, které byly provedeny v dané definici (je označena červenou tečkou), tj. zatržení podmínek vrátí do stavu, jaký je uložen v dané definici. Funkce je dostupná jen u definice, u níž uživatel provedl v podmínkách omezení změny, ale tyto změny zatím neuložil. Funkci využijete, pokud vaše změny byly jen dočasné a ukládat je nechcete, naopak se chcete vrátit k poslednímu uloženému stavu (načíst poslední uložený stav). Funkce je neaktivní u tzv. Červeného omezení. |
Smazat | F8 |
Vymaže nevratně aktuálně vybranou definici ze seznamu definic. Funkce je neaktivní u tzv. Červeného omezení. Smazány budou také statistiky použití daného omezení. Pokud jste smazali některou z existujících výchozích definic, je možné ji doplnit zpět funkcí Vložit tovární definice omezení. |
Exportovat | shift+F10 |
Funkce dovolující export definice do souboru s příponou *.ARS. Pro přístup k této funkci je třeba mít přidělené právo Na záložce Omezení dovolit export a import definic. Funkce je neaktivní u tzv. Červeného omezení. |
Importovat | shift+F11 |
Funkce dovolující import definice ze souboru s příponou *.ARS. Pro přístup k této funkci je třeba mít přidělené právo Na záložce Omezení dovolit export a import definic. Importovaná definice musí pocházet ze stejného místa programu (agendy, číselníku). Pokud v importním souboru je nadefinována nějaká definice sloupců, musí tato definice sloupců, aby se také naimportovala, existovat i u uživatele, k němuž se definice omezení importuje. Funkce je neaktivní u tzv. Červeného omezení. |
(*) Není-li fokus na jiném funkčním tlačítku
Kromě uvedených funkcí jsou ze záložky Omezení pro urychlení zadávání nových dokladů k dispozici i následující funkce
Název | Kl. | Popis: |
---|---|---|
Nový | F2 |
Jedná se o standardní funkci Nový pro přidání nového záznamu v jednotlivých agendách dokladů, viz popis funkce viz záložka Seznam jednotlivých agend. Ze záložky Omezení je tato funkce k dispozici pouze přes klávesovou zkratku nebo z menu. Jak bylo uvedeno v kap. Často kladené otázky, pokud chcete pouze zadat nový doklad, nemusíte provádět žádný dotaz v otevřené dokladové agendě ani nemusíte mít definováno výchozí omezení, stačí agendu otevřít a rovnou stisknout F2. |
Detail | F3 | Jedná se o standardní funkci Detail pro přepnutí do záložky Detail, která je standardně dostupná z jednotlivých záložek dokladových agend. Ze záložky Omezení je tato funkce k dispozici pouze přes klávesovou zkratku, ikonu nebo z menu. |
Další témata související s použitím omezení:
Nastavit aktuální omezení, podle kterého se okamžitě provede dotaz do databáze a aktualizuje se obsah záložky Seznam, můžete následovně:
-
Použijete některou z předtím uložených definic omezení bez modifikace
Tj. v záložce Omezení vyberete z existujících definic omezení v levé části záložky v seznamu (podle hodnot uložených ve vybrané definici se zaktualizuje nastavení omezovacích prvků) a provedete dotaz funkcí Získat záznamy. Poté program aktivuje záložku Seznam, kde budou doklady odpovídající nastaveným omezením a ve omezovacím panelu bude vedle tlačítka Vybrané omezení uveden název vybrané definice omezení, který dává na vědomí, že výběr dokladů proběhl přesně podle ní. Tuto možnost použijete pro často používaná neměnná omezení. -
Použijete některou z předtím uložených definic omezení s modifikací (pouze v Plném režimu)
Tj. vyberete z existujících definic. Podle hodnot uložených ve vybrané definici se zaktualizuje nastavení omezovacích prvků, které ještě upravíte (např. změníte rozsah hodnot, přidáte další omezení apod.), a provedete dotaz funkcí Získat záznamy. Poté program aktivuje záložku Seznam, kde budou doklady odpovídající nastaveným omezením. V omezovacím panelu nebude uveden název vybrané definice omezení, jelikož výběr dokladů neproběhl přesně podle ní (byla použita jenom jako vzor). Tuto možnost použijete pro častěji používaná omezení, která ale vyžadují drobnou modifikaci před vlastním použitím. -
Nastavíte omezení ručně (žádnou definici nepoužijete)
Tj. v seznamu omezení vyberete v sekci Nové omezení omezení s názvem Bez jména (neuložené) a postupně zatrhnete všechny položky, podle kterých chcete doklady právě omezit a pro každou z nich (podle jejího typu) nastavíte rozsah hodnot, kterých má nabývat, a provedete dotaz funkcí Získat záznamy. Poté program aktivuje záložku Seznam, kde budou doklady odpovídající nastaveným omezením. Ve omezovacím panelu nebude uveden název vybrané definice omezení (žádná vybrána nebyla). Ručně provedené nastavení omezení se nijak nepamatuje, proto tuto možnost použijete pro málo používaná a neopakující se omezení. (Pokud byste chtěli podle téhož nastavení provést opakovaný dotaz, budete je muset znovu nastavit (případně si jej uložit jako definici a tu pak používat)).
Pokud žádné omezení nenastavíte, bude výsledný seznam dokladů neomezený (resp. bude omezen pouze případnými přístupovými právy).
Vybrat některou z uložených definic omezení lze i přímo na záložce Seznam. Podrobný popis viz kapitola Omezovací panel v dokladových agendách, panel omezení.
Při častém užívání některých definic omezení je výhodné si tyto definice nastavit jako oblíbené. K této funkcionalitě má uživatel přístup jak v jednoduchém, tak v plném režimu. V seznamu definic omezení je třeba se postavit kurzorem na omezení, které není oblíbené a funkcí Oblíbená jej zařadit do seznamu oblíbených omezení. Sekce oblíbených omezení je označena ikonou žluté hvězdičky. Ze seznamu oblíbených lze omezení vyřadit toutéž funkcí, která se na omezení, jež má atribut oblíbené, přejmenuje na Neoblíbená.
Pokud omezení obsahuje ad-hoc dotazy (alespoň u některé z podmínek je zatrženo "dotázat se na hodnotu"), další aktivací tohoto omezení se znovu zobrazí dialog pro zadání hodnot a po něm se vykoná dotaz se zadanými hodnotami. Není tudíž nutné přecházet zpět na záložky Omezení.
Oblíbené definice jsou následně v seznamu vypsány v omezovacím panelu nad seznamem v řádku začínajícím ikonou žluté hvězdičky . Podrobněji viz kap. Omezovací panel v dokladových agendách, panel omezení.
Příklad oblíbených omezení v seznamu agendy Faktury vydané.
Automatické nabízení zařazení omezení mezi oblíbené
Systém si eviduje podle provedených dotazů četnost použití každého omezení (viz Sledování četnosti použití omezení). Jestliže zjistí, že určité omezení, které není zařazeno v oblíbených, uživatel použil v aktuálním měsíci více než 30krát, nabídne mu před provedením dotazu v modálním dialogu možnost přesunout toto omezení do často používaných. Pokud to odmítne, dotaz se bude opakovat po dalších 30 použitích omezení (celkem tedy po 60, 90 a 120 omezeních v daném měsíci). Cílem je uživatele upozornit na možnost zařazení do oblíbených a výhod z toho plynoucích.
Jako další použití se nezapočítává provedení téhož dotazu po funkci Občerstvit a také změna třídění kliknutím na některý z řadících sloupců.
Příklad vyhodnocení po 30 použitích určité (neoblíbené) definice omezení, kdy systém nabídne přesunout ji mezi oblíbená omezení.
Defaultní omezení vytvářená automaticky systémem. Objevují se v případech, kdy uživatel otevírá agendu z jiné agendy. Ve většině těchto případů jde totiž o situaci, kdy k aktuálnímu záznamu si přejeme vidět nějaké s ním související záznamy z jiné agendy. Takto vyvolaná agenda se otevře rovnou s přednastaveným omezením za všechny záznamy související s daným dokladem a případně ještě splňující nějakou další výchozí omezující podmínku. V tomto případě program sám vytvoří dané omezení. Aby bylo vizuálně odlišeno od dalších omezení ručně nadefinovaných uživatelem (jak bylo popsáno výše), je zobrazeno červeně. V záložce Omezení se pak zobrazí oddíl Pevné omezení z jiné agendy v němž je zobrazeno patřičné omezení a jsou v něm zatrženy prvky, podle nichž bylo automatické červené omezení vytvořeno. Navíc zde mohou přibýt i jiné omezující prvky, které se uživateli standardně v záložce Omezení nenabízí, pokud podle nich bylo omezení provedeno. Takové prvky jsou pro odlišení opět zobrazený červeně. Objasníme na příkladě:
Mějme otevřenu agendu faktur vydaných. Prohlížíme si fakturu FV-2/2007 a zajímají nás dobropisy k ní vystavené. Přepneme se na záložku x-vazby a Funkčním tlačítkem Doklad, vyvoláme agendu Dobropisy nad nějakým dobropisem dané faktury. Takto odtud vyvolaná agenda se otevře rovnou omezená za tento dobropis vystavený k faktuře FV-2/2007. V omezovací liště v horní části záložky Seznam se zobrazuje červeně informace o tomto omezení:
Příklad "červeného" omezení za dobropisy k dané faktuře
V záložce omezení pak v seznamu definic přibude sekce Pevné omezení z jiné agendy s definicí omezení "Doklad k: FV-2/2012", která bude mít omezení za interní identifikátor tohoto dobropisu:
Příklad omezovacího prvku uvedeného v sekci Pevné omezení z jiné agendy, podle kterého je provedeno omezení Doklad k FV-2/2007.
Červené omezení a výchozí záložka
Je-li agenda otevřena s červeným omezením, pak je výchozí záložkou, na které se agenda otevře, záložka Seznam, bez ohledu na nastavený způsob použití záložky Začínáme a bez ohledu na příp. definované výchozí omezení v záložce Omezení. Dále viz Pravidla pro zobrazování záložky Začínáme a stanovení výchozí záložky.
Zrušení a uložení červeného omezení
Z tohoto červeného omezení se však můžete standardně přepnout na jiná omezení v seznamu definic, případně zvolit zcela Nové a poté získat záznamy.
Toto je jeden ze způsobů, jak zrušit omezení za červené omezovací prvky. Můžete tak také učinit pomocí funkce Vyčistit nebo odebrat zatržené podmínky (pokud to lze). Pokud se však po vyčištění nebo odebrání podmínek překlikne na jiné omezení a vrátí se zpět na toto pevné omezení, načtou se původní hodnoty.
Uložení červeného omezení jako uživatelské definice
Pokud byste chtěli mít obsah červeného omezení trvale k dispozici a mohli je vybírat jako jiné uživatelem nadefinované omezení, můžete si je uložit. Tj. v záložce Omezení, za stavu, kdy máte aktivní (vybrané) červené omezení použijete funkci Uožit jako, neboť červené omezení samo o sobě je pouze dočasné a je v seznamu definic uchováváno pouze do uzavření dané agendy. Tím se pod vámi zadaným jménem uloží aktuálně nastavené omezení, a případně i pevné omezovací prvky, které není možno odtrhnout (např. při vyvolání připojeného záznamu v účetním deníku k dokladu přes interní identifikátor). Tato definice omezení bude již zobrazena černě.
Toto je jediný způsob, jak nadefinovat červené omezení s pevnými prvky. Protože jak z výše uvedeného vyplývá, pevné omezovací prvky přidává do záložky Omezení program sám v okamžiku, kdy je to potřeba, a nelze je tam přidávat nijak uživatelsky.
Červené omezení a občerstvení, resp. nové dotazy do databáze
Pokud je v agendě vyvolané přes jinou agendu a otevřené s červeným omezením přidáván nový doklad, pak platí:
-
pokud se seznam s červeným omezením občerství, pak se nijak nezapomene vazba na původní záznam(y), podle kterých červené omezení vzniklo, tj. je stále v platnosti.
Tzn. že pokud by byl vystavován nový doklad k původnímu, podle něhož červené omezení vzniklo, pak se nebude jako první nabízet průvodce pro dohledání dokladu, jelikož vazba na tento doklad je známa (pamatuje se).
-
pokud se v záložce Seznam vybere jiná definice omezení (jiný filtr), pak se standardně ihned podle něj provede nový dotaz do databáze. To má ovšem za následek to, že se zapomene vazba na původní záznam(y), podle kterých červené omezení vzniklo. Nicméně červené omezení je k dispozici až do zavření takto otevřené agendy a je možné si za něj omezovat záznamy, ale již nepomáhá při vystavování nových dokladů.
Tzn. že pokud by byl vystavován nový doklad k původnímu, podle něhož červené omezení vzniklo, pak se bude jako první nabízet průvodce pro dohledání dokladu, jelikož vazba na tento doklad se již nepamatuje.
- pokud na záložce Omezení je proveden nový dotaz do databáze, je výsledek tentýž jako v předchozím bodě
Mějme otevřenu agendu faktur odeslaných. K faktuře FV-3/2012 si zobrazíme její dobropisy, tj. ze záložky Seznam vyvoláme funkci Dobropisy nad danou fakturou. Otevře se agenda dobropisů omezená červený omezením za dobropisy k FV-3/2012. pokud v ten moment vyvoláme funkci F2=Nový dobropis, nebude systém nabízet Průvodce dohledáním dokladu pro dohledání dobropisované faktury, a nový dobropis bude automaticky vytvářen k FV-3/2012.
Pokud ale provedeme v takto vyvolané agendě dobropisů Občerstvení nebo nový dotaz funkcí Získat záznamy ze záložky Omezení, vazba na FV-3/2012 se zapomene, tj. při zadání nového dobropisu budeme muset nejdříve vyhledat dobropisovanou fakturu. Červené omezení ale zůstane k dispozici (až do zavření agendy dobropisů) a bude možno si podle něj i nadále filtrovat dobropisy k FV-3/2012.
Pro položky s historií obecně není podporováno omezování (obdobně filtrování a hromadné označování).
Důvodem je to, že hodnoty historických položek (kromě poslední aktuálně platné hodnoty) jsou uloženy v jiné tabulce než vlastní bussines objekt pro tuto položku. V tabulce, kde je uložen vlastní business objekt, je uložena jen aktuální hodnota. (Resp. hodnota poslední zadaná.)
Při jednoduchém omezení za takovou položku se pak bere v potaz právě hodnota aktuálně platná, tedy ta, která je uložena v téže tabulce jako je příslušný business objekt. V některých místech programu však nelze takové omezení použít, jelikož v kombinaci s výběry za minulá období by nevracelo správné hodnoty. Konstrukce omezení, které by zajistilo omezování i za historické hodnoty, však může být velmi komplikovaná a každé takové místo v programu musí být speciálně ošetřeno. Proto je omezování za položky s historií v systému k dispozici jen v omezené míře, zejména pak u agend, které podporují i zobrazování hodnot z minulých období (např. agendy mezd a personalistiky), kde by jednoduché omezení za aktuálně platnou hodnotu nevyhovělo.
Příklad: Viz mzdové listy, třídění za středisko a zdravotní pojišťovnu.
Výše uvedené platí i pro omezování za uživatelsky definovatelné položky. Proto pokud má uživ. def. položka zatrženo současně sledování historie a současně použití pro omezení výběrů dat, pak platí, že jde pouze o omezení za aktuálně platnou hodnotu (obecně ta, která má hodnotu uloženou v tabulce daného business objektu).
Při provádění dotazu do databáze VE VĚTŠINĚ PŘÍPADŮ platí, že se kromě omezujících podmínek zadaných uživatelem (aktuálně zvolené omezení, tj. nějaké zatržené omezující podmínky) mohou vzít v potaz také případná omezení daná přístupovými právy. Jedná se o právo Zobrazit, které je nastavené k chráněným objektům. Za chráněné objekty se tedy může omezovat nejen tehdy, pokud uživatel fyzicky zatrhl odpovídající omezující prvek, ale i tehdy, pokud jej fyzicky nezatrhl a jedná se o uživatele, u něhož se berou v potaz přístupová práva k chráněným objektům (tj. NEMÁ privilegium Supervisor ani privilegium Obcházet práva k objektům).
Zde je třeba si uvědomit, že takové omezení dle práv k chráněným objektům uživatel na první pohled NIJAK NEVIDÍ (fyzicky nejsou dané prvky zatrženy). To může být na první pohled matoucí, protože daný uživatel omezující podmínky nezadal (nezatrhl) a ze svého pohledu tudíž provádí dotaz "bez omezení".
- Ke skrytým chráněným objektům se práva k objektům neberou v potaz. Dále viz mazání chráněných objektů do skrytých.
- Pokud uživatel MÁ privilegium Supervisor nebo Obcházet práva k objektům, pak se žádná omezení dle práv k objektům neprovádí. Pokud tedy takový uživatel odpovídající omezující prvek NEZATRHNE, nijak se za něj omezovat nijak nebude (ani dle práv).
- Pokud uživatel prvek odpovídající chráněnému objektu fyzicky ZATRHNE, ať už MÁ nebo NEMÁ privilegium Supervisor nebo Obcházet práva k objektům, pak se omezí přesně tak, jak si uživatel fyzicky zadal. (V tomto případě je jedno, jaká privilegia uživatel má, protože, je-li prvek fyzicky zatržen, program omezí přesně tak, jak si uživatel fyzicky zadal.)
Tedy platí:
Pokud se tedy v omezujících podmínkách dané agendy vyskytuje nějaký omezující prvek za chráněné objekty, uživatel jej nezatrhl a jedná se o uživatele bez zmíněných privilegií, je třeba počítat s tím, že výsledný seznam bude ve většině případů i tak omezen a to v závislosti na efektivní hodnotě práva Zobrazit příslušné chráněné objekty. Toto platí samozřejmě i pro omezení za řádkové údaje, protože i mezi nimi se může objevit omezení za nějaký chráněný objekt.
Z tohoto pravidla však v některých místech systému musí z praktických důvodů existovat jisté výjimky:
Pro běžné omezování za takové případy má uživatel k dispozici následující doplňkové omezující prvky:
- Rozšířit o nevyplněné - umožní uživateli vidět i záznamy s nevyplněný údajem.
-
Rozšířit o doklady bez řádků (pro případ, že nevyplněným údajem jsou řádky samotné) - umožní uživateli, který nemá žádná privilegia, vidět i doklady, které zadal omylem bez řádků, aby je mohl opravit. Je-li prvek zatržen, přidají se k výsledku omezení za ostatní řádkové údaje také záznamy, které neobsahují žádný řádek. Pro předvyplnění prvku Rozšířit o doklady bez řádků platí: V okamžiku, kdy se omezuje za řádkové údaje, prvek Rozšířit o doklady bez řádků se automaticky předvyplní podle nastavení v parametru Omezení dokladů - rozšířit o doklady bez řádků. Předvyplněné zatržení však uživatel může před provedením dotazu podle potřeby změnit.
Pozor...Zde je třeba si uvědomit ještě následující: Za řádkové údaje se může omezovat nejen tehdy, pokud uživatel fyzicky zatrhl prvek Řádky, ale i tehdy, pokud jej fyzicky nezatrhl a jedná se o uživatele, u něhož se berou v potaz přístupová práva k chráněným objektům (tj. NEMÁ privilegium Supervisor ani privilegium Obcházet práva k objektům). To je možno si představit tak, že program JAKOBY fiktivně zatrhne místo uživatele daný prvek - v tomto prvek Řádky plus jemu podřízený prvek odpovídající chráněnému objektu, tj. např. Středisko - a provede omezení za všechna střediska, k nimž má daný uživatel právo Zobrazit. Fyzicky však takové zatržení vidět není, aby se nepletlo se zatržením jiným prvků, které si uživatel opravdu fyzicky zatrhl.
A jelikož došlo JAKOBY k zatržení prvku Řádky (i když vidět není), dojde i k předvyplnění prvku Rozšířit o doklady bez řádků podle firemního parametru.
Tedy platí:
- Pokud se jedná o uživatele, který nemá privilegiumSupervisor nebo Obcházet práva k objektům a daný uživatel prvek Řádky fyzicky nezatrhne, vezmou se v potaz práva k řádkovým chráněným objektům a zatržení prvku Rozšířit o doklady bez řádků se předvyplní podle firemního parametru. Pak daný uživatel ve výsledném seznamu UVIDÍ doklady bez řádků TEHDY, pokud má v parametru Omezení dokladů - rozšířit o doklady bez řádků nastaveno ANO (tj. předvyplňovat zatržení prvku Rozšířit o doklady bez řádků). Pokud má v parametru hodnotu NE, pak doklady bez řádku NEUVIDÍ.
- Pokud se jedná o uživatele, který má privilegiumSupervisor nebo Obcházet práva k objektům a daný uživatel prvek Řádky fyzicky nezatrhne, ve výsledném seznamu doklady bez řádků UVIDÍ VŽDY, bez ohledu na hodnotu parametru. (A to proto, že se v tomto případě za žádná práva k chráněným objektům neomezuje, tedy ani za žádné řádkové údaje. Tudíž nevadí, že daný doklad nemá žádné řádky, protože vždy vyhoví.)
- Pokud uživatel prvek Řádky fyzicky zatrhne, ať už má nebo nemá privilegium Supervisor nebo Obcházet práva k objektům, pak ve výsledném seznamu UVIDÍ doklady bez řádků JEN TEHDY, má-li také zatržen prvek Rozšířit o doklady bez řádků. Pokud prvek Rozšířit o doklady bez řádků zatržen nemá, pak doklady bez řádků NEUVIDÍ. (V tomto případě je jedno, jaká privilegia uživatel má, protože, je-li prvek fyzicky zatržen, program omezí přesně tak, jak si uživatel fyzicky zadal.)
- Pokud se jedná o uživatele, který nemá privilegiumSupervisor nebo Obcházet práva k objektům a daný uživatel prvek Řádky fyzicky nezatrhne, vezmou se v potaz práva k řádkovým chráněným objektům a zatržení prvku Rozšířit o doklady bez řádků se předvyplní podle firemního parametru. Pak daný uživatel ve výsledném seznamu UVIDÍ doklady bez řádků TEHDY, pokud má v parametru Omezení dokladů - rozšířit o doklady bez řádků nastaveno ANO (tj. předvyplňovat zatržení prvku Rozšířit o doklady bez řádků). Pokud má v parametru hodnotu NE, pak doklady bez řádku NEUVIDÍ.
Jsou-li tyto prvky uživatelem zatrženy, je situace jasná - uživatel uvidí přesně to, co si zatrhl. Pokud si ale daný prvek nezatrhl, je třeba v některých případech uplatnit určitá pravidla a výjimky (mj. i proto, aby se neomezovalo zbytečně restriktivně). Tato pravidla a výjimky rozdělíme na dva případy:
Pokud je omezující prvek, který je chráněným objektem, hlavičkovým údajem záznamů v agendě (a bere se v potaz omezení za příst. práva, viz výše), pak je situace jednoduchá, tj. ve výsledném seznamu budou pouze ty záznamy, které mají v příslušném hlavičkovém údaji hodnotu, k níž má uživatel povoleno Zobrazení. Objasníme na příkladu:
Mějme pokladny P1, P2 a P3. Uživatel Novák nemá žádná privilegia a má v rámci efektivních práv k pokladně P1 povoleno právo Zobrazit i Použít, k pokladně P2 má povoleno jen právo Zobrazit a k pokladně P3 nemá povoleno ani Zobrazit ani Použít. Dále mějme pokladní příjemky PP1 z pokladny P1, PP2 z pokladny P2 a PP3 z pokladny P3. Uživatel Novák si otevře agendu pokladních příjmů, přičemž nezadá žádné omezení. Povoleno je zobrazení pro pokladny P1 a P2, tedy v záložce Seznam bude mít zobrazeny pouze doklady PP1 a PP2.
Zde existují následující drobné výjimky:
Jedná se o případy, kdy se na záznamu v dané agendě vyskytuje položka s hodnotami z chráněného číselníku, ale tato položka je nepovinná, tudíž může zůstat nevyplněná. Pokud by při omezování záznamů v takových místech nebyly aplikovány dále popsané výjimky, pak by uživatel bez privilegia Supervisor nebo Obcházet práva k objektům neměl možnost vidět záznamy, na nichž je daná položka nevyplněná (jelikož obecně platí, že uživatel bez zmíněných privilegií bude mít záznamy omezené JEN za ty objekty, ke kterým má právo Zobrazit, což nezadaná hodnota samozřejmě není).
- Výjimka platná pro omezení za hlavičkový údaj Řada dokladů v agendě Blokací - V agendě Blokace dokladů je možno blokaci zadat i přímo k řadě dokladů. Řada dokladů je zde však nepovinná. Z výše uvedeného důvodu zde platí výjimka, že pokud uživatel bez zmíněných privilegií nezatrhl omezující prvek za řady dokladů, uvidí záznamy blokací na řady, k nimž má právo Zobrazit, přičemž blokace s nevyplněnou řadou uvidí vždy. Pokud zatrhl omezující prvek za řady dokladů, pak uvidí záznamy blokací za řady dokladů, za které si aktuálně omezuje (které si v omezujícím prvku vybral). Záznamy s nevyplněnou řadou uvidí v tomto případě jen tehdy, pokud si současně zatrhne položku Rozšířit o nevyplněné.
- Výjimka platná pro omezení za hlavičkový údaj Řada dokladů v agendě Odpisy majetku - V agendě Odpisy majetku je možno omezovat za odpisy podle zdrojové a účetní řady dokladů, v níž byly vystaveny, resp. zaúčtovány. Mohou se zde ale vyskytovat i odpisy dosud nezaúčtované, které nemají zdrojovou a účetní řadu zatím zadánu. Z výše uvedeného důvodu zde platí výjimka, že pokud uživatel bez zmíněných privilegií nezatrhl omezující prvek za řady dokladů, uvidí odpisy zaúčtované v řadách, k nimž má právo Zobrazit, přičemž odpisy nezaúčtované (bez řad) uvidí vždy. Pokud zatrhl omezující prvek za řady dokladů, pak uvidí záznamy za řady dokladů, za které si aktuálně omezuje (které si v prvku omezení vybral). Záznamy nezaúčtovaných odpisů s neuvedenou řadou uvidí v tomto případě jen tehdy, pokud si rovněž zatrhne položku Rozšířit o nevyplněné.
- Výjimka platná pro omezení za hlavičkový údaj Vlastní účet v agendě Srážek a Opakovaných srážek - V agendě Srážky nebo Opakované srážky mohou existovat srážky, u nichž není zadán vlastní účet (viz např. interní srážky). Z výše uvedeného důvodu zde platí výjimka, že pokud uživatel bez zmíněných privilegií nezatrhl v záložce Omezení omezující prvek za vlastní účet, uvidí srážky zadané na účty, k nimž má právo Zobrazit, přičemž srážky s nevyplněným vlastním účtem uvidí vždy. Pokud zatrhl omezující prvek za vlastní účet, pak uvidí záznamy vystavené na účty, za které si aktuálně omezuje (které si v prvku omezení vybral). Srážky s nezadaným účtem uvidí v tomto případě jen tehdy, pokud si rovněž zatrhne položku Rozšířit o nevyplněné.
- Výjimka platná pro omezení za hlavičkový údaj Středisko v agendě Podklady pro žádosti o platební příkazy z mezd - V agendě Podklady pro žádosti o platební příkazy z mezd mohou existovat podklady pro žádosti o platební příkazy z mezd (PPM), u nichž není zadáno středisko. Z výše uvedeného důvodu zde platí výjimka, že pokud uživatel bez zmíněných privilegií nezatrhl omezující prvek za středisko, uvidí PPM zadané na střediska, k nimž má právo Zobrazit, přičemž PPM s nevyplněným střediskem uvidí vždy. Pokud zatrhl omezující prvek za středisko, pak uvidí záznamy vystavené na střediska, za která si aktuálně omezuje (která si v prvku omezení vybral). PPM s nevyplněným střediskem uvidí v tomto případě jen tehdy, pokud si rovněž zatrhne položku Rozšířit o nevyplněné.
- Výjimka platná pro omezení za hlavičkový údaj Středisko v agendě Účetní žádosti - V agendě Účetní žádosti mohou existovat účetní žádosti, u nichž není zadáno středisko. Z výše uvedeného důvodu zde platí výjimka, že pokud uživatel bez zmíněných privilegií nezatrhl omezující prvek za středisko, uvidí účetní žádosti zadané na střediska, k nimž má právo Zobrazit, přičemž účetní žádosti s nevyplněným střediskem uvidí vždy. Pokud zatrhl omezující prvek za středisko, pak uvidí záznamy vystavené na střediska, za která si aktuálně omezuje (která si v prvku omezení vybral). Účetní žádosti s nevyplněným střediskem uvidí v tomto případě jen tehdy, pokud si rovněž zatrhne položku Rozšířit o nevyplněné.
- Výjimka platná pro omezení za hlavičkový údaj Vlastní e-mailový účet v agendě Pravidla zpracování doručené e-mailové pošty - V agendě Pravidla zpracování doručené e-mailové pošty mohou existovat pravidla, u nichž není zadán vlastní e-mailový účet. Z výše uvedeného důvodu zde platí výjimka, že pokud uživatel bez zmíněných privilegií nezatrhl omezující prvek za vlastní e-mailový účet, uvidí pravidla zadaná na e-mailové účty, k nimž má právo Zobrazit, přičemž pravidla s nevyplněným vlastním e-mailovým účtem uvidí vždy. Pokud zatrhl omezující prvek za vlastní e-mailový účet, pak uvidí záznamy vystavené na e-mailové účty, za které si aktuálně omezuje (které si v prvku omezení vybral). Pravidla s nevyplněným vlastním e-mailovým účtem uvidí v tomto případě jen tehdy, pokud si rovněž zatrhne položku Rozšířit o nevyplněné.
Podrobněji viz Omezování za číselníkové údaje, které mohou být nevyplněné.
Pokud je omezující prvek, který je chráněným objektem, řádkovým údajem záznamů v agendě (a bere se v potaz omezení za příst. práva, viz výše), pak je situace složitější:
- Pokud se jedná o agendu, která vypisuje jednotlivé řádky dokladů (např. Skladové pohyby), pak obdobně jako u omezení za hlavičkové údaje se vypíší přesně jen ty řádky, které vyhoví, a žádné jiné.
-
Pokud se jedná o agendu, která pracuje s celými doklady, pak platí, že ve výsledném seznamu budou ty záznamy, které mají alespoň jeden řádek, který vyhovuje, tj. má v příslušném řádkovém údaji hodnotu, k níž má uživatel povoleno Zobrazení. Objasníme na příkladu:
Mějme střediska 100, 200 a 300. Uživatel Novák má v rámci efektivních práv ke středisku 100 povoleno právo Zobrazit i Použít, ke středisku 200 má povoleno jen právo Zobrazit a ke středisku 300 nemá povoleno ani Zobrazit ani Použít. Dále mějme pokladní příjemky PP1 s řádky na středisko 100 a 200, PP2 s řádky na středisko 200 a 300 a PP3 s řádky jen na středisko 300. Uživatel Novák si otevře agendu pokladních příjmů, přičemž nezadá žádné omezení. Povoleno je zobrazení pro střediska 100 a 200, tedy v záložce Seznam bude mít zobrazeny doklady PP1 a PP2 (obsahují aspoň jeden řádek se středisky 100 nebo 200).
Doklad PP2 bude zahrnut samozřejmě celý, tedy i s řádky na střediska, k nimž není přístup pro zobrazení.Upozornění platné pro doklady vystavené omylem BEZ řádků:
Vzhledem k omezení za přístupová práva ke střediskům se doklad vystavený bez řádků ve výsledném seznamu dokladů objeví uživateli pouze, pokud zatrhne možnost Rozšířit o doklady bez řádků v omezení za řádkové údaje. Jinak se uživateli vypíší jen ty doklady, které obsahují alespoň jeden řádek se střediskem, k němuž má uživatel právo Zobrazit.
Pokud by nebyla možnost Rozšířit omezení o doklady bez řádků, uživatel bez privilegia Supervisor nebo Obcházet práva k objektům (tj. s omezenými právy Zobrazení ke střediskům) by neměl možnost vidět doklady, na nichž žádné řádky nejsou (tudíž ani žádná střediska). Důvodem je právě to, že každému uživateli bez zmíněných privilegií se omezuje nejen za jím zadané omezení, ale i za chráněné objekty, ke kterým má přístup (což je v případě dokladů právě povinná položka středisko) a výsledkem tohoto omezení jsou doklady, které obsahují alespoň jeden řádek s některým z těchto středisek. Což by doklad bez řádků nesplňoval a uživatel by jej tudíž při dalším dotazu do databáze neviděl a nemohl opravit.
Podrobněji viz Rozšířit omezení o doklady bez řádků.
Dále zde existuje drobná výjimka platná pro omezení za řádkový údaj SKLAD (neboli řešení omezení za textové řádky):
Omezení za přístupová práva ke skladům se nijak neuplatňuje na neskladových řádcích. Tedy ve výsledném seznamu budou kromě dokladů, které mají alespoň jeden řádek vyhovující omezení za sklad (tj. je vystaven na sklad, k němuž má uživatel povoleno Zobrazení), také doklady s neskladovými řádky. Tj. doklady s řádky typu 0-textový, 1- textový s částkou a 2- textový s počtem a částkou.)
Pokud by nebyly speciálně zahrnuty neskladové řádky, uživatel bez privilegia Supervisor nebo Obcházet práva k objektům (tj. s omezenými právy Zobrazení ke skladům) by neměl možnost vidět doklady, na nichž žádné skladové řádky nejsou, jelikož by se omezilo standardně pouze za doklady, na nichž je alespoň jeden sklad, ke kterému je přístup.
Pozor, z výše uvedeného ale plyne i drobný nedostatek (daný stávajícím technickým omezením), který je třeba si uvědomit: ve výsledném seznamu budou kromě dokladů, které mají alespoň jeden řádek se skladem vyhovujícím právům, a dokladů, které mají jen neskladové řádky, také všechny další doklady, které mají alespoň jeden neskladový řádek! (bez ohledu na to, na jaké sklady zní jejich případné další skladové řádky, mohou to být i sklady v současnosti skryté). Objasníme na příkladu:
Mějme sklady S1 a S2. Uživatel Novák má v rámci efektivních práv povoleno Zobrazení jen ke skladu S1. Dále mějme faktury
- FV1 jen s textovými řádky
- FV2 jen se skladovými řádky ze skladu S1
- FV3 jen se skladovými řádky ze skladu S2
- FV4 jen se skladovými řádky ze skladu S1 a S2
- FV5 se skladovými řádky ze skladu S2 a s libovolnými neskladovými řádky
Uživatel Novák si otevře agendu faktur vydaných a nezadá žádné omezení. Pak uvidí v seznamu faktur doklady FV1, FV2, FV4 a FV5. Doklad FV3 neuvidí, jelikož ten nemá ani jeden řádek se skladem S1 a ani jeden řádek neskladový.
Pokud by si zadal omezení např. za sklad S1, pak uvidí tytéž doklady, tj. nejen ty. co mají sklad S1, ale i ty, co mají alespoň jeden neskladový řádek bez ohledu na další řádky.
Existuje parametr NoDynSQLSecurity. Má smysl jen pro podmínky s chráněným číselníkem. Pokud se nastaví na hodnotu True, nebude se v daném místě při omezování za takový prvek automaticky vytvářet fragment DynSQL, který způsobuje omezení dle práv v případě, že uživatel podmínku nemá zatrženu.
Jedná se o výjimečné situace, kdy je zcela nežádoucí, aby se výsledný seznam omezil, není-li omezující prvek navázaný na chráněný číselník zatržen (jedná se např. o specifické jednoúčelové omezení, je smysluplné za něj omezovat jen, je-li prvek zatržen, nikoli podle práv).
Příkladem je omezování za firmy/osoby Jen s platným povolením ke zpracování dat k definici. Jedná se sice o číselníky, čili nejde o "omezování" přes záložku Omezení, nýbrž o filtrování, ale princip je shodný. Podmínka je zde proto, aby si uživatel mohl aktivně omezit jen za firmy splňující určité podmínky (v tomto případě v rámci GDPR), ale není žádoucí, aby se seznam firem uživateli omezil i tehdy, pokud podmínku nepoužije jen proto, že nemá přístupová práva k chráněnému objektu, na který je tato podmínka navázaná.
Pro zobrazování aktivit z modulu CRM dále platí speciální režim, kdy se při provádění dotazu do databáze kromě omezujících podmínek zadaných uživatelem (aktuálně zvolené omezení) a kromě případných omezení daných jeho přístupovými právy k chráněným objektům (viz výše Omezení versus Přístupová práva), bere ještě v potaz možnost daného uživatele vidět tzv. neveřejné aktivity. Pokud uživatel nemá přiděleno privilegium Vidět neveřejné aktivity, pak je třeba počítat s tím, že výsledný seznam bude omezen nejen v závislosti na efektivní hodnotě práva Zobrazit dané chráněné objekty, ale i v závislosti na efektivní hodnotě privilegia Vidět neveřejné aktivity.
Protože je v systému ABRA Gen mnoho uložených omezení a je těžké určit, zda a kdo je používá, může být užitečné, aby si četnost použití systém sám evidoval a jednak tuto informaci poskytl správci systému a jednak podle toho variantně upravil nabídku omezení a podmínek nebo alespoň na toto upozornil. Hlavní smysl sledování četnosti použití je v nalezení nepoužívaných omezení za delší dobu a jejich případné smazání (správcem systému).
V dřívějších verzích byla z tohoto důvodu k dispozici funkce Statistiky použití definic omezení, pro zobrazení statistik. Od v. 17.03.07 byla do systému přidána souhrnná agenda Přehled omezení. Funkce Statistiky byla zrušena. Některé údaje, které poskytovala, budou postupně převedeny do sloupců agendy Přehled omezení.
Viz též instruktážní video na toto téma.
Záložka Omezení
Ve verzi 21.1 byl změněn celkový vzhled systému, na některých místech došlo k úpravám uspořádání uživatelského rozhraní. Vzhled produktu zachycený na obrázku/ve videu se proto může od aktuální verze mírně lišit. Bez ohledu na vizuální rozdíly obrázky/videa stále relevantním způsobem osvětlují danou problematiku.Více viz Obrázky a videa v helpu.