TL;DR ✨
Většinou se usádlíte na tom, že tato noční můra Flexibee prostě nefunguje, anebo funguje natolik vágně, že to stejně doděláváte ručně.
Takovým vysvobozením a odfajfknutím jedné věci, tkerá dlouho ze strany ABRA Flexi s.r.o měla být udělána a nebyla je php-flexibee-matcher z dílny Víťu. Podrobný popis nalezneme na GitHubu. Krátký výcuc:
Článek z archivu
Text byl poprvé publikován 2018-04-23. Čtěte ho proto i jako dobový pohled; některé údaje a doporučení už nemusí odpovídat dnešku.
✨ 🎯 Popis problému:¶
Článek ukazuje jak nasedlat na jeden z moha výborných kusů práce, který udělal Vitex Software pro ABRA Flexibee. Jedná se o pokročilé možnosti párování ve Flexibee. Jak jistě víte, když chcete párovat platby ve Flexibee, máte velmi omezené možnosti a to ty, které jsou uvedeny v printscreenu.

Většinou se usádlíte na tom, že tato noční můra Flexibee prostě nefunguje, anebo funguje natolik vágně, že to stejně doděláváte ručně.
Takovým vysvobozením a odfajfknutím jedné věci, tkerá dlouho ze strany ABRA Flexi s.r.o měla být udělána a nebyla je php-flexibee-matcher z dílny Víťu. Podrobný popis nalezneme na GitHubu. Krátký výcuc:
Párovač faktur pro FlexiBee¶
Instalace balíčku po spuštění (vytvoří potřebné štítky NEIDENTIFIKOVANO a CHYBIFAKTURA)
K dispozici jsou dva skripty na párování faktur:
[ParujFakturyNew2Old.php](src/ParujFakturyNew2Old.php) - páruje faktury po jednotlivých dnech zpět až 3mesíce.
[ParujFaktury.php](src/ParujFaktury.php) - pokusí se zpárovat všechny nespárované doklady
Algoritmus je následující:
* stažení výpisů z banky do flexibee
* projdou se všechny nespárované příjmy v bance ( /c/firma_s_r_o_/banka/(sparovano eq false AND typPohybuK eq 'typPohybu.prijem' AND storno eq false AND datVyst eq '2018-03-07' )?limit=0&order=datVyst@A&detail=custom:id,kod,varSym,specSym,sumCelkem,datVyst )
* Platby se pak v cyklu po jedné zpracovávají
* Ke každé příchozí platbě se program pokusí nalézt vhodný (neuhrazený a nestornovaný) doklad ke spárování. Nejprve podle variabilního symbolu. Nakonec dle prostého specifického symbolu.
* Výsledky jsou sjednoceny dle čísla bankovního pohybu ve flexibee aby nedocházelo k duplicitám když faktura vyhoví více ruzným hledáním.
* Platby které nemají dohledaný protějšek dle žádné z podmínek jsou označeny štítkem NEIDENTIFIKOVANO
* Pokud k platbě není dohledána faktura, dostane platba štítek CHYBIFAKTURA
Dohledané doklady se pak párují takto:
* **FAKTURA** - platba se spáruje s fakturou + uhrazená faktura je odeslána z flexibee na email klienta
* **ZALOHA** - zálohová faktura je spárována s platbou + je vytvořen daňový doklad se stejným variabilním symbolem od kterého je tato záloha odečtena.
* **DOBR** - je proveden odpočet dobropisu
* Ostatní - je zapsáno varování do protokolu s polu s linkem do webového flexibee
🐧 Debian/Ubuntu¶
Pro Linux jsou k dispozici.deb balíčky. Prosím použijte repo:
wget -O - http://v.s.cz/info@vitexsoftware.cz.gpg.key|sudo apt-key add -
echo deb http://v.s.cz/ stable main > /etc/apt/sources.list.d/ease.list
apt update
apt install php-flexibee-matcher
Po instalaci balíku jsou v systému k dispozici dva nové příkazy:
- php-flexibee-matcher - páruje všechny toho schopné faktury
- php-flexibee-matcher-new2old - páruje den po dni od nejnovějších plateb ke starším
🔍 Konfigurace¶
- /etc/flexibee/client.json - společná konfigurace připojení k FlexiBee serveru
- /etc/flexibee/matcher.json - nastavení párovače:
"EASE_APPNAME": "InvoiceMatcher", - název aplikace
"EASE_MAILTO": "info@yourdomain.net", - kam odesílat reporty
"EASE_LOGGER": "syslog|mail|console", - jak logovat
"PULL_BANK": "false", - stahnout banku před párováním
"DAYS_BACK": "7" - až kolik dní zpět párovat
✨ 🎯 Řešení:¶
Článek popisuje, jak to rozchodit pro testovací účely u nás doma. To hlavní, co očekáváme je, že se budou doklady párovat doklady podle nějakých kritérií, které si zvolíme. Hlavní očekávaná kritéria jsou:
- Páruj dle VS (to co dělá současné Flexibee)
- Páruj podle VS a SS (to co očekáváme jako novinku)
- Páruj jen dle SS
- Páruj v nějakém intervalu (např +- 20 dní)
🔍 🎯 Kuchařka nastavení:¶
- Stáhneme si z GitHubu zdrojové soubory (vpravo zelené tlačítko download as zip). Pro ňimrody klikni zde
- Stáhneme si Vagrantup dostupné na: https://www.vagrantup.com/downloads.html
- Stáhneme a nainstalujeme si virtualbox: https://www.virtualbox.org/wiki/Downloads
- Odzipujeme soubory z GitHubu, vejdeme dovnitř do adresáře cd /php-flexibee-matcher/ a zadáme příkaz vagrant up
- Počkáme asi půl století, než se vše přechroupe (utvoří se nám debianí virtuál) a pak zadáme příkaz vagrant ssh
- Tím se přihlásíme do naší virtuální mašinky. Nyní musíme zeditovat soubor s názvem client.json. Tento soubor najdeme v adresáři /vagrant. Zde si to zeditujeme tak, abychom tam měli URL naší flexibee firmy, login a heslo a název firmy. Ukázka: vagrant@stretch:/vagrant$ cat client.json { "FLEXIBEE_URL": "https:\/\/MojeFirma.flexibee.eu:5434", "FLEXIBEE_LOGIN": "flexicosi", "FLEXIBEE_PASSWORD": "tajneHeslo", "FLEXIBEE_COMPANY": "demo" }
- Nezapomeneme zeditovat matcher.json a to dle tohoto mého návrhu: vagrant@stretch:/vagrant$ cat matcher.json { "EASE_APPNAME": "InvoiceMatcher", "EASE_MAILTO": "tvujMail@connectica.cz", "EASE_LOGGER": "mail|console", "PULL_BANK": "false", "DAYS_BACK": "14" }
- A je to. Pak už jen snadno spustíme vagrant@stretch:/vagrant/src$ /usr/bin/php-flexibee-matcher a můžeme se chvíli civět, jak se práce (asi) dělá za nás.
Až výše uvedené budete mít za sebou, čeká vás fáze ladění a oprav. Každé podnikání má své specifikum a pokaždé vám proces vyplivne nějaký výsledek. Ono přikazová řádka snese všechno. Pokud s tím budete mít nějaké potíže, zkuste napsat nebo zavolat Víťovi
Naopak pokud jste skilled a už vám to jde, tak se přesuňte na další level - Flexibee upomínkovač: https://github.com/VitexSoftware/php-flexibee-reminder