====== Editor maker ====== ===== Popis ===== Jedná se o nástroj pro pořízení a editaci uživatelského (distribučního) makra. Text pořízený v editoru se uloží do atributu **obsah**. Makra jsou nástrojem, který umožňuje přizpůsobení systému uživateli dle jeho potřeb. Jsou úzce propojeny s [[orfertopen:cmakbod:|implementačními body]], které definují místo, kde je možné makro použít. Jedná se o prostý text, který se transformuje na **groovy script**. A tento skript je vykonán při vlastním spuštění makra. Nespornou výhodou toho je, že uživatel nemusí znát syntaxi groovy pro psaní maker. Navíc je možné editor dále vyvíjet a přizpůsobit potřebám uživatelů. ===== Pohyb v editoru ===== * šipky kurzoru (nahoru,dolů,vlevo,vpravo) * kurzor myši * Home (začátek řádku) * End (konec řádku) * Ctrl+Home (začátek dokumentu) * Ctrl+End (konec dokumentu) ===== Označení textu ===== * kurzorem myši * šipkami + shift * šipkami +Home(End) (začátek nebo konec řádku) * Ctrl+A (označení celého dokumentu) * dvojklikem (slovo) ===== Nastavení zvýrazňovače ===== * Poznámka v makru (nejvyšší priorita) je zelenou barvou * Výraz řetězce v uvozovkách je označen modrou barvou ===== Menu funkce ===== ==== Soubor ==== === Uložit (Ctrl+S) === Funkce provede uložení makra. Při uložení se tato funkce deaktivuje. === Konec === Ukončení práce v editoru maker ==== Funkce ==== === Kontrola (Ctrl+K) === Provede se syntaktická (částečně i sémantická) kontrola pro zapsané makro. Je zobrazena informace o výsledku kontroly. Pokud je v makru chyba, je vypsán řádek a druh chyby. Pokud je kontrola v pořádku označí se makro stavem "5", který znamená, že makro je připraveno pro použití (toto označení se provede pouze při závěrečné kontrole). === Simulace (Ctrl+L) === Funkce umožňuje simulovat činnost makra. Uživatel má možnost nastavit počáteční hodnoty proměnných, které jsou obsaženy v makru. Po provedení simulace jsou výsledky uživateli zobrezeny ve formě tabulky. Před simulací se provede také kontrola na syntaxi. ==== Vložit ==== === Proměnná === Vyvolá se okno pomocí, kterého je možné zadat proměnnou. Vybírá se z tabulkové, pomocné, návratové a speciální. V případě, že se jedná o tabulkovou proměnnou, pak se ve druhé části vybírá ze identifikátorů definovaných pomocí implementace. V třetím okně se pak vybírá z atributů dané třídy. V případě, že se jedná o pomocnou nebo návratovou proměnnou, vybírá se z numriky, logiky nabo řetězce a z jeho indexu (1-9,return). === Funkce === Ze seznamu funkcí je možné vybrat funkci, která se přebere do textu. Text je možné editovat a přímo dopsat parametry v zobrazeném okně. Pokud si v editoru označíme nějaký text, tento text se přebere do editovacího okna. === Konstanta === Je možné vložit konstantu. Je možné vložit konstantu číselnou, textovou, logickou (jedná se o hodnotu "TRUE" vyjadřující pravdu nebo "FALSE" vyjadřující nepravdu) a datumovou (datum ve tvaru DD.MM.RRRR). === Operátor === Ze seznamu operátorů je možné si vybrat určitý operátor. === Poznámka === Na aktuální pozici vloží znaky pro poznámku "/*" a "*/". Pokud je označen text je vložen do poznámky. === Speciální === Vloží speciální proměnnou. Např. TCENM, TTSG nebo TTSH. ==== Hledat ==== === Najít (Ctrl+F) === Funkce vyvolá okno pomocí, kterého je možné vyhledat zadaný řetězec. Je možné rozlišovat malá a velká písmena anebo i celá slova. Je možné hledat směrem dozadu nebo dopředu v textu. === Nahradit === Funkce vyvolá okna pomocí, kterého je možné nahradit zadaný řetězec. Je možné rozlišovat malá a velká písmena anebo i celá slova. Je možné hledat směrem dozadu nebo dopředu v textu. Pokud je nalezen řetězec, který se má nahradit, je uživatel ještě dotázán zda se náhrada má provést. === Najít další(F3) === Vyhledá (označí) řetězec, který byl naposled hledán (směr vpřed). === Najít předchozí(shift+F3) === Vyhledá (označí) řetězec, který byl naposled hledán (směr vzad). === Jdi na řádek (Ctrl+G) === Kurzor skočí na zadaný řádek, pozici. ==== Zobrazit ==== === Nástrojový panel === Zobrazí(skryje) nástrojový panel === Panel funkcí === Zobrazí(skryje) panel funkcí === Pravítko === Zobrazí(skryje) pravítko ==== Speciální funkce ==== === Zobraz makro === Zobrazí zadané okno ==== Nápověda ==== Zobrazí tuto nápovědu === Nápověda === ===== Implementace makra ===== Je distribuována a uživatel ji tedy nemůže vytvářet ani jinak měnit. Určuje s jakými datovými tabulkami může makro pracovat a tedy pro jaký modul je makro určeno. ===== Rozhraní makra ===== Je informace se kterými tabulkami makra pracuje. Rozhraní je uloženo v databázi. Má jak informativní účel. Tak slouží i ke kontrole syntaxe při volání **podmakra**. Rozhraní se generuje z implementace makra. U podmakra se rozhraní definuje přímo v makru pomocí speciální syntaxe. Speciální syntaxe pro definici rozhraní podmakra. //vartable xxx:XXX:table|feature|subs|property:i|o|io;// Kde vartable je speciální výroz pro uvození deklarace rozhraní, xxx je označení proměné makra (např. cPolozka), XXX je třída (CPolozka), table označuje třídu, feature hodnota vlastnosti, subs substituci a property soubor atributů vlastnosti objektu, i je označení pro vstup, o pro výstup a io pro vstup a výstup. Přístup k příslušnému atributu se provede přes zápis tečky a názvu atributu. ^ Seznam atributů pro vlastnost ^ ^ Název atributu ^ Popis ^ | sada | kód sady | | hodn | hodnota vlastnosti (numerika nebo alfanumrika v závislosti na formátu) | | thodn | určuje chování konfigurátoru. "A" - bez výběru nebo "B" - s automatickým výběrem | | vvliv | vliv vlastnosti | | hvliv | vliv hodnoty | | vlkf | koeficient vlastnosti | | vlekf | exponent koeficientu vlastnosti | | hkf | koeficient hodnoty | | hekf | exponent koeficientu hodnoty | | hkon | konstanta hodnoty | | hekon | exponent konstanty hodnoty | | nazev | název vlastnosti | | tsub | technologická substituce | | lmin | minimální limita | | lmax | maximální limita | ===== Syntaxe makra ===== Makro se skládá z komentářů a příkazů. Komentář začíná znaky **/* ** a končí znaky ** */ **. ==== Seznam příkazů ==== * příkaz přiřazení * CASE * IF * blok * CALL * WRITELOG ==== Příkaz přiřazení ==== Příkaz přiřazení se skládá z levé části (výstupní hodnota ve formě proměnné), znaku přiřazení **:=**, pravé části (výraz) a je ukončen středníkem. Nutnost mezer mezi operátory, proměnnými a konstantami není povinná kromě logických operátorů (OR,AND,NOT). Také není povinnost dodržovat psaní velkých písmen logických operátorů (OR i or) nebo funkcí. {{:orfertopen:editormaker:prirazeni.png?400|}} ==== CASE ==== Příkaz CASE slouží k větvení makra. Důležité pro optimalizace makra. Umožňuje jeho optimalizaci rychlosti. Příkaz začíná klíčovým slovem **CASE** a končí **ENDCASE**. Za CASE následuje výraz, dle kterého se pak větví příkaz. Následuje klíčové slovo IN a za ním jsou konstanty výrazů. Je možné jich uvést více a oddělit čárkou. Pokud se shodují s výrazem je proveden příkaz za ":". Pro případ že není shoda s žádným výrazem je možné použít **otherwise:** a za ním příkaz. {{:orfertopen:editormaker:case.png?400|}} ==== IF ==== Příkaz IF slouží také k větvení makra. Ovšem rozdělí provedení jen na dvě větve. Příkaz začíná klíčovým slovem **IF** a končí **ENDIF**. Pak následuje logický výraz a klíčové slovo **THEN** a příkaz pro pravdivý výraz. Dále může následovat klíčové slovo **ELSE** a příkaz pokud výraz není pravdivý. {{:orfertopen:editormaker:if.png?400|}} ==== CALL ==== Provede zavolání podmakra. **CALL('podmakra');**. ==== WRITELOG ==== Příkaz je určen k uživatelskému logování makra. ===== Seznam datových typů v makru ===== * text (STR) nemá žádné omezení * číselná hodnota (NUM) * logická hodnota (BOOL) * datumová hodnota (DAT) ===== Stavební části výrazu ===== * proměnná * konstanta * operátor * funkce ==== Proměnná ==== Název proměnné by měl být ve tvaru S1_S2, kde S1 je prefix pro danou třídu nebo vlastnost a S2 je název atribut nebo identifikace vlastnosti. Prefix S1 je definován v modulu implementace makra. Toto plnění je podmíněno nadefinováním speciálních tříd, které jsou distribuovány. Dále je možné použít pomocné proměnné numerické (Num_1 až Num_50), řetězcové (Str_1 až Str_50), logické (Bool_1 až Bool_50) a datumové (Dat_1 až Dat_50) Existuje také speciální logická proměnná Bool_Exit, pomocí které je možné ukončit provádění makra. Tato proměnná je nastavena na hodnotu FALSE, pokud se nastaví na hodnotu TRUE, pak se ukončí provádění makra. Jako výstupní hodnotu lze použít proměnné Num_R01 - Num_R10 (Num_R101-Num_R130), Str_R11 - Str_R20 (Str_R201-Str_R230), Bool_R21 a Dat_R22. Čísla mají význam pro použití maker v maskách. I nadále je možné používat proměnné Num_return(R01), Str_return(R11), Bool_return(R21) a Dat_return(R22), které budou automaticky přiřazeny prvnímu číslu. Kromě těchto výstupních proměnných existují ještě speciální výstupní proměnné. Jedná se o řetězcové proměnné Str_RT1 - Str_RT10, které je možné využít pouze v makru s implementací 915. Dalším speciálním typem je struktura (tabulka) TCENM, která umožňuje uživateli v implemetaci 1535 definovat obsah rozborové tabulky pro výpočet ceny KFG přes makro. === Uživatelsky definované proměnné === Uživatel může definovat svoje vlastní proměnné pomocí speciální syntaxe. Nejdříve se uvede klíčové slovo "variable", potom následuje datový typ (NUM,STR,BOOL,DAT) a pak seznam proměnných zakončený středníkem. Například "variable NUM _Sirka;". Seznam může být oddělený čárkou nebo mezerou. Název proměnné musí začínat znakem "_", pak následuje nečíslicový znak. Název se může skládat z malých a velkých písmen (a..z, A..Z) číslic (0..9) a znaku "_". Malá a velká písmena se při kontrole nerozlišují. Maximální délka je dvacet znaků. Proměnné jsou lokální. Jsou tedy platné pouze v rámci jednoho makra. Pokud je z makra vyvoláno podmakro, pak podmakro tyto proměnné nezná. V podmakru je tedy možné nadefinovat proměnnou se stejným názvem jako v makru. ^ Seznam atributů pro tabulku TCENM ^ ^ Název atributu ^ Popis ^ | sada | kód sady | | nazev | Název parametru | | typ | Typ parametru | | konst | Konstanta | | koef | Koeficient | | kod | Atribut se speciálním významem (určuje způsob zobrazení řádku) "SPACE" - mezerový řádek | | tisk | Příznak tisku | | rab | Vliv na rabat | | tsskod | Rabatová skupina | ==== Konstanta ==== Číselná konstanta se může skládat z číslic 0-9 a znaku desetinného místa (default tečka). Číselnou konstantou může také být hodnota výraz "PI". Řetězcová konstanta je jakýkoli text uzavřený do speciálních oddělovačů textu ("'" jednoduché uvozovky ). Oddělovač řetězce je možné použít v řetězci jen ve speciálním obalu. Před i za tmto znakem musí být dvojité uvozovky """ . Pak tento znak není brán jako řídící, ale obyčejný text. Ve výsledném textu jsou dvojité uvozovky odstraněny. Logickou konstantou může být výraz "TRUE" nebo "FALSE". Datumovou konstantou je datum ve tvaru "DD.MM.RRRR". Vnitřně se s datumem pracuje jako s javovským typem Date. ==== Operátor ==== ^ Seznam operátorů ^ ^ Druh ^ Popis ^ | sada | kód sady | | OR | logické nebo | | AND | logické a | | NOT | negace | | <> , >< | nerovná se | | <= , =< | menší nebo rovno | | >= , => | větší nebo rovno | | < | menší | | > | větší | | +,- | plus, mínus | | *,/ | krát, děleno | | (,) | levá a pravá závorka | | := | znak přiřazení (slouží k naplnění proměnné) | | ;| znak pro označení konce příkazu | ==== Funkce ==== Funkcí se rozumí řetězec ve tvaru ABC(x,y,…), kde ABC je název funkce a x,y jsou parametry funkce. ^ Seznam funkcí ^ ^ Název ^ Popis ^ | Matematické | | | ABS | absolutní hodnota | |AVG |Průměrná hodnota (C1 ,...,Cn) C | |COS |Provede se výpočet funkce cosinus (C) C | |COTG |Provede se výpočet funkce cotangens (C) C | |DIV |Celočíselné dělení (automaticky se provádí konverze parametrů na celočíselné hodnoty) (C,C) C | |DUAL |Vrátí hodnotu duálního kursu () C | |FAKT |Výpočet faktoriálu čísla (C) C | |HPROC |Výpočet hodnoty z celku (parametry: procento, celek) (C,C) C | |MAX |Maximální hodnota (C1 ,...,Cn) C | |MIN |Minimální hodnota (C1 ,...,Cn) C | |MOC |Provede se umocnění parametru 1 parametrem 2 (2. parametr není povinný,pokud by chyběl provede se 2. mocnina) (C,C) C | |MOD |Zbytek po celočíselném dělení (automaticky se provádí konverze parametrů na celočíselné hodnoty) (C,C) C | |OBJHRA |Objem hranolu (C,C,C) C | |OBJVAL |Objem válce (C,C) C | |OBSKRU |Obsah kruhu (C) C | |OBSOBD |Obsah obdélníku (C,C) C | |OBVKRU |Obvod kruhu (C) C | |OBVOBD| Obvod obdélníku (C,C) C | |ODMOC |Provede se 2. odmocnina zadaného čísla (C) C | |POCBEZNUL |Počet nenulových hodnot z výčtu čísel (C1,...,Cn) C | |PROC |Výpočet procenta části z celku (parametry: část, celek) (C,C) C | |ROUND |Zaokrouhlení (parametry: zaokrouhlované číslo, počet míst zaokrouhlení, pokud je číslo záporné provádí se zaohrouhlení před des. místem) (C,C) C | |ROUNDDOWN |Zaokrouhlení dolů (parametry: zaokrouhlované číslo, počet míst zaokrouhlení, pokud je číslo záporné provádí se zaohrouhlení pro před des. místem) (C,C) C | |ROUNDUP |Zaokrouhlení nahoru (parametry: zaokrouhlované číslo, počet míst zaokrouhlení, pokud je číslo záporné provádí se zaohrouhlení pro před des. místem) (C,C) C | |SIN |Provede se výpočet funkce sinus (C) C | |SOUCIN |Součin zadaných čísel (parametry: výčet čísel) (C1,...,Cn) C | |SUM |Součet hodnot (C1 ,...,Cn) C | |SUMK |Součet druhých mocnin zadaných čísel (C1,...,Cn) C | |TG |Provede se výpočet funkce tangens | | Textové | | |ALLTRIM |Odstraní všechny mezery (zleva, zprava)a uvnitř nechá pouze jednu mezeru (S) S | |ATOI |Převede textový řetězec na numeriku (pokud lze, mezery jsou odřezány) (S) C | |CTOA |Převede numeriku na textový řetězec dle uvedeného formátu. Příklad formátu "04.2" (C,S) S | |DTOA |Převede numeriku na textový řetězec s desetinou částí, druhý parametr udává počet desetin (C,C) S | |ITOA |Převede numeriku na textový řetězec, bez desetinné části, jako druhý parametr je možné určit typ formátování doplnění znaků na zadaný počet míst (nuly nebo mezery)("NXX" - nuly, "MXX" - mezery a typ XX udává délku výstupu je to nějaké číslo např "N9" zformátuje číslo na 9 znaků s vedoucími nulami) (C,S) S | |JESTRING |Zjistí zda řetězec 1 je obsažen v řetězci 2. (S,S) B | |FORMAT |Upraví hodnotu dle zadaného formátu. Volá se javovská funkce String.format. Je nutné znát syntaxi funkce. (S,SN) S | |LENGTH |Určí délku řetězce (S) C | |LINESEP |Funkce vrátí znak konce řádku. | |LOWER| Konverze na malá písmena (S) S | |NVKA |Funkce vrací řetězec ve tvaru "a-bbb-c-s/", kde a,bbb,c,d jsou zadané parametry. (S,S,S,S) S | |NVKB |Funkce vrací řetězec ve tvaru "a:bbb-ccc-text", kde a,bbb,c,d jsou zadané parametry. (S,S,C,S) S | |REPLACE |Doplní druhý řetězec(2. parametr) do prvního řetězce(1. parametr) od zadané pozice (3. parametr) v zadané délce(pokud nula pak celý řetězec,poslední parametr) (S,S,C,C) S | |STRCOUNT |Spočte počet výskytů řetězce2 (podřetězec) v řetězci1 (S,S) C | |STRINGPOS |Určí pozici podřetězce v řetězci, hledá se od zadané pozice, pokud není nalezen je vrácena nula(parametry: vstupní řetězec,hledaný podřetězec, pozice od pokud je pozice nulová hledá se od začátku) (S,S,C) C | |STRREPLA |Nahradí všechny výskyty řetězce2 řetězcem3 v řetězci1 (S,S,S) S | |SUBSTRING |Vytvoření podřetězce ze zadaného řetězce (parametry: vstupní řetězec, pozice od, délka,) (S nebo LS,C,C) S nebo LS | |TRIMSTR |Odstraní mezery zleva nebo zprava. Je určeno 2. a 3. parametrem (S,B,B) S | |UPPER |Konverze na velká písmena | | Logické | | |IF |Podmínková funkce, vyhodnotí podmínku(1. parametr)a pokud je podmínka splněna je výstupem hodnota 2. parametru jinak hodnota 3. parametru | |JENUM |Funkce testuje řetězec(1. parametr) a pokud je možné jej převést na numeriku vrací hodnotu TRUE jinak vrací FALSE | | Datumové | | |AKTDAT |Vrací akuální datum () D | |AKTDYS |Vrací akuální datum v databázovém formátu () T | |DATDYS |Datum ve formátu RRRRMMDD převede na datum typu X20(př. "2011-10-14 10:47:54"). (D) S | |DEN |Vrací den ze zadaného datumu (parametry: datum ) (D) C | |DENTYDNE |Určí pořadí dne v týdnu (1-pondělí,7-neděle ) (D) C | |DYSDAT| Vezme z datumu (formát x 20) datum a konvertuje do formátu RRRRMMDD. (S) D | |DYSTIM| Vezme z datumu (formát x 20) čas a vratí v zadaném fotmátu (default hh:mm:ss) (S) S | |DTON| Zadané datum (1. parametr) konvertuje na numeriku. 2. parametr udává výstupní tvar. Buď se zadává 'RRRRMMDD' nebo 'DDMMRRRR' (D,S) C | |DTOT |Převede datum na textový řetězec dle uvedeného formátu. Příklad formátu "DD.MM.RRRR" (D,S) S | |MESIC |Vrací měsíc ze zadaného datumu (parametry: datum ) (D) C | |NTOD |Zadané číslo (1. parametr) konvertuje na datum. 2. parametr udává vstupní tvar. Buď se zadává 'RRRRMMDD' nebo 'DDMMRRRR' (C,S) D | |POCDNU |Určení počtu dnů od počátku roku po zadané datum (parametry: datum ) (D) C | |PRIDAT |Určení datumu přírůstkem (+/-) počtu dnů od zadaného datumu (parametry: datum,počet dní) (D,C) D | |ROK |Vrací rok ze zadaného datumu (parametry: datum ) (D) C | |ROZDAT |Určení počtu dnů mezi dvěma daty (parametry: datum1,datum2 ) (D,D) C | |SLOZDAT |Složí datum z dne, měsíce a roku (C,C,C) D | |TYDEN |Určí pořadí týdne dle data(parametry: datum ) | | Speciální | | |DEJLOGIN| Funkce vrátí login uživatele. | |GENSAD |Jedná se o speciální funkci, která se využívá v makrech pro řízení konfigurace (KGZ-TYP = "3). Funkce definuje generovanou sadu konfigurátoru. Počet parametrů závisí na zadaném typu. Prvním parametrem je název vlasnosti. Druhým je typ zpracování ("A" - výčet, "B" - interval, "C" - řetězec, "D" - interval s krokem,"E" - negativní výčet, "G" - výčet v jednom parametru na 3. pozici 2. parametru je znak oddělovače). K typu je možno přidat znak "+", kterým říkáme, že podmínka doplněna k již existujícím. Jinak jsou původní smazány. Počet a obsah dalších parametrů závisí na již zmíněném typu. Od verze 13.1 byly doplněny další typy "a","b","e","g", které jsou obdobou stávajících, ale zadané hodnoty se testují na technologickou substituci (KGH-T-HODNOTA) (S1,...,Sn) B | |GETENV |Funkce načte zadanou proměnnou prostředí. Například GETENV('ORFDIR') (S) S | |MAIL| Funkce odešle mail dle zadaných parametrů (1. parametr je emailová adresa příjemce zprávy, 2. parametr je text záhlaví, 3. parametr je text, 4. parametr je příloha) (S,S,S,S) B | |NDAT |Funkce zjistí hodnotu pro zadaný atribut tabulky("POC" - počet vět, "MAX" - maximální hodnota, "MIN" - minimální honota, "SUM" - součet hodnot, "AVG" - průměr hodnot,)Funkce je určena pouze pro numerické atributy a databázovou verzi. (S,S) C | |PREKLAD |Funkce provede překlad zadaného výrazu (1. parametr). 2. parametr je mateřský jazyk (jazyk zadaného výrazu) a 3. parametr je jazyk na který bude překlad proveden (S,S,S) S | |PSQL| Funkce je určena pouze pro databáze. Funkce provede provede zadaný SQL výraz pro danou tabulku. Prvním parametr je sčítaný výraz. Druhým parametrem je podmínka (použije se pro SQL dotaz) a třetím parametrem je název tabulky. Je možné použít pro načtení alfanumerických atributů. Příklad PSQL('ts_ina','ts_kc = 10','ts') (S,LS,S) C | |RUNCMD |Funkce spustí zadaný příkaz na klientovi (například zobrazení html stránky). (LS) B | |RUNSQL |Funkce je určena pouze pro databáze. Provede spuštění zadaného SQL dotazu. Výstupem je řetězec. (LS) S | |RUNUPD |Funkce je určena pouze pro databáze. Provede spuštění zadané vložené procedury. (LS) B | |SUMT| Funkce je určena pouze pro databáze. Funkce provede součet zadaného parametru s omezujícími podmínkami. Prvním parametr je název položky dle databázového popisu. Druhým parametrem je podmínka (použije se pro SQL dotaz). Příklad SUMT('ts_lbneu','ts_kc = 1') (S,LS) C | |SUMX |Funkce je určena pouze pro databáze. Funkce provede součet zadaného parametru s omezujícími podmínkami. Obdoba funkce SUMT. Prvním parametr je sčítaný výraz. Druhým parametrem je podmínka (použije se pro SQL dotaz) a třetím parametrem je název tabulky. Příklad SUMT('ts_lbneu * 2','ts_kc = 10','ts') (S,LS,S) C | |TABMKT |Speciální funkce pro práci s tabulkou MKT. Jako parametr se zadává operace nad tabulkou MKT. typy operací: "create" - založení, "create1" - založrní a pokud existuje smaže a zloží znovu, "update" - aktualizace existující věty, "read" - načtení věty, "delete" - smazání věty, výstupem je textový kód ve tvaru "00" - OK, "01" - věta nebyla načtena, "02" - věta nebyla založena,"init" inicalizace věty MKT (S) S | |TABSQL |Speciální funkce pro práci s databází. Je popsáno dále. Je možné použít pouze pro implementaci TABSQL. Textové výrazy je nutné uvádět ve dvojitých uvozovkách. Podobně jako v jiných SQL příkazech v makrech. Pokud SQL dotaz skončí chybou vrací se ve stringové proměnné. Pokud je v‘e v pořádku vrací se prázdný řetězec. (S,S,LS) S | |XDAT |Funkce je pouze pro databáze, může provést výpočet až pěti hodnot 1. parametr je speciální definice pro provedení výpočtu, 2. parametr udává podmínku pro databázový příkaz(ts_kc = 1). Význam 1. parametru: jednotlivé části oddělěné "", na 1. místě je jméno tabulky, následuje počet vypočtených hodnot až 5, pak jsou trojice tohoto významu: typ výpočtu (S - suma, A - průměr, P - počet, M - maximum, I - minimum), číslo proměnné kam bude uloženo a číslo sloupce pro který bude výpočet | |RUN |Funkce vyvolá externí modul. První parametr udává typ volání ("call" - zavolá cobolský modul, "print" - zavolá tiskový program, "external" - zavolá externí funkci). Druhým parametrem je název vyvolaného programu. | |getBrowseEditState| Návratovou hodnotou je kód režimu zpracování| |getPohled| Název aktivního pohledu| |getSelectionRequestId|Vrací id výběru browsu| |getTrida|Název třídy| |getVolba|Název volby| |getWFAkce|Kód workflow akce| |nactiDoprovodnyText|Dle zadaných parametrů načte zadaný text| |setSubEntity|Načte a uloží podřízenou entitu do hlavní dle zadaného klíče| Příklad spuštění tiskového modulu C351 pomocí funkce RUN. {{:orfertopen:editormaker:c351.png?400|}} ===== Seznam chybových zpráv ===== ^ Seznam ^ ^ Kód ^ Popis ^ | 00 | Bez chyby | |01 | Prázdný řetězec | |02 | Chybná syntaxe | |03 | Špatná proměnná (1.část), zřejmě špatně zadané číslo implementace | |04 | Neznámá proměnná | |05 | Špatná konstanta | |06 | Špatná proměnná (1.část), neznámá číslo proměnná | |07 | Nepovolený znak | |08 | Nepovolená kombinace | |09 | Špatné závorky | |10 | Na levé straně přiřazení musí být pouze proměnná | |11 | Makro nebylo načteno | |12 | Špatný počet parametrů| |13 | Špatné typy parametrů | |14 | Přiřazení do proměnné,která je pouze pro vstup | |15 | Dělení nulou | |16 | Chyba při plnění proměnné | |17 | Chybná délka příkazu | |18 | Chyba přetečení proměnné | |19 | Neznámá funkce | |20 | Neexistující vlastnost | |21 | Nebyl předán ts(sts) záznam do zpracování | |22 | Nebyl načten záznam uložení varianty (UVS) | |23 | Chyba při zápisu vlastnosti | |24 | Nelze převést na numeriku (funkce atoi) | |25 | Chybí středník | |26 | Neukončená poznámka | |27 | Překročena hodnota maximálního počtu parametrů | |28 | Chybné datum (datum není správné z intervalu let 1600 - 2400) | |29 | Atribut nemá povolení k zápisu (nutno povolit v masce dusxxxxx)| |30 | Příkaz musí obsahovat alespoň jeden znak přiřazení ":=" | |31 | Makro nemá statut "5", nebyla tedy ověřena správnost syntaxe.| |32 | Nebyla načtena implementace makra. | |33 | Překročen maximální počet řádků makra. | |34 | Neukončený řetězec | |35 | Neukončený komentář | |36 | Maximální počet znaků v makru | |37 | Funkce je pouze pro databázovou verzi | |38 | Atribut použitý v datové funkci neexistuje | |39 | Neznámý parametr použitý v datové funkci | |40 | Třetí parametr funkce KURZ musí být číslo dle HNR tabulky wa| |41 | Podmakro neexistuje | |42 | Nejedná se o podmakro | |43 | V podmakru nelze volat podmakro | |44 | Výraz nelze použít v podmakru | |45 | Chybně vyplněný první parametr funkce DEJVLA | |46 | První parametr funkce XDAT je chybný | |47 | Na tomto místě již není možné definovat proměnné | |48 | Neznámý datový typ | |49 | Chybně definovaný uživatelský název proměnné | |50 | Definice rozhraní je chybná. | |51 | Rozhraní volaného podmakra se neshoduje s makrem.| |52 | Toto rozhraní nelze definovat. | |53 | Chyba syntaxe příkazu IF. | |54 | Chyba zápisu BEGIN a ENDBEGIN. | |55 | Chyba syntaxe příkazu CASE. | |56 | Překročen maximální počet vnoření. | |57 | Nelze provsét simulaci. Maximální počet proměnných pro simulaci je 1500.| |58 | Tento atribut není v tabulce vlastností definován. | |59 | Používáte nadstavbovou část makra. Musíte si koupit licenci. |