verze:eso9current
ESO 9 změny ve verzi 7.2 z 31.12.2025
Obecný klient
Změny v technologii .NET
- Obecný klient
Upraveno získávání licence pro Fiskální modul. Licence se stáhne 1x a uloží do Local Storage a následujících 12 hodin se stažení neprovádí, ale jen se načte ta uložená. Není nutné licenci stahovat při každém načtení stránky. - Obecný klient
Oprava posunu v browse šipkou dolů na posledním záznamu při změně dat, pokud vzniká po uložení nový záznam. Typicky se používá na účetních záznamech, kdy se opraví částka a šipkou dolů se uloží. nyní se přejde na nově vzniklý záznam. - Obecný klient
Přidáno načítání vlastních fontů do Prohlížeče a Návrháře Stimulsoft v obecném klientovi. - Obecný klient
Doplněno načítání externích obrázků do resource sestavy v návrháři sestav OK. Načítání probíhá z lokálního support webu dle definice ../Eso9Supp.net/Lib/Img/STIresources/list.json - Obecný klient
Opravena editace TextArea v otevřeném číselníku. Docházelo k chybě při vložení "Enter", kdy se řádek rozeditoval a přešlo se na následující pole. - Obecný klient
Oprava URL_ACTION na buttonu. Při doInfo se rovnou přešlo a nečekalo se na potvrzení. Nyní se vyčká na potvrzení a zavření informace. - Obecný klient
Doplněno generování QR kódu pro platbu a následné spuštění sp.
Parametry mf_QRCode=textová reprezentace QRPlatby a mf_QRplatba_After=Název Sp spuštěné po zavření okna s kódem.
Vyvolání kódu - Obecný klient
Opraveno chybné chování, kdy po uložení dokladu ALT+U proběhl FCHange, ze kterého se zobrazilo informační hlášení, ale již se nezobrazilo hlášení z ValRec. - Obecný klient
Oprava pohybu v browse šipkami vpravo/vlevo po editaci řádku a jeho uložením šipkou dolů/nahoru. - Obecný klient
Doplněn webový našeptávač subjektů adresa api je https://api2.eso.cz/eso9subjautocomplete autentikace basic, uživatelské jméno = IČ subjektu aplikace a heslo = registrační číslo.
Zapojeno je na formuláři subjekt/subjekt.htm v poli SUBJ_NAZEV vlastnost mask=";ACSUBJCZ"
Při psaní se nabízí výběr subjektů po vybrání šipkou (Nahoru/Dolů) nebo dvojklikem myší, dojde k přenosu Názvu ulice města a psč a státu do formuláře. - Obecný klient
Do výpisu mých chatů doplněno filtrování Nepřečtené/Všechny a filtrování dle hledaného textu. Filtrování hledaného textu funguje od tří znaků výše.
Doplněn parametr MAX_DAY_CHATLIST skupina Chat. Definuje počet dní zpětně, které chaty zobrazit. Slouží k omezení zobrazení chat listu, aby se nezobrazovaly staré chaty, které již nejsou aktuální. - Obecný klient
Oprava pohybu enterem v číselníku zobrazeném v editoru. Pokud byl číselník s "taby" nefungoval pohyb. - Obecný klient
V obecném klientovi odtraněna podpora vzhledu 5.9. - Obecný klient
QR platba
Doplněna kontrola parametru MF_ZOBRAZITQRCODE pokud je jiný než 1 QR kód se nezobrazí. Tato kontrola byla doplněna i do dialogu platba kartou. - Obecný klient
Doplněn mechanizmus pro zobrazování tooltipu v browse/tabulce u řádku nebo položky.
Popis na https://wiki.eso9.cz/doku.php/techdoc:tooltipradkupolozky
Aplikace ESO9 Start
Účetnictví
- 1. 1. 1.10 - Import plateb z PAM
Upravena procedura spPAM_ZalozPlatby pro možnost výplaty v jiné měně.
Z aplikace PAM se nyní z pohledu QPAM_PLATBY_S načítají nové položky Mena a dtPrepocetKursu. Pokud měna není vyplněna, pak se tak jako dosud vytváří interní doklad v domácí měně. Pokud je měna vyplněna, kontroluje se, zda existuje v číselníku měn - pokud neexistuje, je hlášena chyba a import nelze provést. Jestliže není vyplněno datum pro přepočet kursu, vezme se pro pracovní den v kalendářním měsíci následujícím po období, ze kterého se import z PAM provádí. Pokud k tomuto datu neexistuje kurz ČNB střed, pak je hlášena chyba - v tomto případě je nejdříve v číselníku měn zadat kurz k příslušnému datu a import opakovat.
Interní doklad se pak založí v požadované měně, částka je přepočtena kurzem k zadanému datu. Zaokrouhlení se provede dle nastavení zaokrouhlení v typu dokladu (pro příslušný vzor a měnu). - 1. 1. 2. 3 - Výkaz DPH (legislativa SK) (doplněk č. 1 předchozí verze)
V sestavě detailu řádku výkazu (volaného z pracovní sestavy výkazu DPH) se v nadpisu nezobrazoval kód a název řádku (projevovalo se po instalaci verze 7.1 pro výkazy DPH do období 2025.06)
- opravena funkce fnDphTextyRadku - 1. 1. 2. 3 - Výkaz DPH (legislativa SK)
Upravena tvorba ročního vypořádání DPH s ohledem na změny výkazu DPH (řádky pro 2 sníženou sazbu DPH).
Upravené stránky :
- ucet\Rocni_VyporadaniSK.htm
- ucet\RocVypor_Kracene.htx
- ucet\RocVypor_Kracene.idc
Nové stránky :
- ucet\RocVypor_VypocetSK25.htx
- ucet\RocVypor_VypocetSK25.idc
Tabulka HISDPH
- doplněny sloupce : KODRADKUDPH, VLTYPZAZNAMU, VLCITATEL, VLJMENOVATEL, VLZNAMENKO, KODPROVYKAZDPH
- změněn klíč HISDPH_Key1
Změněn pohled QHISDPH_SK
Upravené nebo nové funkce a procedury :
- spHisDPH_CalRec
- spHisDPH_PrepocetSK2025
- fnDefiniceKoefDPH_SK
- fnDefiniceKoefDPH_SK
- fn_VykazDPH_RocniKoef
- spVykazDPH_Zaeviduj
- spVykazDPH_ZaevidujObdobi
- fnRocniVyrovnani_Detail
- spVykazDPH_VypocetVyporadani_SK200710
- spVykazDPH_Vypocet450
- spDPH_RocVyporSK21
- spVykazDPH_PrepoctiIDU
- fnDPH_CisloRadku_ToKod
- fnDPH_KodRadku_ToCislo
- spKHDPH_Calrec
- spKHDPH_BeforeInsert
- spKHDPH_BeforeUpdate
- fnKVDPH_2017 - 1. 1. 2. 3 - Výkaz DPH - kontrolní výkaz DPH (legislativa SK)
V exportovaném XML souboru v oddíle C1 kontrolního výkazu nebyla uvedena sazba DPH
Upraven export kontrolního výkazu DPH.
V oddíle C1 se nebude uvádět hodnota Sadzba dane a Rozdiel sumy dane v eurách (řádek 5 a 6) pouze v případě kódů pro výkaz DPH 56 až 60. V ostatních případech bude hodnota uvedena.
Upravena procedura spExport_KHDPH_XML_SK201701, funkce fnKVDPH_2017 a fnKVDPH_2017_ProTisk
Finance
- 1. 2. 1. 5 - Bankovní výpisy - automatické zaúčtování transakční daně (legislativa SK)
V parametrech (skupina finance) byl vytvořen nový parametr Ucet_TransakcniDan (Kód účtu pro transakční daň).
Parametr je možno použít pro automatické zaúčtování transakční daně na zadaný účet.
Vzhledem k tomu, že banky poskytují bankovní výpisy v různých tvarech, může v nich být transakční daň identifikována různými způsoby v závislosti na typu vstupního souboru.
Byla vytvořena standardní funkce fnidUctOsn_TransakcniDan, která definuje určení účtu transakční daně pro nejpoužívanější typy bankovních výpisů (např. CAMT 053.001.02, Everifin).
V případě potřeby lze funkci uživatelsky přepsat pro další typy vstupních souborů.
Nyní se bankovní výpis považuje za transakční daň v případě, že je to výdajový doklad (HDOK.vlHPohledavka_Zavazek = 4 ) a současně je splněna některá z těchto podmínek :
- konstantní symbol = 0960
- textová poznámka obsahuje text "TRANSACTION_TAX" nebo "Transakcna dan"
- transakční kód je 90000801xx (viz formát CAMT 053.001.02, v takovém případě standardní procedura pro import spImportBanka_CAMT053102 naplní TextPozn2 XML záznamem, ve kterém je informace o tom, že se jedná o transakční daň)
Funkci je pak možno použít buď v uživatelském přepočtu v typu dokladu (Přepočet řádku), např :
idUctOsn_MD = isnull(idUctOsn_MD, dbo.fnidUctOsn_TransakcniDan(NULL, vlhPohledavka_Zavazek, K_Sym, TextPozn, TextPozn2))
Tím se zajistí naplnění účtu MD na hlavičce dokladu (a tento se pak následně účetním předpisem převezme do účetního zápisu).
Nebo je možno definovat účet v účetním předpisu (na hlavičce dokladu zůstane nevyplněný, bude pouze v účetním zápisu) - v tom případě je třeba v účetním předpise BAV (předpis č. 1 - BAV_MD) nastavit u položky idUctOsn:
isnull(dbo.fnidUctOsn_TransakcniDan(NULL, HDOK.vlhPohledavka_Zavazek, HDOK.K_Sym, HDOK.TextPozn, HDOK.TextPozn2), HDOK.idUctOsn_MD) - 1. 2. 3. 8 - Podklady pro transakční daň (legislativa SK)
Vytvořena nová činnost 1.2.3.8 Podklady pro transakční daň (legislativa SK)
Doplněna sestava PodkladyProTransakcniDan pro vytvoření podkladů pro odvod transakční daně.
Pokud banka automaticky neprovádí vyčíslení transakční daně (zpravidla to budou banky se sídlem mimo SK), je potřeba v takovém případě vypočítat a přiznat daň na stránkách finanční správy.
Sestava (export v excelu) se provádí pro zadaný peněžní účet, standardně pro všechny výdajové doklady vyčísluje transakční daň ve výši 0.004% (minimálně 0.01 a maximálně 40 EUR).
Pokud je třeba pro určité pohyby (výběry kartou) použít daň 0.008% nebo naopak se jedná o pohyb nepodléhající poplatku, je možno toto definovat uživatelskou funkcí fnvlUziv_UrciTransDan (například na základě textu v poznámce bankovního výpisu).
- nová činnost 1.2.3.8 Podklady pro transakční daň
- nová stránka finance\TransakcniDan_filtr.htm
- nové procedury spQFTRANSAKCNIDAN_MF_KOD_PENEZNIHO_UCTU, spQFTRANSAKCNIDAN_MF_IDPENUCET, funkce fnvlUziv_UrciTransDan, fnPodkladyTransakcniDan
Saldokonto
- 1. 3. 4.13 - Oprava odpočtu daně pohledávky po splatnosti (doplněk č. 2 předchozí verze)
Zobrazovaly se i doklady, které měly DUZP v roce 2025, ale datum DPPD bylo z roku 2024.
Na tyto faktury se nemá povinnost odpočtu vztahovat - opravena funkce fnQFPUNeuhrazene_6m - 1. 3. 4.13 - Oprava odpočtu daně pohledávky po splatnosti (doplněk č. 2 předchozí verze)
Upravena funkce fnQFPUNeuhrazene_6m - vyřazeny doklady typu FPZD.
Nákup
- 2. 1. 3. 7 - Složky nákupní objednávky do faktury přijaté
Pro správnou funkčnost doplněny vazby mezi vzory NOB a FPU
- VZORNOBT (Nákupní objednávka tuzemská) <----> VZORFPUNST (FPU nákup na sklad tuzemská)
- VZORNOBE (Nákupní objednávka zahraniční v EU) <----> VZORFPUNSE (FPU nákup na sklad zahraniční v EU)
- VZORNOBZ (Nákupní objednávka zahraniční mimo EU) <----> VZORFPUNSZ (FPU nákup na sklad zahraniční mimo EU)
Sklad
- 2. 3. 3. 6 - Účetní uzávěrka skladů
Provedeno:
- během účetní uzávěrky skladů se vypíná kontrola tvrdé blokace na šaržích stejně jako už se vypíná na úrovni zboží na skladě
- přidány parametry do funkcí a procedur provádějící účetní uzávěrku skladů pro typ dokladu a seznam pohybů pro výdejové pohyby, pro které se nebudou přepočítávat ceny na složce dokladu. Smyslem je zafixovat ceny na složce skladového dokladu, a hlavně cen ovlivňující hodnotu skladu jako HDJCENASPOCTENA a HDCCENASPOCTENA z důvodu reklamací bez předchůdce.
Toto lze použít pro vrácení prodaného zboží z předchozího systému, kdy není k dispozici původní doklad, ale uživatel umí dohledat původní skladovou cenu.
Spolu s tím upraveny následující SQL objekty:
- trigger „trZbozSklSarze_INSUPD“: zde se během účetní uzávěrky vypíná kontrola tvrdé blokace
- funkce „fnQUCETUZAVERKA_PARAM“ a procedura „spEso9_UctovaniSkladu“: zde doplněny nové parametry zajišťující fixaci cen na složce dokladu
- parametr „@MF_TypSVUFIX“ typu VARCHAR(10) = 'SVU': Typ dokladu fyzických výdejových skladových dokladů - typ dokladu kde je složka s pohybem @MF_PohybSVUFIX bez přepočtu
- parametr @MF_PohybSVUFIX typu VARCHAR(255) = '''VXX''': Pohyby fyzických výdejových skladových dokladů – složka dokladu bez přepočtu. U těchto pohybů zůstává RVCENA beze změn a RVCENYSKLAD = 1. Tím dojde k tomu, že by se ceny na složce neměly nijak měnit.
Základní číselníky
- 9. 1. 6 - Skupiny uživatelů (doplněk č. 2 předchozí verze)
Ve verzi 7..1 byly zrušeny stránky ESO9Start\nastaveni\cinnost_cis.htm a cinnost_inc.htm, které se však v některých odkazech stále používají.
Stránky byly obnoveny, budou v doplňku č.2 k verzi 7.1
Účetní číselníky
- 9. 2. 7 - Účetní typy dokladů
V tabulce účetních typů dokladů byla doplněna položka VLAKTIVNI.
Při výběru účetních typů (například v typech a vzorech dokladů) se zobrazují pouze účetní typy, které jsou aktivní.
Upraveny procedury:
- spUcetTyp_NewRec
- spUcetTyp_BeforeUpdate
- spUcetTyp_Copy
- spUcetTyp_Copy_DB
- spUcetTyp_XmlExport
- spUcetTyp_ImportXML1
Upraveny formuláře :
- ESO9Start\nastaveni\UcetTyp.htm
- ESO9Start\nastaveni\TypDok.htm
- ESO9Start\priklady\HDok.htm
- ESO9Start\ucet\Ucet_dokl_pam.htm
- ESO9Start\ucet\Ucet_dokl.htm
- ESO9Start\plan\PlanUZap.htm
- ESO9Start\ucet\OdpisPohledavek.htm
- ESO9Start\nastaveni\VzorDok.htm
- ESO9Start\nastaveni\VzorDokKomp.htm
- ESO9Start\priklady\SDok.htm
- ESO9Start\ucet\PreuctVynosu.htm
- ESO9Start\ucet\OdpisPohl_Spar.htm
- ESO9Start\nastaveni\ImplementaceSkladu.htm
- ESO9Start\nastaveni\HdokKonv.htm - 9. 2.16 - Číselník repo sazeb (CZ legislativa)
Hodnoty REPO sazeb, používané pro výpočet penále, se dosud evidovaly v parametrech - parametr REPOsazba, kde se pro každé pololetí doplňovala nová hodnota.
Nyní se evidence repo sazeb provádí v novém číselníku, jehož aktualizaci je možno provádět automaticky dle číselníku zveřejňovaného na stránkách ČNB.
Formulář číselníku reposazeb obsahuje položky Datum vyhlášení sazby a Hodnotu repo sazby.
Hodnoty v tomto číselníku je možno aktualizovat automaticky dle číselníku uváděného na stránkách ČNB. URL adresa souboru, podle něhož se aktualizace provádí, je uvedena v parametru Finance / RepoSazby_URL. Aktualizaci je možno provést ručně tlačítkem Aktualizace dle číselníku ČNB, automaticky se aktualizace provádí také vždy při instalaci verze a dále před hromadným přepočtem penále. Zelenou barvou jsou zvýrazněny ty řádky, které slouží pro výpočet penále. Jedná se ty sazby, které jsou poslední v daném pololetí - uvedená sazba pak platí v následujícím pololetí - u těchto hodnot se zobrazuje rozmezí dat (od-do), pro které je sazba použita pro výpočet penále.
Provedené změny :
- nová činnost 9. 2.16 - Číselník repo sazeb
- nová tabulka REPOSAZBA
- nové procedury spREPOSAZBA_NewRec, spREPOSAZBA_AfterInsert, spREPOSAZBA_AfterUpdate, spREPOSAZBA_DelRec, spRepoSazba_Prepocet, spImportRepoSazeb.
- nová stránka ESO9Start\nastaveni\RepoSazba.htm
- upravená funkce fnTableRepoSazba, procedura spHDOK_SpoctiPenaleAll
- zrušeny parametry REPOsazba
- zrušeny procedury spParam_NaplnREPOSazbu_Obd, spParam_NaplnREPOSazby
Subjekty
- 9. 3. 3. 0 - Subjekty
Pro legislativu SK.
Subjekty, záložka "ARES a další odkazy"
Akce Overenie subjektu - Overované v spolupráci so spoločnosťou Dun & Bradstreet.
Při ověření subjektu doplněno do assembly CompanyInfo zabezpečení protokolem TLS 1.2. Vyřešena tím chyba "The underlying connection was closed: An unexpected error occurred on a send." - 9. 3. 3. 0 - Subjekty
To tabulky SUBJEKT byl doplněn identifikátor PEPPOL - položka PEPPOLID varchar(50).
Upravena stránka subjekt\Subjekt.htm.
Upravena procedura spSubjekt_ValRec
Zboží, služby, majetek..
- 9. 5. 1 - Měrné jednotky
V číselníku měrných jednotek byl doplněn kód MJ pro PEPPOL (MJ.KODMJ_PEPPOL).
Upravena procedura spMJ_ValRec,
Upravena stránka ESO9Start\nastaveni\MJ.htm - 9. 5.11 - Služby
U služeb zavedena možnost definovat službu jako "Komplet". Práce s komplety je popsána v dokumentu Práce s komplety
Spolu s tím provedeny následující změny:
- nová skupina parametrů "KOMPLETY" a v ní tyto parametry
- parametr "KOMPLETY_Aktivni": zda je aktivována práce s "Komplety": 0=Ne; 1=Ano
- parametr "KOMPLETY_TYPYDOK": seznam typů dokladů oddělený středníkem ";" pro práci s "Komplety" např. PRO;NOB;POB.
- parametr "KOMPLETY_VLNACTIDOHLAV": zda načíst složku dokladu s "Kompletem" do HDOK: -1=Neurčeno(beze změn); 0=Ne; 1=Ano. Pokud je jedna z hodnot 0=Ne / 1=Ano, pak složky dokladu jejího rozpadu mají opačnou hodnotu
- nová procedura "spSDokKomplet_RozpadDelete": vlastní rušení složek dokladu navázaných na komplet
- procedura "spSDok_DelRec": rušení složek navázaných na komplet procedurou "spSDokKomplet_RozpadDelete"
- nová procedura "spEXECSDokKomplet_RozpadInsUpd": EXEC procedura, která standardně zajišťuje nastavení, zda se složka dokladu "Kompletu" a složka dokladu "Rozpadu" (ne)napočítává do HDOK dle nastavení parametru "KOMPLETY_VLNACTIDOHLAV"
- nová procedura "spSDokKomplet_RozpadInsUpd": složka dokladu obsahující "Komplet" (Službu-Komplet kde ZBOZI.VLTYP_SLOZ = 2-Služba a ZBOZI.VLPODTYP_SLOZ = 5-Komplet) se rozpadne na složky dokladu "rozpad" na kterých je zboží/služby ze kterých se "Komplet" skládá.
- nová procedura "spSDok_AfterInsert": zajišťuje, že se složka dokladu obsahující "Komplet" rozpadne na složky dokladu "rozpad" na kterých je zboží/služby ze kterých se "Komplet" skládá. Je použita procedura "spSDokKomplet_RozpadInsUpd"
- nová procedura "spSDok_AfterUpdate": zajišťuje, že pokud se aktualizuje složka dokladu obsahující "Komplet" provede se i aktualizace složek "rozpadu". Je potřeba upozornit, že se nedoplňují chybějící / neruší nadbytečné složky dokladu "rozpadu". Je použita procedura "spSDokKomplet_RozpadInsUpd"
- procedura "spSDok_Copy": zajišťuje na nově založeném dokladu založení vazeb mezi složkami dokladu obsahující "Komplet" a složkami dokladu "rozpadu" podle zdrojového dokladu.
- trigger "trSDok_UPD": pokud složka dokladu má obsahovat / obsahovala "Komplet" pak ji nelze změnit
- předloha "nastaveni\sluzba.htm":
- doplněna položka "Typ služby" s možnostmi "Služba" / "Komplet(Služba)"
- doplněn odkaz "Rozpad služby/kompletu"
Změny funkcí
- fnCenaZPredpisu - nová funkce - obdoba spCenaZPredpisu
Obsahově stejná jako spCenaZPredpisu. Jedná se o "Scalar funkci"
vstupní parametry
- @HDCenaINPUT: typ MONEY. Vstupní cena, která vstupuje do @Predpis_Cena jako parametr @C, nebo @V
- @VLPredpis_Cena: typ SMALLINT. Určuje, pro kterou MJ je předpis @Predpis_Cena určen {0-MJ složky,1-MJ zboží}
- @Predpis_Cena: typ VARCHAR(500). Předpis pro výpočet základní ceny
- @VLPREDPISPROMENU: typ SMALLINT. Určuje v jaké měně vstupuje řídící cena do předpisu {0-domácí měna,1-měna předpisu}
- @VLPrirazka_Cena: typ SMALLINT. Určuje pro kterou MJ je předpis @Prirazka_Cena určen {0-MJ složky,1-MJ zboží}
- @MNPROCPRIRAZKA: typ DECIMAL(19, 5). Procentuální přirážka/sleva
- @HDJEDNPRIRAZKA: typ MONEY. Jednotková přirážka/sleva
- @KURS: typ DECIMAL(19, 14). Kurs měny
- @MNPOCETMJ: typ DECIMAL(19, 5). Počet v MJ složky dokladu
- @VLAnoNeBaleni: typ SMALLINT. Je/není balení
- @VLBaleni: typ SMALLINT. Zda @MNBaleni je násobek / podíl mezi MJ složky dokladu a základní MJ zboží
- @MNBaleni: typ DECIMAL(19, 5). Množství v balení
výstupní hodnota: DECIMAL(29, 14)
Pro potřeby funkce fnCenaZPredpisu vytvořeny tyto nové objekty a funkce
- nové ASSEMBLY ExecuteScalarCLRAssembly: obsahuje CLR funkce, které z textu typu SELECT vrací první sloupec prvního řádku selectu.např. 'SELECT 3.5 * 25.1415' nebo 'SELECT * FROM MENA ORDER BY KOD_MENY'
- fnExecuteScalar_Varchar
- fnExecuteScalar_Decimal
- fnExecuteScalar_DateTime
- nová CLR funkce fnExecuteScalarCLR_Varchar: fnExecuteScalar_Varchar
- nová CLR funkce fnExecuteScalarCLR_Decimal: fnExecuteScalar_Decimal
- nová CLR funkce fnExecuteScalarCLR_Decimal: fnExecuteScalar_Decimal
- nová CLR funkce fnExecuteScalarCLR_DateTime: fnExecuteScalar_DateTime
- nová CLR funkce fnExecuteScalarCLR_Money: covert funkce fnExecuteScalarCLR_Decimal
příklad volání:
;WITH TKurs
AS
(
SELECT IDMENA = MENA.IDMENA
,KOD_MENY = MENA.KOD_MENY
,Kurs = dbo.fnVratKurs(MENA.IDMENA, GETDATE(), 0, 2)
FROM MENA
)
,ZS
AS
(
SELECT --TOP 1000
DISTINCT
IDCESKZBPA = CP.IDCESKZBPA --Tímto se ruší DISTINCT
,IDZBOZI = CP.IDZBOZI
,IDCENSKZB = CP.IDCENSKZB
,IDSUBJEKT = CP.IDSUBJEKT
,IDCENSKUP = CP.IDCENSKUP
,IDSUBJADR = CP.IDSUBJADR
,IDMENA = CP.IDMENA
,IDMJ = CP.IDMJ
,VLPROCENU = CP.VLPROCENU --0=neurčeno; 1=skladovou; 2=prodejní; 3=nákupní;
,Kurs = TKurs.Kurs
,MNPOCETMJ = 105.0
,VLAnoNeBaleni = 1
,VLBaleni = 0
,MNBaleni = 4.0
,HDCENA = CASE ZBOZI.RVCENAZBOZI
WHEN 2 THEN ISNULL(ZBOZI.HDCENADPHZBOZI, 0)
ELSE ISNULL(ZBOZI.HDPRODCENA, 0)
END
--SELECT *
FROM CESKZBPA CP
LEFT JOIN ZBOZI ON ZBOZI.IDZBOZI = CP.IDZBOZI
LEFT JOIN SUBJEKT ON SUBJEKT.IDSUBJEKT = CP.IDSUBJEKT
LEFT JOIN TKurs ON TKurs.IDMENA = CP.IDMENA
WHERE 1 = 1
)
SELECT *
FROM (
SELECT ZnakCena = IIF(ZS.IDCESKZBPA = PredpisCena.IDCESKZBPA, '!', '')
,ZnakPrirazka = IIF(ZS.IDCESKZBPA = PrirazkaCena.IDCESKZBPA, '!', '')
,ZS.*
,PredpisCena.VLPredpis_Cena --@VLPredpis_Cena SMALLINT - Určuje pro kterou MJ je předpis @Predpis_Cena určen {0-MJ složky,1-MJ zboží}
,PredpisCena.Predpis_Cena --@Predpis_Cena VARCHAR(500) - Předpis pro výpočet základní ceny
,PredpisCena.VLPREDPISPROMENU --@VLPREDPISPROMENU SMALLINT - Určuje v jaké měně vstupuje řídící cena do předpisu {0-domácí měna,1-měna předpisu}
,PrirazkaCena.Prirazka_Cena --@STRSLEVA VARCHAR(255) - Předpis pro slevu
,PrirazkaCena.VLPrirazka_Cena --@VLPrirazka_Cena SMALLINT - Určuje pro kterou MJ je předpis @Prirazka_Cena určen {0-MJ složky,1-MJ zboží}
,SpoctiPrirazku.MNSLEVA --@MNPROCPRIRAZKA DECIMAL(19, 5) -
,SpoctiPrirazku.HDSLEVA --@HDJEDNPRIRAZKA MONEY -
,HDCenaOUT = dbo.fnCenaZPredpisu
(
ZS.HDCENA --@HDCenaINPUT MONEY
,PredpisCena.VLPredpis_Cena --@VLPredpis_Cena SMALLINT - Určuje pro kterou MJ je předpis @Predpis_Cena určen {0-MJ složky,1-MJ zboží}
,PredpisCena.Predpis_Cena --@Predpis_Cena VARCHAR(500) - Předpis pro výpočet základní ceny
,PredpisCena.VLPREDPISPROMENU --@VLPREDPISPROMENU SMALLINT - Určuje v jaké měně vstupuje řídící cena do předpisu {0-domácí měna,1-měna předpisu}
,PrirazkaCena.VLPrirazka_Cena --@VLPrirazka_Cena SMALLINT - Určuje pro kterou MJ je předpis @Prirazka_Cena určen {0-MJ složky,1-MJ zboží}
,SpoctiPrirazku.MNSLEVA --@MNPROCPRIRAZKA DECIMAL(19, 5) -
,SpoctiPrirazku.HDSLEVA --@HDJEDNPRIRAZKA MONEY -
,ZS.Kurs --@KURS DECIMAL(19, 14) -
,ZS.MNPOCETMJ --@MNPOCETMJ DECIMAL(19, 5) -
,ZS.VLAnoNeBaleni --@VLAnoNeBaleni SMALLINT -
,ZS.VLBaleni --@VLBaleni SMALLINT -
,ZS.MNBaleni --@MNBaleni DECIMAL(19, 5) -
)
,ZBOZI.VLTYP_SLOZ, ZBOZI.CIS_ZBOZI, ZBOZI.NAZEV_ZBOZI
,SUBJEKT.KOD_SUBJEKTU, SUBJEKT.SUBJ_NAZEV
FROM ZS
LEFT JOIN ZBOZI ON ZBOZI.IDZBOZI = ZS.IDZBOZI
LEFT JOIN SUBJEKT ON SUBJEKT.IDSUBJEKT = ZS.IDSUBJEKT
OUTER APPLY dbo.fnPredpis_Cena
(
ZS.VLPROCENU --@VLNabizetCenu SMALLINT -Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
,NULL --@IDHDOK Int -ID Hlavičky dokladu pod kterou je/bude složka dokladu, pro kterou se zjišťuje předpis
,ZS.IDZBOZI --@IDZbozi Int -ID Zboží pro určení předpisu a jeho vlastnosti
,ZS.IDCENSKZB --@IDCenSKZB Int -ID Cenové skupiny zboží pro určení předpisu a jeho vlastnosti
,ZS.IDSUBJADR --@IDSUBJADR Int -ID Adresy subjektu pro určení předpisu a jeho vlastnosti
,ZS.IDSUBJEKT --@IDSubjekt Int -ID Subjektu pro určení předpisu a jeho vlastnosti
,ZS.IDCENSKUP --@IDCenSkup Int -ID Cenové skupiny subjektu pro určení předpisu a jeho vlastnosti
,ZS.IDMJ --@IDMJ Int -ID Měrné jednotky pro určení předpisu a jeho vlastnosti
,ZS.IDMENA --@IDMena INT -ID Měny pro určení předpisu a jeho vlastnosti
,GETDATE() --@DTDatum DateTime -Datum ke kterému se má určit předpis a jeho vlastnost v rámci platnosti
) PredpisCena
OUTER APPLY dbo.fnPrirazka_Cena
(
ZS.VLPROCENU --@VLNabizetCenu SMALLINT -Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
,NULL --@IDHDOK Int -ID Hlavičky dokladu pod kterou je/bude složka dokladu, pro kterou se zjišťuje předpis
,ZS.IDZbozi --@IDZbozi Int -ID Zboží pro určení předpisu a jeho vlastnosti
,ZS.IDCenSKZB --@IDCenSKZB Int -ID Cenové skupiny zboží pro určení předpisu a jeho vlastnosti
,ZS.IDSUBJADR --@IDSUBJADR Int -ID Adresy subjektu pro určení předpisu a jeho vlastnosti
,ZS.IDSubjekt --@IDSubjekt Int -ID Subjektu pro určení předpisu a jeho vlastnosti
,ZS.IDCenSkup --@IDCenSkup Int -ID Cenové skupiny subjektu pro určení předpisu a jeho vlastnosti
,ZS.IDMJ --@IDMJ Int -ID Měrné jednotky pro určení předpisu a jeho vlastnosti
,ZS.IDMena --@IDMena INT -ID Měny pro určení předpisu a jeho vlastnosti
,GETDATE() --@DTDatum DateTime -Datum ke kterému se má určit předpis a jeho vlastnost v rámci platnosti
) PrirazkaCena
OUTER APPLY dbo.fnSpoctiPrirazku
(
PrirazkaCena.Prirazka_Cena --@STRSLEVA VARCHAR(255) - Předpis pro slevu
,dbo.fnCelkemMn(NULL, ZS.MNPOCETMJ, ZS.VLAnoNeBaleni, ZS.VLBaleni, ZS.MNBaleni) --@Mn DECIMAL(19, 5) - Množství
) SpoctiPrirazku
) ZS
WHERE 1 = 1
--AND ZS.HDCenaOUT <> 0
--AND ZS.HDCENA <> 0
--AND PredpisCena.IDCESKZBPA IS NOT NULL
--AND (
-- PredpisCena.IDCESKZBPA IS NOT NULL
-- OR PrirazkaCena.IDCESKZBPA IS NOT NULL
-- )
ORDER BY ZS.IDZBOZI
,ZS.IDCENSKZB
,ZS.IDSUBJEKT
,ZS.IDCENSKUP
,ZS.IDSUBJADR
,ZS.IDMENA
,ZS.IDMJ
,ZS.VLPROCENU - fnPredpis_Cena - nová funkce - obdoba spPredpis_Cena
Obsahově stejná jako spPredpis_Cena. Jedná se o "Table-Valued funkce" s jedním řádkem.
vstupní parametry
- @VLNabizetCenu: typ SMALLINT. Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
- @IDHDOK: typ INT. ID Hlavičky dokladu, pod kterou je/bude složka dokladu, pro kterou se zjišťuje předpis
- @IDZbozi: typ INT. ID Zboží pro určení předpisu a jeho vlastnosti
- @IDCenSKZB: typ INT. ID Cenové skupiny zboží pro určení předpisu a jeho vlastnosti
- @IDSUBJADR: typ INT. ID Adresy subjektu pro určení předpisu a jeho vlastnosti
- @IDSubjekt: typ INT. ID Subjektu pro určení předpisu a jeho vlastnosti
- @IDCenSkup: typ INT. ID Cenové skupiny subjektu pro určení předpisu a jeho vlastnosti
- @IDMJ: typ INT. ID Měrné jednotky pro určení předpisu a jeho vlastnosti
- @IDMena: typ INT. ID Měny pro určení předpisu a jeho vlastnosti
- @DTDatum: typ DATETIME. Datum, ke kterému se má určit předpis a jeho vlastnost v rámci platnosti
výstupní jednořádková tabulka s těmito sloupci
- Err: typ INT. Číslo chyby
- Severity: typ INT. Severity chyby
- ErrText: typ VARCHAR(255). Popis chyby
- IDCESKZBPA: typ INT. ID předpisu
- Predpis_Cena: typ VARCHAR(500). Předpis pro výpočet základní ceny
- VLPredpis_Cena: typ SMALLINT. Určuje, pro kterou MJ je předpis @Predpis_Cena určen {0-MJ složky,1-MJ zboží}
- VLRIDICICENA: typ SMALLINT. Určuje řídící cenu pro předpis {0-podle karty zboží,1-řídící cena bez DPH,2-řídící cena s DPH}
- VLPREDPISPROMENU: typ SMALLINT. Určuje, v jaké měně vstupuje řídící cena do předpisu {0-domácí měna,1-měna předpisu}
příklad volání:
;WITH CP
AS
(
SELECT *
FROM CESKZBPA
WHERE 1 = 1
--AND IDSUBJEKT IS NOT NULL
--AND VLPROCENU = 2 --Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
AND NULLIF(TRIM(Predpis_Cena), '') IS NOT NULL
)
SELECT Znak = IIF(CP.IDCESKZBPA = PredpisCena.IDCESKZBPA, '!', ''),
CP.*
,ZBOZI.VLTYP_SLOZ, ZBOZI.CIS_ZBOZI, ZBOZI.NAZEV_ZBOZI
,SUBJEKT.KOD_SUBJEKTU, SUBJEKT.SUBJ_NAZEV
,PredpisCena.*
FROM CP
LEFT JOIN ZBOZI ON ZBOZI.IDZBOZI = CP.IDZBOZI
LEFT JOIN SUBJEKT ON SUBJEKT.IDSUBJEKT = CP.IDSUBJEKT
OUTER APPLY dbo.fnPredpis_Cena
(
CP.VLPROCENU --@VLNabizetCenu SMALLINT --Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
,NULL --@IDHDOK Int --ID Hlavičky dokladu pod kterou je/bude složka dokladu, pro kterou se zjišťuje předpis
,CP.IDZBOZI --@IDZbozi Int --ID Zboží pro určení předpisu a jeho vlastnosti
,CP.IDCENSKZB --@IDCenSKZB Int --ID Cenové skupiny zboží pro určení předpisu a jeho vlastnosti
,CP.IDSUBJADR --@IDSUBJADR Int --ID Adresy subjektu pro určení předpisu a jeho vlastnosti
,CP.IDSUBJEKT --@IDSubjekt Int --ID Subjektu pro určení předpisu a jeho vlastnosti
,CP.IDCENSKUP --@IDCenSkup Int --ID Cenové skupiny subjektu pro určení předpisu a jeho vlastnosti
,CP.IDMJ --@IDMJ Int --ID Měrné jednotky pro určení předpisu a jeho vlastnosti
,CP.IDMENA --@IDMena INT --ID Měny pro určení předpisu a jeho vlastnosti
,GETDATE() --@DTDatum DateTime --Datum ke kterému se má určit předpis a jeho vlastnost v rámci platnosti
) PredpisCena
--WHERE PredpisCena.IDCESKZBPA IS NOT NULL
ORDER BY CP.IDZBOZI
,CP.IDCENSKZB
,CP.IDSUBJEKT
,CP.IDCENSKUP
,CP.IDSUBJADR
,CP.IDMENA
,CP.IDMJ
,CP.VLPROCENU - fnPrirazka_Cena - nová funkce - obdoba spPrirazka_Cena
Obsahově stejná jako spPrirazka_Cena. Jedná se o "Table-Valued funkce" s jedním řádkem.
vstupní parametry
- @VLNabizetCenu: typ SMALLINT. Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
- @IDHDOK: typ INT. ID Hlavičky dokladu, pod kterou je/bude složka dokladu, pro kterou se zjišťuje předpis
- @IDZbozi: typ INT. ID Zboží pro určení předpisu a jeho vlastnosti
- @IDCenSKZB: typ INT. ID Cenové skupiny zboží pro určení předpisu a jeho vlastnosti
- @IDSUBJADR: typ INT. ID Adresy subjektu pro určení předpisu a jeho vlastnosti
- @IDSubjekt: typ INT. ID Subjektu pro určení předpisu a jeho vlastnosti
- @IDCenSkup: typ INT. ID Cenové skupiny subjektu pro určení předpisu a jeho vlastnosti
- @IDMJ: typ INT. ID Měrné jednotky pro určení předpisu a jeho vlastnosti
- @IDMena: typ INT. ID Měny pro určení předpisu a jeho vlastnosti
- @DTDatum: typ DATETIME. Datum, ke kterému se má určit předpis a jeho vlastnost v rámci platnosti
výstupní jednořádková tabulka s těmito sloupci
- Err: typ INT. Číslo chyby
- Severity: typ INT. Severity chyby
- ErrText: typ VARCHAR(255). Popis chyby
- IDCESKZBPA: typ INT. ID předpisu
- Prirazka_Cena: typ VARCHAR(500). Předpis pro výpočet rabatu (přirážky/slevy)
- VLPrirazka_Cena: typ SMALLINT. Určuje, pro kterou MJ je předpis @Prirazka_Cena určen {0-MJ složky,1-MJ zboží}
- VLZAOKRPOSLEVE_JAK: typ SMALLINT. Určuje způsob zaokrouhlování ceny po slevě
- ZAOKRPOSLEVE_KOLIK: typ SMALLINT. Určuje na kolik míst se má zaokrouhlení ceny po slevě provést
příklad volání:
;WITH CP
AS
(
SELECT *
FROM CESKZBPA
WHERE 1 = 1
--AND IDSUBJEKT IS NOT NULL
--AND VLPROCENU = 2 --Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
AND NULLIF(TRIM(PRIRAZKA_CENA), '') IS NOT NULL
)
SELECT Znak = IIF(CP.IDCESKZBPA = PrirazkaCena.IDCESKZBPA, '!', ''),
CP.*
,ZBOZI.VLTYP_SLOZ, ZBOZI.CIS_ZBOZI, ZBOZI.NAZEV_ZBOZI
,SUBJEKT.KOD_SUBJEKTU, SUBJEKT.SUBJ_NAZEV
,PrirazkaCena.*
FROM CP
LEFT JOIN ZBOZI ON ZBOZI.IDZBOZI = CP.IDZBOZI
LEFT JOIN SUBJEKT ON SUBJEKT.IDSUBJEKT = CP.IDSUBJEKT
OUTER APPLY dbo.fnPrirazka_Cena
(
CP.VLPROCENU --@VLNabizetCenu SMALLINT --Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
,NULL --@IDHDOK Int --ID Hlavičky dokladu pod kterou je/bude složka dokladu, pro kterou se zjišťuje předpis
,CP.IDZbozi --@IDZbozi Int --ID Zboží pro určení předpisu a jeho vlastnosti
,CP.IDCenSKZB --@IDCenSKZB Int --ID Cenové skupiny zboží pro určení předpisu a jeho vlastnosti
,CP.IDSUBJADR --@IDSUBJADR Int --ID Adresy subjektu pro určení předpisu a jeho vlastnosti
,CP.IDSubjekt --@IDSubjekt Int --ID Subjektu pro určení předpisu a jeho vlastnosti
,CP.IDCenSkup --@IDCenSkup Int --ID Cenové skupiny subjektu pro určení předpisu a jeho vlastnosti
,CP.IDMJ --@IDMJ Int --ID Měrné jednotky pro určení předpisu a jeho vlastnosti
,CP.IDMena --@IDMena INT --ID Měny pro určení předpisu a jeho vlastnosti
,GETDATE() --@DTDatum DateTime --Datum ke kterému se má určit předpis a jeho vlastnost v rámci platnosti
) PrirazkaCena
--WHERE PrirazkaCena.IDCESKZBPA IS NOT NULL
ORDER BY CP.IDZBOZI
,CP.IDCENSKZB
,CP.IDSUBJEKT
,CP.IDCENSKUP
,CP.IDSUBJADR
,CP.IDMENA
,CP.IDMJ
,CP.VLPROCENU - fnSpoctiPrirazku - nová funkce - obdoba spSpoctiPrirazku
Obsahově stejná jako spSpoctiPrirazku. Jedná se o "Table-Valued funkce" s jedním řádkem.
vstupní parametry
- @STRSLEVA: typ VARCHAR(255). Předpis pro výpočet přirážky/slevy
- @Mn: typ DECIMAL(19, 5). Množství pro které se bude určovat přirážka/sleva počítat z předpisu @STRSLEVA
výstupní jednořádková tabulka s těmito sloupci
- Err: typ INT. Číslo chyby
- Severity: typ INT. Severity chyby
- ErrText: typ VARCHAR(255). Popis chyby
- MNSLEVA: typ DECIMAL(19, 5). Procentuální přirážka/sleva pro zadané množství @Mn
- HDSLEVA: typ MONEY. Jednotková přirážka/sleva pro zadané množství @Mn
příklad volání:
;WITH CP
AS
(
SELECT *
FROM CESKZBPA
WHERE 1 = 1
--AND IDSUBJEKT IS NOT NULL
--AND VLPROCENU = 2 --Určuje, pro kterou cenu je předpis a jeho vlastnost určen {0-Neurčeno,1-Skladovou,2-Prodejní,3-Nákupní}
AND NULLIF(TRIM(PRIRAZKA_CENA), '') IS NOT NULL
)
SELECT CP.*
,ZBOZI.VLTYP_SLOZ, ZBOZI.CIS_ZBOZI, ZBOZI.NAZEV_ZBOZI
,SUBJEKT.KOD_SUBJEKTU, SUBJEKT.SUBJ_NAZEV
,SpoctiPrirazku.*
FROM CP
LEFT JOIN ZBOZI ON ZBOZI.IDZBOZI = CP.IDZBOZI
LEFT JOIN SUBJEKT ON SUBJEKT.IDSUBJEKT = CP.IDSUBJEKT
OUTER APPLY dbo.fnSpoctiPrirazku
(
CP.PRIRAZKA_CENA --@STRSLEVA VARCHAR(255) -- Předpis pro slevu
,105.0 --@Mn DECIMAL(19, 5) -- Množství
) SpoctiPrirazku
ORDER BY CP.IDZBOZI
,CP.IDSUBJEKT
Změny procedur
- spISDOC_HDOK_AFTERINSERT - Uživatelská akce po importu ISDOCu
Doplněn parametr @mf_params pro možnost předání uživatelských parametrů z importního formuláře do uživatelské akce volané po importu ISDOCu. - spXML_HDOK - procedura pro import dokladů z XML
V záznamu v logovacím souboru bylo u logovaných položek základu a daně 2. snížené sazby chybně uveden název položky - opraveno - spXML_SDOK - procedura pri import složek z XML
V proceduře spXML_SDOK byly v logovacím záznamu u logování položek kód účtu MD a DAL a kód střediska MD a DAL uveden chybný název položky (Kod_MJ) - opraveno.
Změny datových struktur
- HDOK - Hlavička dokladu
V tabulce HDOK, HDOKA, HDOK_W upraven sloupec JEJICH_CISDOK z VARCHAR(32) --> VARCHAR(60).
Spolu s tím upraveny následující objekty: změna rozhraní znamená, změna parametru @JEJICH_CISDOK na VARCHAR(60)
- procedura "spHDok_NewRec": změna rozhraní, funkčnost
- procedura "spHDok_CopyRec": změna rozhraní, funkčnost
- procedura "spHDok_CalRec": změna rozhraní, funkčnost
- procedura "spHDok_ValRec": změna rozhraní, funkčnost
- procedura "spHDok_BeforeInsert": změna rozhraní, funkčnost
- procedura "spHDok_BeforeUpdate": změna rozhraní, funkčnost
- procedura "spHDok_IDHDok_VZOR": změna rozhraní, funkčnost
- procedura "spHDok_InsertRec": změna rozhraní, funkčnost
- procedura "spHDok_UpdateRec": změna rozhraní, funkčnost
- procedura "spHDok_Copy": funkčnost
- procedura "spHDok_Udrzba": změna rozhraní, funkčnost
- procedura "spSzamlaXML_btMarkCreateXML_XMLParams": funkčnost - HDOK - Hlavička dokladu
Tabulky HDOK, HDOKA, HDOK_W se rozšířily o tyto sloupce
- RVSTAT_PRIJEMCE SMALLINT
- IDSTAT_PRIJEMCE INT
- RVEMAIL_PRIJEMCE SMALLINT
- EMAIL_PRIJEMCE VARCHAR(100)
- RVTEL_PRIJEMCE SMALLINT
- TEL_PRIJEMCE VARCHAR(30)
- VLSTORNO SMALLINT
- DNUSPLATNOSTI SMALLINT
- VLDTSPLATNOST SMALLINT
- RVMIMODANVAL SMALLINT
- HDMIMODANVAL MONEY
- RVZAKLADDANVAL_0 SMALLINT
- HDZAKLADDANVAL_0 MONEY
- RVDANVAL_5 SMALLINT
- HDZAKLADVAL_5 MONEY
- HDDANVAL_5 MONEY
- RVDANVAL_22 SMALLINT
- HDZAKLADVAL_22 MONEY
- HDDANVAL_22 MONEY
- RVDANVAL_SS2 SMALLINT
- HDZAKLADVAL_SS2 MONEY
- HDDANVAL_SS2 MONEY
- HDSDOK_MIMODANVAL MONEY
- HDSDOK_ZAKLADVAL_0 MONEY
- HDSDOK_ZAKLADVAL_5 MONEY
- HDSDOK_SDANIVAL_5 MONEY
- HDSDOK_ZAKLADVAL_22 MONEY
- HDSDOK_SDANIVAL_22 MONEY
- HDSDOK_ZAKLADVAL_SS2 MONEY
- HDSDOK_SDANIVAL_SS2 MONEY
Spolu s tím rozšířeno rozhraní a funkčnost těchto objektů:
- procedura "spHDok_DopocetDaneZeZakladu": nové povinné parametry, upravena funkčnost
- procedura "spHDok_PrepocetCastek": nové povinné parametry, upravena funkčnost
- procedura "spZapisSDokNaHDok": nové povinné parametry, upravena funkčnost
- procedura "spHDok_NewRec": nové povinné parametry, upravena funkčnost
- procedura "spHDok_CopyRec": nové povinné parametry, upravena funkčnost
- procedura "spHDok_CalRec": nové povinné parametry, upravena funkčnost
- procedura "spHDok_ValRec": nové povinné parametry, upravena funkčnost
- procedura "spHDok_BeforeInsert": nové povinné parametry, upravena funkčnost
- procedura "spHDok_BeforeUpdate": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDHDok_VZOR": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDTYPSUBJ": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDSUBJEKT": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDSUBJADR": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDSUBJADRP": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDSUBJOSOBA": nové povinné parametry, upravena funkčnost
- procedura "spHDok_IDSUBJOSOBAP": nové povinné parametry, upravena funkčnost
- procedura "spHDok_DTZDANITPLN": nové povinné parametry, upravena funkčnost
- procedura "spHDok_InsertRec": nové NEpovinné parametry, upravena funkčnost
- procedura "spHDok_UpdateRec": nové NEpovinné parametry, upravena funkčnost
- procedura "spSDok_HDok": upravena funkčnost
- procedura "spHDOK_GetRec_ZAK": doplněn resultset o nové sloupce
- procedura "spArchivujDoklady": upravena funkčnost
- procedura "spOdArchivujDoklady": upravena funkčnost
- procedura "spHDok_Copy": upravena funkčnost
- procedura "spHDok_Udrzba": nové NEpovinné parametry, upravena funkčnost
- procedura "spHDOK_btZmenSubjekt": upravena funkčnost
- procedura "spZBOZSKL_RUNNAKUP": upravena funkčnost
Spolu s upraveny tyto předlohy:
- nový forma "DPH\HDokDPH.htm": editovatelné základy a daně DPH pro VAL a domácí měnu.
Needitovatelné nápočty ze složek dokladů jednotlivých základů: částky bez DPH a s DPH pro VAL a domácí měnu.
- forma "nakup\FapHlav.htm": volá se primárně v činnosti "2. 1. 3. 1 Faktury přijaté účetní". Odkaz "Základy a DPH" na novou formu "DPH\HDokDPH.htm"
- forma "prodej\FaV.htm": volá se primárně v činnosti "2. 2. 3. 1 Faktury vydané účetní". Odkaz "Základy a DPH" na novou formu "DPH\HDokDPH.htm"
- forma "priklady\HDok.htm": volá se primárně v činnosti "9. 9. 1 Komplexní editor dokladu". Odkaz "Základy a DPH" na novou formu "DPH\HDokDPH.htm" - HDOKOffLine - Hlavička dokladu off-Line
Tabulky HDOKOffLine, HDOKOffLineSave se rozšířily o tyto sloupce
- VLSTORNO SMALLINT
- RVMIMODANVAL SMALLINT
- HDMIMODANVAL MONEY
- RVZAKLADDANVAL_0 SMALLINT
- HDZAKLADDANVAL_0 MONEY
- RVDANVAL_5 SMALLINT
- HDZAKLADVAL_5 MONEY
- HDDANVAL_5 MONEY
- RVDANVAL_22 SMALLINT
- HDZAKLADVAL_22 MONEY
- HDDANVAL_22 MONEY
- RVDANVAL_SS2 SMALLINT
- HDZAKLADVAL_SS2 MONEY
- HDDANVAL_SS2 MONEY
- HDSDOK_MIMODANVAL MONEY
- HDSDOK_ZAKLADVAL_0 MONEY
- HDSDOK_ZAKLADVAL_5 MONEY
- HDSDOK_SDANIVAL_5 MONEY
- HDSDOK_ZAKLADVAL_22 MONEY
- HDSDOK_SDANIVAL_22 MONEY
- HDSDOK_ZAKLADVAL_SS2 MONEY
- HDSDOK_SDANIVAL_SS2 MONEY
Spolu s tím rozšířeno rozhraní a funkčnost těchto objektů:
- procedura "spSkladyOffLine_Inicializace": upravena funkčnost
- procedura "spSkladyOffLine_PrepocetSkladu": upravena funkčnost
- procedura "spSkladyOffLine_PrepocetHDOK": upravena funkčnost
- procedura "spSkladyOffLine_PrenosOffLine2OnLine": upravena funkčnost
Spolu s upraveny tyto předlohy:
- forma "sklad\OffLinePrepocetSkladu.htm": volá se primárně v činnosti "2. 3. 3.10 Off-line přepočet skladů"
Změny webových stránek
- nastaveni.htm - Odkaz na PING
Za stránky nastaveni.htm odstraněn odkaz na Ping.
ESO9 podpůrné nástroje
Klientský doplněk
- AI asistent - Kontext pro AI asistenta
Během července a srpna 2025 došlo k významným úpravám kontextu, který se používá pro generování odpovědí pomocí AI. Z kontextu byly odstraněny méně relevantní zdroje a naopak byly přidány úryvky z veškeré dokumentace, která je k ESO9 dostupná na naší wiki. Tj. pro sestavení odpovědí se mj. používá databáze znalostí o ESO9, která se automaticky doplňuje o nové či upravené části dokumentace k ESO9.
Odpovědi AI tak využívají daleko širší kontextovou základnu, než jen nápovědu k činnostem z aplikace ESO9. Uživatel se tak může dotazovat i na témata, která nesouvisí s činností, v níž aktuálně pracuje.
Technologie ESO9 - server + klient
Změny v technologii .NET
- Aplikační server - Zrychlení formulářů s předfiltrovanými daty
Ve formulářích, kde mají vybrané HTML Input položky své výchozí hodnoty (atribut "value") vstupují tyto výchozí hodnoty za určitých podmínek do filtru, tj. sestavuje se z nich část Where podmínky použitého SQL dotazu (podmínkou je RowFilter s hodnotou 1, tedy případ, kdy je ve formuláři řádkový filtr a má přednost před Start filtrem). Tyto výchozí hodnoty mohou být dále parametrizovány vybranými UP parametry, např. výraz "value="%UP_UCET_OBD-2%"" vyhodnotí aktuální účetní období - 2. V mnoha Startkových formulářích se tento mechanismus využívá pro automatické předvyplnění hodnot ve Start filtru. Uživatel tak nemusí nic vyplňovat, pouze potvrdí připravené filtrovací podmínky. Cílem je, aby uživatelé nenačítali zbytečně velké množství dat.
Pokud byl však tento mechanismus zkombinován s potlačením Start filtru (tj. "StartFilter=0"), docházelo ke dvojímu čtení dat; první bez filtrovacích podmínek, druhé pak s filtrovacími podmínkami vyhodnocenými z HTML zdroje formuláře. Pro uživatele to bylo komfortnější, snížil se počet kliků, které musí pro zobrazení formuláře provést, ale na zobrazení formuláře čekali déle.
Aktuální verze technologie proto obsahuje úpravu, která v tomto případě ještě před načtením dat zjistí, zda se z HTML formuláře v budoucnu ne-sestaví filtrovací podmínky a pokud ano, potlačí se načtení dat do okamžiku, kdy budou tyto podmínky z HTML známy. Výsledkem je pouze jedno čtení dat a to s doplněnými filtrovacími podmínkami, tj. rychlejší. Uživateli se v takovém případě zobrazí formulář násobně rychleji. - Aplikační server - Oddělovač tisíců
Pokud je ve formuláři použito desetinné číslo a je UP parametrem "ZOBRAZENI_TISICU" nastaveno, že se mají tato čísla formátovat s oddělovačem tisíců, automaticky se všem takovým položkám přidává maska ";TH", která toto zobrazení realizuje. Pokud však na položce zároveň použita maska ";brwsize=xx" pro určení šířky položky v tabulkovém zobrazení, maska ";TH" se nepřidala a ve formulářovém zobrazení pak oddělovače tisíců chyběly.
Opraveno v technologii z 26.6.2025. - Aplikační server - Timeout na uživatelskou akci
Nejvyšší hodnota timeoutu na uživatelskou akci byla změněna z 65534sec na 32767sec (9+ hodin).
Důvodem změny je fakt, že některé databázové procedury mají parametr TIMEOUT deklarovaný jako SmallInt a konverze hodnot větších něž 32767 pak končila chybou rozsahu celého čísla. - Aplikační server - Náhled e-mailů v DMS
Ve verzi 7.1 se přestal v náhledu dokumentů v DMS zobrazovat náhled e-mailů ve formátech MSG a EML. Důvodem bylo sjednocení Start adresáře po ukončení podpory Internet Exploreru.
Rychlou nápravou bez nutnosti čekat na technologický doplněk je zkopírovat ve Start adresáři předlohu "DMS\EMailNahled.htm" do složky ".OK\DMS\EMailNahled.htm".
Oprava je dostupná v technologii od 11.7.2025. - Aplikační server - Nové fonty pro generátor sestava
Do aplikačního serveru byla doplněna možnost použít v serverovém GS vlastní fonty. Pokud se při startu GS najdou v Support webu ve složce "LIB/fonts/STIFonts" soubory s truetypovými fonty (*.ttf), přidají se do fontů dostupných v GS. - Aplikační server - Vlastní fonty pro nový design sestav
V novém designu sestav, který se bude postupně dostávat do sestav v ESO9Start/ESO9PAM, jsou použity některé vlastní fonty, které nejsou a nainstalované na cílových PC. Do aplikačního serveru, klienta a samostatného generátoru sestav (program RepGenSTI.exe dostupný od jara 2025) byla proto doplněna podpora práce s těmito fonty v návrháři sestav (vč. jejich náhledu) a v samotném serverovém generátoru.
Dostupné v technologii ESO9 od července 2025. - Aplikační server - Vícenásobné přihlašování
V technologii se vrátilo chování pro vícenásobné přihlašování. většině zákazníků nemožnost přihlásit se automaticky z libovolného URL a to v rámci stejného PC i více zařízení vadí v zaběhnutém způsobu používání ESO9.
Dostupné v technologii od července 2025. - Aplikační server - Vlastní obrázky pro nový design sestav
V novém designu sestav, který se bude postupně dostávat do sestav v ESO9Start/ESO9PAM, jsou použity některé vlastní obrázky pro pozadí některých prvků v sestavě. Kromě možnosti přidat tyto obrázky přes položky FILEGUID z DMS je nově možné přidat obrázky přímo do tzv.resources, které jsou součástí definice sestavy. Tyto resources se automaticky přidávají ze složky Support\LIB\IMG\STIresources v Support webu. Je to výrazně jednodušší, než přidávat obrázky z DMS, ale je to vhodné pouze např. pro obrázky použité na všech/většině sestav, protože definice sestavy se zvětší právě o velikost takto přidaných obrázků.
Automatické doplnění je k dispozici v generátoru sestav v ESO9 a v samostatném generátoru sestav (program RepGenSTI.exe dostupný od jara 2025) od července 2025. - Aplikační server - Tvorba diagramů
V ESO9 přibyla možnost zobrazovat diagramy. Může to být vhodné např. pro vstupních obrazovky nebo navigačních uživatelské stránky (tj. rozcestníky).
Podrobnější popis vč. příkladu viz.https://wiki.eso9.cz/doku.php/techdoc:diagramyidc.
Dostupné v technologii ESO9 od srpna 2025. - Aplikační server - Náhledy Word dokumentů v DMS
Náhledy z DMS byly rozšířeny o možnost náhledů Word dokumentů (DOC a DOCX soubory).
Vzhledem k velikosti použitých knihoven však tato funkčnost není součástí standardní distribuce ESO9, ale lze si ji vyžádat v ESO9 international. - Komunikace s MPSV - Hlášení cizinců na MPSV
Do knihovny MPSV.dll byla doplněna podpora komunikace s rozhraním MPSV pro Hlášení cizinců verze 2.0, které je povinné od 1.7.2025.
Dostupné v knihovně MPSV.dll v7.1.0.1. - Obecný klient - Rozostření tučného písma v aplikacích
V nových verzích prohlížečů Chrome, Edge nebo Firefox (červenec 2025) dochází k rozostření tučného písma v ESO9 (titulek formuláře, historie, označený řádek v tabulkovém módu atd.).
Řešením je úprava stylopisu hostovaného na adrese https://scripts.eso9.cz/rtm/style/eso9ok-6.0.0.css. Pokud zákazníci hostují skripty a styly lokálně, je třeba jednorázově spustit jejich aktualizaci vůči našemu serveru. - Obecný klient - Překryv obrázků a textů v HTML sestavách
V sestavách tištěných primárně do HTML formátu (výchozí formát STI) nebylo možné překrývat obrázky na pozadí textem; dosud to bylo možné jen v PDF. V souvislosti s pracemi na novém designu sestav tak bylo nutné upravit generátor sestav tak, aby to možné bylo.
Dostupné v obecném klientovi od července 2025. - Reporting Server - Parametr PRN_LANG
Parametr PRN_LANG se při tisku sestav z jejich offline definice vyhodnocoval jen z UP parametrů a z parametrů offline sestavy zadaných SQL dotazem, který vracel vektor hodnot (tj. pro každou generovanou sestavu se vyhodnocoval její jazyk).
Nově bylo doplněno vyhodnocení z parametrů offline sestavy zadaných skalární hodnotou, tj. stejný jazyk pro všechny generované sestavy.
Doplněno v Reporting Serveru verze 7.0.0.5. - Reporting Server - Nevyplněný cíl tisku
Pokud měla sestava zpracovávaná Reporting Serverem jako cíl tisku nastavenu hodnotu NULL, mohlo dojít k přerušení generování všech dalších sestav.
Doplněna kontrola, v případě nepřípustných hodnot se jako cíl tisku použije formát PDF.
Dostupné v Reporting Serveru od verze 7.0.0.6.
DokuWiki Appliance - Powered by TurnKey Linux
verze/eso9current.txt · Poslední úprava: 04.11.2025 19:00 autor: 127.0.0.1