Faktura

Fakturou se zde myslí podrobné zachycení pohybu konktétního zboží a dodaných služeb (včetně množství respektive rozsahu) jiných než je konektivita, vázané na stranu poskytující a požívající; součástí jsou informační položky potřebné pro vedení příslušné účetní dokumentace.

Obsah

Formát

Faktura se pro potřeby uchování a výměny informací ukládá do samostatného textového souboru (ten obsahuje fakturu a nic než fakturu). Text je reprezentován ve znakové sadě ISO-8859-2. Rozdělení do řádků je vyznačeno znakem LINE FEED (hexadecimální hodnota znaku je a; UNIXové konce řádků).

Textový formát faktury je pozičně a řádkově orientovaný. Následuje hrubý popis hlavičky. Ta je složena z povinných řádků, tj. řádek v souboru musí být. Dále rozlišuji, kdy na řádku může hodnota být vynechána (řádek je prázdný) nebo vynechána být nesmí. První případ je označen písmenem P (povinná hodnota), druhý pak V (volitelná hodnota).

Hlavička faktury

  1. P číslo faktury

  2. V evidenční číslo faktury

  3. P typ faktury (faktura nebo zálohová)

  4. P datum uskutečnění plnění

  5. P datum vystavení faktury

  6. V datum splatnosti faktury

  7. V variabilní symbol předepsaný vystavitelem plátci faktury

  8. V specifický symbol předepsaný vystavitelem plátci faktury

  9. V konstantní symbol předepsaný vystavitelem plátci faktury

  10. V číslo účtu předepsané vystavitelem plátci faktury

  11. P způsob úhrady

  12. P dodavatel

  13. P odběratel

  14. P vystavitel faktury

  15. V poznámka

  16. V doménové jméno nebo IP adresa [čeho?]

  17. P ?nevím co? (ne nebo vcdph19)

Hlavičku bezprostředně následuje seznam fakturovaných položek. Seznam musí být neprázdný.

Cílem popisu je nejen zachytit formát, ale také souvislost jednotlivých položek, aby programy pro zpracování věděly, s čím mají/mohou počítat.

Číslo faktury

povinná hodnota

struktura: jedena z následujících, kde YYYY značí kalendářní rok, UUUU číselný identifikátor uživatele, NNNN pořadové číslo, MM číslo měsíce, LL délka období v měsících.

První číslo se dále často nazývá typem faktury, ačkoli typ faktury je jiná položka (zálohová/finální).

  1. prodej konektivity
  2. prodej zboží
  3. nákup konektivity
  4. nákup zboží
  5. užití zboží
  6. výroba

Evidenční číslo faktury

volitelná hodnota

struktura: řetězec

Typ faktury

povinná hodnota

vzor: ^[fz]$

Datum uskutečnění plnění

Povinná hodnota pro ostré faktury, zakázaná pro zálohové.

formát data - shodne se DZ a OZ?

vzor: dd.mm.yyyy

Datum vystavení faktury

povinná hodnota

formát data - shodne se DZ a OZ?

vzor: dd.mm.yyyy

Datum splatnosti faktury

Povinná hodnota, je-li typ platby bezhotovostní a zároveň se nejedná o fakturu typu 5 a zároveň je dodavatelem sklad. Jinak volitelná.

formát data - shodne se DZ a OZ?

vzor: dd.mm.yyyy

Variabilní symbol

Povinná hodnota, je-li typ platby bezhotovostní a zároveň se nejedná o fakturu typu 5 a zároveň je dodavatelem sklad. Jinak volitelná.

vzor: ^\d+$

Pokud je u faktur 2 uveden a neodpovídá vzoru UUUU (úvodní nuly mohou být vynechány) z čísla faktury, varovat.

Specifický symbol

Povinná hodnota, je-li typ platby bezhotovostní a zároveň se nejedná o fakturu typu 5 a zároveň je dodavatelem sklad. Jinak volitelná.

vzor: ^\d+$

Pokud je u faktur 2 uveden a neodpovídá vzoru YYYYNNNN z čísla faktury, varovat.

Konstantní symbol

Povinná hodnota, je-li typ platby bezhotovostní a zároveň se nejedná o fakturu typu 5 a zároveň je dodavatelem sklad. Jinak volitelná.

vzor: U faktur typu 2 ^008|308$, jinak ^\d+$

Číslo účtu

volitelná hodnota; povinné, je-li typ úhrady bezhotovostní

vzor: ^(?:\d+-)?\d+\/\d{4}$

Způsob úhrady

povinná hodnota

struktura: znak u (bezhotovostní) nebo symbol pokladníka, který přijal hotovost

Dodavatel

povinná hodnota

Je-li typ čísla faktury 5, musí být dodavatel /^crf\./ .

struktura: ^[a-z0-9.-]*$

Odběratel

povinná hodnota

struktura: tabulátorem oddělená řetězcová pole

Řetězcová pole (P povinná hodnota, V volitelná hodnota). Rozlišující je první pole, další pak mají jen informativní charakter.

  1. P identifikátor ^[a-z0-9.-]*$
  2. V jméno/symbol
  3. V ulice a číslo popisné
  4. V město
  5. V PSČ
  6. V IČ
  7. V DIČ

Je-li typ čísla faktury 5, musí být odběratel /^crf\./ .

Pole druhé a další mohou být uvedena, je-li v prvním poli symbol none0.

Vystavitel faktury

povinná hodnota

struktura: ^[a-z0-9.-]*$

Poznámka

volitelná hodnota

struktura: řetězec

Doménové jméno nebo IP adresa

volitelná hodnota

[nevím co] ('''ne''' nebo '''vcdph19''')

povinná hodnota

vzor: ^ne|vcdph19$

Seznam fakturovaných položek

Seznam musí být neprázdný. Položky se fakturují samostatně na řádek.

struktura řádku: tabulátorem oddělená řetězcová pole

  1. P klíč identifikující zboží či službu, formát ^[a-z0-9.,-]*$
  2. P množství
  3. cena
  4. V sériové číslo výrobku

V jedné faktuře musejí mít všechny položky totéž znaménko množství (faktura popisuje pouze pohyb jedním směrem).

formát množství a ceny

Desetinná čísla s přesností na dvě místa, oddělovačem desetinných míst je "," - čárka, oddělovače tisíců se nepoužívají. Při vystavování faktur, kde jedna věc je rozdělena mezi více odběratelů dbát, aby součet částí dal celek (třem lidem účtovat 0,33, 0,33, 0,34). Doporučeno je načítat celou a desetinnou část zvlášť, vynásobit stem, sečíst a dále počítat celočíselně.

záporné množství

Je-li uvedeno záporné množství, zboží přibývá dodavateli.

Záporné množství nesmí být na faktuře typu 5.

Více o pravidlech zpracování faktur se záporným množstvím viz Dobropis.

sn

Sériové číslo výrobku, má-li ho stanoveno. Položka má formát řetězce, pouze se nesmí objevit znak TAB, který by byl interpretován jako oddělovač položek řádku. Dvojice znaků ", " je chápána jako vnitřní oddělovač v rámci položky, odděluje jednotlivá sériová čísla, jejichž počet by měl odpovídat množství. Tuto souvislost ale není třeba kontrolovat programově.

zvláštní případy

dopočet ceny

Dopočet ceny na faktuře typu 5 se přátelí s následujícím.

specifické zboží

Tvar kódu hw-NNNN-AAAA

Takové zboží, které se pro svou ojedinělost nevyplatí zavádět do trvalého číselníku, ale přesto je zájem sledovat jeho pohyby. Typicky:

Příklad kódu: hw-0023-dell

Při zaevidování faktury obsahující specifické položky je třeba provést záznam do pomocného souboru /opt/invoicing/data/hardware-spec obsahujícího seznam všech specifických položek, jejich názvů a čísel faktur, kde se poprvé objevily. Z něj se odvozuje pořadové číslo nově vkládané položky a má i další použití. Informace v tomto souboru jsou redundantní a není záruka, že je soubor synchronizován s ostrými daty.

Operace s fakturou

Přehled operací.

Tabulkové vlastnosti operací

Přehledy pohybů

Skladové zůstatky

Ohodnocení skladu

Účetní lístky

Ceník

Ztotožněné sklady

ne

ne

ano

ano

ano

Skladový alg.

ne

ne

ano

ano

ano

Práce s cenami

ne

ne

ano

ano

ano

Zálohové faktury

zpracovat

zpracovat

ignorovat

ignorovat

ignorovat

hw-jiny

ignorovat

ignorovat

ignorovat

zpracovat

ignorovat

hw-NNNN-AAAA

zpracovat

zpracovat

zpracovat

zpracovat

zpracovat

sl-jine

ignorovat

ignorovat

ignorovat

zpracovat

ignorovat

Výstupní kódování

ISO-8859-2

ISO-8859-2

ISO-8859-2

ISO-8859-2

ISO-8859-2

Zachycení pohybu

Základním významem faktury v našem pojetí je zachytit pohyb vybavení (případně poskytnutí služeb jiných, než připojení/konektivita (proč se konektivita řeší zvlášť?)). Předmětem pohybu jsou fakturované položky. Roli zdroje zaujímá dodavatel, cíle odběratel. Pohyb je doplněn řadou atributů.

Faktura zachycuje pohyb sama o sobě. K jeho odvození nejsou třeba žádné transformace.

Přehledy pohybů

Přehledy pohybů zachycují všechny zaznamenané pohyby daného typu zboží či služby zvlášť pro každého dodavatele či odběratele.

Pohyby se ve vzestupném uspořádání podle data uskutečnení nebo data vydání faktury, není-li datum uskutečnění k dispozici, zapisují po řádcích do souboru <název položky> v adresáři <odběratel> a v adresáři <dodavatel> s opačným znaménkem. Jména adresářů a souborů jsou v případě potřeby změněna tak, aby mohla existovat v souborovém systému.

Na řádku je zapsáno:

Položky jsou odděleny tabulátorem.

Skladové zůstatky

Skladové karty zachycují všechny zůstatky daného typu zboží či služby zvlášť pro každého dodavatele či odběratele.

Ohodnocení skladu

Ohodnocení skladu poskytuje přehled hodnoty skladu a ostatních úctů.

Formát karty je řádkově orientovaný. Začíná dvěma řádky hlavičky. Ty následuje seznam položek.

Hlavička.

  1. Jméno účtu,
  2. číselná hodnota evidovaného zboží.

Seznam položek. Na každém řádku je zachycen jeden typ/klíč položky. Záznam se skládá ze třech tabulátorem oddělených polí.

  1. klíč (typ položky)
  2. množství
  3. číselná hodnota za celé množství

Účetní lístky

Generování účetních lístků je popsáno na samostatné stránce UcetniListky.

Ceník

Sestaví tabulku vyskladňovacích cen všech evidovaných položek. Ta bude sloužit především jako základ pro výpočet doporučených prodejních cen.

Definice

Sklad

To, že protějšek je sklad, se pozná tak, že symbol vyhovuje vzoru /^crf\.hw/.

Skladový algoritmus

Skladový algoritmus slouží k dopočtení ceny pohybu konkrétní položky v konkrétním množství ze skladu pryč.

Předpoklady použití skladového algoritmu.

Příklady konkrétních pohybů

nákup služeb a přefakturace - bezhotovostní

Situace: Petr doda nekomu praci, kterou my s prirazkou vyfakturujeme, platba bude na ucet.

nutno zauctovat dvema pohyby:

nakup
        dodavatel: petr
        odberatel: crf.hw
        castka 300
        fuhrady pr -> pricte se ve prospech uctu petra
prodej
        dodavatel: crf.hw
        odberatel: zakaznik
        castka 350
        fuhrady u -> nam zaplati odberatel na ucet, petruv ucet neovlivnen

shrnuti - vliv na petruv ucet:

+300

nákup služeb a přefakturace - hotovostní

Situace: Petr doda nekomu praci, kterou my s prirazkou vyfakturujeme, penize vybere petr hotove.

nutno zauctovat dvema pohyby:

nakup
        dodavatel: petr
        odberatel: crf.hw
        castka 300
        fuhrady pr -> pricte se ve prospech uctu petra
prodej
        dodavatel: crf.hw
        odberatel: zakaznik
        castka 350
        fuhrady pr -> odberatel zaplatil petrovi, evidovano na vrub petrova uctu

shrnuti - vliv na petruv ucet:

+300
-350

Pozn: Staci takhle zauctovat, 50 korun rozdilu at Petr nikomu nedava - to by prinaselo spis komplikace. Lepsi je to jen takto zaevidovat na jeho ucet, protoze sdruzeni mu beztak dluzi (jeho ucet kladny)..

crfreenet: InterniFaktura (last edited 2009-06-03 11:05:04 by eduroam77)

[CRFreeNet] [Galerie] [CZFree.Net] [zen#blog]