Vyúčtování za služby
Někteří uživatelé od nás vyžadují vyúčtování za služby. Zde by mělo být popsáno, jak se postupuje.
Domácím adresářem systému vyúčtování je carlos:/home/sdruzeni/faktury.
Generování dokumentů
Jeden prvek automatizace je generování vyúčtování. Vyúčtování generuje program invoice-gen.pl. Program invoice-gen.pl je uložen v CVS repozitáři /home/sdruzeni/cvsroot v adresáři invoicing.2 na Carlosovi.
Vstupní údaje
Vstupní údaje se programu předávají na příkazové řádce. Pořadí argumentů se částečně řídí poziční logikou a částečně klíčovými slovy.
- První argument je povinně název účtu.
- Druhý argument je povinně adresa elektronické pošty.
- Třetí argument je povinně identifikátor faktury.
- Všechny další argumenty jsou uvozeny klíčovým slovem.
Klíčová slova
Klíčová slova jsou dvojího druhu.
- Jedna skupina předává globální vlastnosti vyúčtování. Při násobném výskytu platí poslední hodnota. Jedná se o tato klíčová slova.
krátký název
dlouhý název
formát
příklad
slovní popis
pa
postal-address
name street+no postal code town
"Petr Novák" "Ulice 123" "537 01" "Chrudim"
poštovní doručovací adresa (voliteně; zatím se nepoužívá)
ta
target-address
name street+no postal code town
adresa místa odběru (volitelně; kde je připojen)
ia
invoice-address
name street+no postal code town
fakturační adresa (komu se fakturuje)
td
today
DD-MM-YYYY
10-01-2007
datum vystavení (není-li uvedeno, použije se dnešní)
dd
due-date
DD-MM-YYYY
24-01-2007
datum splatnosti (není-li uvedeno, použije se 14 dní po datu vystavení)
id
id no.
26657007
IČ odběratele (volitelně)
vt
vat
vat no.
CZ26657007
DIČ odběratele (volitelně)
op
output-pattern
path/stem
/tmp/vs300
Specifikuje adresář a případně název výstupních souborů (volitelně). Je-li celá hodnota existující adresář, pak je chápána jako cesta. Jinak, neobsahuje-li lomítko, je chápána jako základ jména souborů. Jinak se rozpadá podle posledního lomítka na cestu a základ jména souborů. Mimo obvyklích omezení na cestu a název souboru je třeba respektovat také specifika programu pdflatex.
- Druhá skupina popisuje služby, které účtujeme. Pořadí a počet výskytů určuje obsah vyúčtování. Jedná se o tato klíčová slova.
krátký název
dlouhý název
formát
příklad
slovní popis
gw
gateway
from to amount
"01-01-2007" "30-06-2007" "2100"
služba internetové brány
md
mail-delivery
amount
"60"
služba zaslání vyúčtování v papírové formě
Příklad použití
./invoice-gen2.pl "safjaki161" "jindrich.safarik@vlasak.net" "sdf5g4hf654" \ td "20-12-2006" \ ia "Ing. Moc Chytrý" "Pod kopcem 123" "537 01" "Chrudim" \ gw "01-06-2006" "31-12-2006" 2300 \ dd "14-12-2006" \ id "12345678" \ vat "CZ1234567890" \ ta "Zikmund Žlutý" "U vrtačky 13" "654 32" "Medle" \ md "60"
Výstup
Program generuje výstup do adresáře ./generated. Adresář musí existovat před spuštěním programu.
Výstupem jsou tři soubory.
- Textová podoba vyúčtování (přípona .txt),
- vyúčtování v pdf formátu (přípona .pdf)
- a dopis sestavený pro odeslání elektronickou poštou (přípona .822).
A také řada pomocných.
LaTexový zdrojový text
a soubory generované programem pdflatex - ty jsou automaticky mazány.
Vývoj
Program je nyní určen ke generování vyúčtování za služby. V případě potřeb může být rozšířen.
Jsou-li v programu chyby, přijde se na ně jeho používáním. V případě smysluplného hlášení se chybu pokusím odstranit.
Spouštění generování a rozesílání vyúčtování
Pravidelné generování vyúčtování probíhá na základě řádkově orientovaného textového popisného souboru. První sloupce (právě jedním tabulátorem oddělené) mají následující význam.
Č. sl. |
Popis |
Příklad |
1 |
rok odeslání prvního vyúčtování |
2007 |
2 |
měsíc odeslání prvního vyúčtování |
9 |
3 |
den v měsíci, kdy má být vyúčtování odesláno |
14 |
4 |
perioda v měsících |
3 |
5 |
částka účtovaná za periodu |
1050 |
Období, za které je vyúčtování generováno, je určeno automaticky. Za první den období se považuje první den měsíce, ve kterém dochází k odeslání vyúčtování, za poslední pak podlední den měsíce, ve kterém končí perioda. V důsledku toho se mezi parametry pro generování vyúčtování nesmí objevit příkaz gw.
Po výše popsaných povinných sloupcích/parametrech následují parametry pro generování vyúčtování (bez příkazu gw; ten je doplněn automaticky).
Řádky začínající znakem # a prázdné řádky se ignorují.
Papírová podoba vyúčtování
Pro uživatele, kteří trvají na papírové podobě vyúčtování, jej vyhotovíme. S vyhotovením bude spojeno značné množství práce. Proto je třeba tuto službu hned od začátku zpoplatnit tak, aby byly pokryty veškeré náklady včetně práce zaměstnance. V šabloně smlouvy je stanovena cena 60 kč. Ta náklady snad pokryje.
Vyúčtování vznikne tiskem pdf podoby.
Tisk adresy na obálku jsem se rozhodl neřešit s tím, že ruční nadepsání bude snažší, než se trápit s tiskárnou. Do budoucna se může postup změnit. Umíme generovat takovéto obálky.
Nashromáždí-li se dostatek obálek, aby se vyplatilo jít na poštu, předají se obálky k doručení.
