Fulltextové hledání - záložka Detail
Záložka zobrazí detailní informace k aktuálnímu záznamu ze záložky Seznam.
Položky zadávané ke každému záznamu jsou standardně rozděleny do subzáložek dle svého významu:
Obsažené subzáložky: | Hlavní údaje | Formuláře |
---|
Pokud je v detailu agendy nebo číselníku pouze jedna aktivní subzáložka k výběru, lišta s výběrem subsáložek se nezobrazuje.
V horní části záložky Detail může být variantně zobrazen některý z Panelů definovatelných údajů detailu pro tuto agendu. Zobrazení panelu definovatelných údajů detailu závisí na aktuálním nastavení v menu Nastavení pro danou agendu a přihlášeného uživatele.
V horní části subzáložky jsou k dispozici následující položky:
Název | Popis |
---|---|
Agenda |
Agenda, pro kterou bude fulltextové hledání vytvořeno. U nové definice agendu vyberete ze skrytého seznamu, u již existující definice je položka nepřístupná; tedy nelze ji měnit. Nabízejí se přitom pouze ty agendy, pro které dosud nebylo fulltextové hledání nadefinováno. |
Třída |
Třída Business objektu (BO), pro který je dané pravidlo definováno. Needitovatelná položka zobrazující se pouze z informativních důvodů. Řetězec, pod kterým se jednotlivé třídy v seznamu nabízejí, odpovídá položce "Popis" daného Business objektu a můžete podle ní i daný Business objekt dohledat v popisu Struktur a definic GenDoc.chm. Tip pro vás - rychlá cesta, v dokumentaci GenDoc.chm dohledat popis nějaké nabízené třídy ze seznamu: Např. chcete získat dokumentaci k nabízené třídě Definice report. Pak v GenDoc.chm si přes fulltextové hledání nechte dohledat řetězec "Popis: Definice report". K vybrané třídě se zobrazuje i CLSID (identifikační GUID) Business objektu dané třídy. V dokumentaci GenDoc.chm jsou CLSID Business objektů uvedeny jak v nekomprimovaném delším 36-ti znakovém tvaru (32 znaků vč. pomlček), resp. v 38-mi znakovém (vč. pomlček, závorek), tak v pakovaném 26-ti znakovém tvaru (viz PackedGUID), ve kterém se používají v programu (podle nich lze rovněž popis v dokumentaci GenDoc.chm rychle dohledat). |
Pomocná db. tabulka | Uživatelský název tabulky, která v databázi vznikne po uložení nové definice, do které se ukládají řetězce pro fulltextové hledání. Při vytváření nového záznamu lze tuto položku editovat. U již existující definice je poté položka nepřístupná. Změna názvu tabulky je nutná např. tehdy, pokud by v databázi tabulka se stejným jménem již existovala. K čemuž může dojít obvykle ale jen tehdy, pokud se definice vytvářejí i pro definované číselníky. Název může obsahovat pouze alfanumerické znaky. |
Název tabulky v databázi | Název tabulky v databázi, který se přebírá z položky Pomocná db. tabulka a doplněný o prefix FSU$ v případě, že je tabulka v kódování Unicode nebo FS$ v případě, že je tabulka v kódování ANSI. Needitovatelná položka zobrazující se pouze z informativních důvodů. Maximální délka názvu tabulek fulltextu je do 24 znaků. |
Unicode |
Parametr, který indikuje, zda-li je tabulka definice fulltextového hledání v kódování Unicode nebo ANSI. Parametr nemá uživatel možnost ovlivnit, neboť definice vznikají v kódování Unicode automaticky a tabulky v kódování ANSI se mohou v systému ABRA Gen vyskytnout pouze přenesením z verzí, kdy podpora Unicode ještě nebyla v systému implementována. Staré definice v ANSI je možné do Unicode převést pomocí funkce Převést na Unicode. |
Stav |
Stav aktualizace fulltextu.
Používat je možné i fulltext, který se nachází ve stavu Aktualizovat - za předpokladu, že je ve stavu OK alespoň jedna z jeho součástí (alespoň jeden index). Vždy se prohledávají pouze indexy, které jsou ve stavu OK. Uživatel si navíc přímo v příslušné agendě může zvolit, které indexy chce prohledávat. Pro zvýšení přehlednosti jsou záznamy ve stavu Aktualizovat zvýrazněny červeným podbarvením. |
Datum aktualizace |
Datum a čas poslední aktualizace fulltextu. Pokud fulltext dosud nebyl aktualizován (typicky po vytvoření nové definice), zobrazuje se místo časového údaje text "Neproběhla". |
Výraz pro omezení zpracovaných záznamů |
Výrazem je možné omezit počet zpracovávaných záznamů, které se do aktualizace fulltextu mají zahrnout. Napočtené záznamy nesplňující podmínku se při další aktualizaci odmažou Budeme-li mít například záznamy napočteny za posledních 5 let, zadáme podmínku na přepočtení záznamů jen za poslední rok. Následně se již přepočtené záznamy nesplňující podmínku vymažou a napočteny a aktualizovány budou jenom ty záznamy, které podmínku splňují. Výraz můžete zapsat ručně nebo jej můžete sestavit komfortněji pomocí Editoru výrazů, který si můžete vyvolat po stisku funkčního tlačítka (může se lišit dle verze a nastaveného vzhledu). Ve výrazech jsou k dispozici funkce a data z objektů dostupných v daném místě programu, viz funkce a datové položky objektu v editoru výrazů. Při psaní SQL platí:
Pokud bychom chtěli, aby se fulltext počítal jen nad fakturami za poslední rok, zapíšeme do výrazu následující: 'RT.DOCDATE$DATE >= ' + NxDateToFloat(Date) – 365 |
Ve spodní části subzáložky je prvek editovatelný seznam pro zadání definic indexů, které se budou prohledávat. V editovatelném seznamu se zadávají následující položky:
Název | Popis | |
---|---|---|
Stav |
Položka nabývající hodnot OK nebo Aktualizovat se stejným významem jako v hlavičce. Pokud je alespoň jeden index ve stavu Aktualizovat (např. po doplnění nového indexu do definice), je ve stavu Aktualizovat i celá definice. |
|
Název |
Uživatelský název indexu pro snadnější identifikaci. Zadané názvy zároveň slouží jako popisky funkčních tlačítek v panelu fulltextového hledání, pomocí kterých je možné zapínat a vypínat prohledávání jednotlivých indexů. |
|
Popis |
Bližší vysvětlující popis dané definice indexu. V panelu pro fulltextové hledání se popis zobrazuje formou tooltipu. |
|
Dělení slov |
Položka typu skrytý seznam, z něhož vyberete způsob rozdělování znakových řetězců, tj. jaké části řetězce budou považovány za samostatná slova:
|
|
Oddělovače slov | Zde je možné provést výčet znaků, které budou indikovat konec slova. Znaky se uvádějí za sebe bez mezer. Položka se zpřístupní, pokud je v položce Dělení slov vybrána hodnota Vlastní. | |
Regulární výraz |
Umožňuje nadefinovat oddělování slov prostřednictvím regulárního výrazu. Regulární výraz je zapotřebí zadat tak, aby byl složen ze dvou skupin. Mechanismus indexování následně v definovaném výrazu postupně vyhledává řetězec odpovídající zadanému celému regulárnímu výrazu (dvě skupiny). Obsah první skupiny považuje za slovo k indexaci, obsah druhé skupiny za oddělovač. Mějme v databázové tabulce sloupec typu poznámka a v jednotlivých záznamech uložené texty, které vypadají následovně:
Chceme vyhledávání nadefinovat tak, abychom mohli do panelu fulltextového hledání zadávat text bez formátovacích značek. Použijeme Dělení slov typu Regulární výraz a do pole Regulární výraz vyplníme následující výraz:
Systém ABRA Gen zpracuje uvedený ukázkový text následovně:
Obdobně jako v případě metody Bílé znaky je konec řádku vždy považován za oddělovač a není potřeba ho v regulárním výrazu specifikovat. Položka se zpřístupní pouze v případě, že je v položce Dělení slov vybrána volba Regulární výraz. |
|
Min. délka slova | Minimální délka slov, která budou zahrnuty do množiny záznamů, jež se budou prohledávat. Hodnota může být v rozmezí 0 - 100. Pokud bude tato hodnota překročena, systém záznam nedovolí uložit. Standardní min. délka slova je nastavena na 3 znaky. | |
Max. délka slova |
Maximální délka slov, která budou zahrnuty do množiny záznamů, jež se budou prohledávat. Hodnota může být v rozmezí 0 - 100. Pokud bude tato hodnota překročena, systém záznam nedovolí uložit. Pokud je indexované slovo delší než jeho nastavená maximální délka, tak se do tabulky uloží počet jeho prvních znaků stanovený maximální délkou. |
|
Typ |
Typ výrazu určuje, co bude obsahem následující položky Výraz (jakým způsobem se nadefinuje, co bude daný index prohledávat). V aktuální verzi jsou k dispozici dvě možnosti:
|
|
Výraz |
Položka pro zadání vlastního výrazu. Zde se je třeba odkázat na patřičnou položku, která se bude při použití daného indexu prohledávat. Obsah záleží na tom, zda je v položce Typ zvolena možnost QR výraz nebo SQL: |
|
QR výraz Výraz můžete zapsat ručně nebo jej můžete sestavit komfortněji pomocí Editoru výrazů, který si můžete vyvolat po stisku funkčního tlačítka (může se lišit dle verze a nastaveného vzhledu). Pokud by bylo třeba vyhledávat v obsahu e-mailů, které obsahují HTML tagy (tj. jsou ve formátu HTML), je možné využít QR funkci NxHTML2Text, která převede HTML do prostého textu (odstraní všechny tagy a zahrne pouze textový obsah tagu <body>). Výraz by pak např. u odeslaného emailu byl NxHTML2Text(Body) s nastavením dělení slov na Vlastní. |
SQL Výraz se zapisuje ručně. Klauzule SELECT musí obsahovat dva sloupce:
Dohledání skladových karet dle EAN na skladových jednotkách (tento SQL dotaz by se použil v definici indexu pro použití v agendě Skladové karty): SELECT SU.Parent_ID as ID, S.EAN as Text |
Pod editovatelným seznamem adresátů 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:
- Pro pohyb kurzoru po řádcích (na začátek, předchozí řádek, další řádek, na konec) editovatelného seznamu, změně jejich pořadí a hledání hodnoty v seznamu.
- Vložit - Pro vložení nového řádku před aktuální řádek (na němž stojí kurzor).
- Přidat - Pro přidání nového řádku na konec.
- Vymazat - Pro vymazání aktuálního řádku.
Subzáložka je k dispozici pouze, je-li v menu Nastavení aktuálně zatržena volba pro zobrazení uživatelských formulářů. Umožňuje vybírat si z nadefinovaných uživatelských vstupních formulářů a zobrazovat a zadávat si skrz ně potom jednotlivé údaje.
Pravidla pro použití této záložky jsou pro všechny agendy, ve kterých se může vyskytnout, společná a byla podrobně popsána v kap. Záložka Formuláře - obecně.
Zobrazení seznamu v Detailu
V některé části této záložky může být zobrazen Seznam (Panel pro zobrazení seznamu na jiných záložkách), tedy záznamy ze záložky seznam (podrobněji viz Společné prvky v dokladových agendách - záložka Detail).
Zobrazení seznamu závisí na aktuálním nastavení v menu Nastavení pro danou agendu a přihlášeného uživatele.
Funkce k záložce Detail:
Podmnožina funkcí ze záložky Seznam.
V editačním režimu platí zásady platné pro editaci záznamů v knihách. K dispozici jsou standardní funkce pro režim editace, přičemž po uložení záznamu v závislosti na jeho údajích může dojít k vyvolání nějaké další automatické akce, viz akce volané po uložení záznamu.