Činnost 9. 2.15 - Automatický import BAV - definice

Umožnuje definovat automatické zpracování souborů bankovních výpisů. Jsou možné dva způsoby zpracování : 1) Import souborů z definovaného adresáře. Základním předpokladem pro úspěšné načtení souborů je, aby adresář, ze kterého bude prováděno načítání souborů, byl na SQL serveru, a měl nastavena taková přístupová práva, aby k nim mohl přistupovat účet, pod kterým toto bude SQL server provádět. Do tohoto adresáře je pak nutno soubory nahrávat ručně nebo jiným externím programem (zpravidla tento program dodává banka - toto umožňuje například UniCredit Bank). Před nasazením automatického zpracování je nutno zvážit, jaké soubory budou zpracovávány a dle toho zvolit odpovídající importní proceduru, způsob zpracování a strategii práce se soubory. Záleží rovněž na tom, zda soubor bude mít vždy shodný název, nebo již v jeho názvu bude například datum apod. V případě, že budou zpracovávány soubory například pouze jednou denně (za předchozí den), je možno soubory mít v jednom definovaném adresáři a po zpracování souboru mu změnit příponu tak, aby již do dalšího zpracování nevstupoval. V případě, že požadujete častější zpracování během dne, je nutno zajistit, aby stahované soubory buď nebyly inkrementační (tedy aby se dříve načtené doklady již nevyskytovaly v následujícím výpise), nebo aby stahovaný bankovní výpis obsahoval jednoznačnou identifikaci bankovní transakce a aby používaná importní procedura dokázala takto již dříve importované transakce ignorovat.

2) Import souborů prostřednictvím API rozhraní integrovaného v ESO9. Podrobnější popis lze nalézt v dokumentu <a href=„http://wiki.eso9.cz/lib/exe/fetch.php/startdoc:cz:eso9_-_online_propojeni_s_bankou.pdf“ target=„_blank“>Online komunikace s bankou</a>. V současnosti jsou funkční importy bankovních výpisů pro tyto banky : - 0100 - Komerční banka - 0800 - Česká spořitelna - 5500 - Raiffeisenbank (ověřovací provoz - plně bude k dispozici pravděpodobně během března 2023)

Vlastní načtení souborů do databáze dle těchto definic a jejich zpracování je pak nutno spouštět v SQL serveru, například pravidelně v JOBu. V něm je třeba spouštět následující dvě procedury : exec spImportBaV_NactiSoubory @vlZasilatInfo SmallInt = 1 – 0=Ne; 1=pouze nové soubory; 2=Všechny soubory exec spImportBaV_ZpracujSoubory @vlZasilatInfo SmallInt = 1 – 0=Ne; 1=Ano

První procedura spImportBaV_NactiSoubory provádí import souborů a jejich načtení do tabulky ImportBaV. Zpracování probíhá pro všechny definice, které mají nastaven „Příznak aktivity“ na hodnotu Ano. V závislosti na typu definice se buď prochází zadaný adresář a hledají se soubory odpovídající zadané masce, nebo se provádí stahování souborů přes API rozhraní. Pokud soubor byl již načten dříve a tedy existuje v tabulce ImportBaV (dle jména souboru), pak se znovu načte jen v případě, že má jiný obsah než tento dříve načtený soubor. Informace o zpracovaných souborech je možno zasílat e-mailem na definovanou adresu. Parametrem procedury lze zvolit, zda se mají vypisovat informace o všech importovaných souborech, nebo jen o nových nebo změněných souborech. V případě zavedení nové definice je doporučeno nastavit parametr @vlZasilatInfo=2 (vše), po prověření, že importy fungují správně, ho pak změnit na 1 (=pouze nové soubory) nebo 0 (=nezasílat). Nový nebo změněný soubor se načte do tabulky protokolů (ImportBaV), a nastaví se mu stav „Nezpracováno“.

Druhou procedurou spImportBaV_ZpracujSoubory se pak provádí vlastní zpracování takto načtených souborů. Pro všechny soubory načtené předchozí procedurou, které mají nastaven stav „Nezpracováno“, se provede standardní import bankovních výpisů stejným způsobem, jako by byl prováděn ručně. Zpracování souboru se provádí procedurou pro import zadanou v definici (pokud není zadána, použije se procedura uvedená v příslušné bance). Dle nastavení se provede i rozúčtování bankovních výpisů a jejich automatické spárování. V případě, že by nebylo prováděno rozúčtování (nedoporučujeme), bylo by toto nutno provádět následně ručním spuštěním. V tom případě bude v protokolu označeno jako chybné zpracování, a protože pro doklady neexistují účetní zápisy, není v tomto případě ani prováděno automatické párování.

Formulář pro zadání definice automatického importu BAV

Kód a název definice slouží k identifikaci - v informačních a chybových zprávách je uváděn tento kód a název, v případě většího počtu definic je tak zřejmé, u které z importů například došlo k chybě.
Typ definice - za základě nastavení této vlastnosti se pro zvolený typ ve formuláři zobrazují jen ty položky, které pro zvolený typ mají význam. Řešení zobrazování a skrývání těchto položek je ve formuláři řešeno pomocí java-scriptu.

Kód banky - je nutno jej uvést, a to i v případě, že by jeden soubor obsahoval více výpisů z různých bank.
Příznak aktivity - pokud je nastaven na NE, pak se v procedurách provádějících zpracování tyto definice a dle nich načtené soubory nezpracovávají
Režim zpracování - uplatňuje se zejména pro typ „Import přes API“, kdy pro hodnotu „Testovací režim“ slouží pouze pro testovací účely a nepracuje s reálnými daty zákazníka, ale pouze s fiktivními testovacími daty (závisí na konkrétní bance). Ve standardním provozu se bude vždy používat „Produkční režim“.
Pořadí zpracování - určuje pořadí, v jakém se definice budou zpracovávat
Poznámka - volný text sloužící pro uživatelské poznámky
Typ souboru - tyto importy mohou sloužit jak pro načtení bankovních výpisů, tak i pro bankovní výpisy platebních karet.
Procedura pro import - pokud není zadána, použije se procedura uvedená u banky
Kódování souboru - může být použito k překódování obsahu souborů (pokud již není řešeno v importní proceduře)
Procedura prováděná po importu může být využita k následným činnostem, které mají být automaticky prováděny po importu
Počáteční datum importů (pouze pro typ „Import přes API“) - je nutno zadat, od jakého data se bude import provádět. Pokud bylo stahování bankovních výpisů již dříve prováděno „ručně“, a datum by nebylo zadáno, mohlo by dojít k duplicitnímu načtení některých bankovních výpisů.
Datum posledního načtení (pouze pro typ „Import přes API“, položka je pouze pro čtení - readonly) - informuje o tom, pro jaké datum bylo provedeno poslední stažení souboru
Počet dnů do minulosti (pouze pro typ „Import přes API“) - udává počet dnů, pro které se má provádět načítání dat. Načítání výpisů se zpravidla provádí pro zadané datum pohybu. V závislosti na konkrétní bance se však položka bankovního výpisu může ve výpisu objevit až o několik dnů později, proto je nutno načítat výpisy zpětně o zadaný počet dnů. Problematické jsou zejména platby kartou, které se mohou ve výpise objevit například až za několik dnů (např. 3-4 dny).
Adresář pro zpracování (pouze pro typ „Import ze souboru“) musí být uvedená celá cesta včetně masky souborů, které mají být zpracovávány, například : \\sql-eso-02\Banky\0300\*.xml
Alternativní název (pouze pro typ „Import ze souboru“) - v případě mapování síťových disků je možné, že volání příkazů CMD používané v procedurách vyžadují jinou syntaxi zadané cesty než příkazy SQL serveru, například : \\sql-eso-02\z$\Banky\0300\*.xml
Zpracování podadresářů (pouze pro typ „Import ze souboru“) - pokud je zadáno ANO, budou se procházet i všechny podadresáře
Přípona pro přejmenování (pouze pro typ „Import ze souboru“) - pokud je nastavena, bude soubor po načtení přejmenován (a tím pádem se již nebude v dalším volání procedurou spImportBaV_NactiSoubory procházet)
Rušit staré protokoly - vlastní obsah souboru je potřebný pouze v době zpracování, pro případnou zpětnou kontrolu je vhodné tam obsah souboru po nějakou dobu ponechat. Vzhledem k tomu, že načtené soubory mohou být v závislosti na četnosti pohybů poměrně velké a zabírají tak značné místo v databázi, je ale vhodné je po určitém čase zrušit - buď je možno zrušit celý záznam (pak se zruší i informace o provedení importu a vazba na importované bankovní výpisy), nebo lze pouze vymazat obsah souboru (což je právě ta položka, která zabírá nejvíce místa v tabulce). Je nutno zadat počet dnů, po které se má toto zrušení/vymazání obsahu provést (doporučená hodnota : 90 = asi 3 měsíce). Toto se pak provádí v rámci zpracování souborů (v proceduře spImportBaV_ZpracujSoubory).
E-mailové adresy pro zasílání informačních a chybových zpráv
Kód uživatele, pod kterým bude prováděno načtené bankovních výpisů
Provádět rozúčtování - v odůvodněných případech je možno nastavit, že se při importu nemá provádět rozúčtování (nedoporučeno). V tomto případě ale je nutno zajistit rozúčtování dokladů jiným způsobem, navíc není možno provádět po importu automatické párování
Provádět párování - definuje, zda se po importu má spustit automatické párování načtených bankovních výpisů

Pro typ „Import přes API“ se dále na základě konkrétní banky mohou zobrazovat další odkazy nebo tlačítka, která slouží pro nastavení některých dalších parametrů. Tyto parametry (pro každou banku může být požadována odlišná množina parametrů) jsou zobrazeny v dolní formě, kde je možno zadat nastavit hodnotu, která se však po jejím nastavení z bezpečnostních důvodů u většiny parametrů nezobrazuje - je pouze zobrazena informace o tom, zda a kdy byla hodnota parametru nastavena. U některých parametrů je zobrazena i jejich doba platnosti, tyto parametry je nutno opět z bezpečnostních důvodů po určité době nastavit znovu (tato pravidla jsou definována konkrétní bankou).
Podrobnější popis lze nalézt v dokumentu <a href=„http://wiki.eso9.cz/lib/exe/fetch.php/startdoc:cz:eso9_-_online_propojeni_s_bankou.pdf“ target=„_blank“>Online komunikace s bankou</a>.

Tlačítkem „Nové API definice“ bude provedeno založení dostupných definic pro ty banky, pro které v aplikaci existuje alespoň jeden aktivní peněžní účet.

DokuWiki Appliance - Powered by TurnKey Linux