A paraméterrel a Számla importálás (XML) funkció meghatározott formátumú CSV fájlból számlákat tölt be.
A CSV fájl oszlopainak sorrendje mindegy, azonban a használt oszlopneveknek fixnek kell lenniük. A beolvasó által használt oszlopnevek:
„Számlaszám”
„Kiállítás”
„Teljesítés”
„Fizetési határidő”
„Fizetési mód”
„Megnevezés”
„Mennyiség”
„Adókulcs”
„Nettó”
„Bruttó"
"Bruttó EUR"
F4:Fiz.mód táblázat gombbal megadható egy táblázat, melyben meg kell adni minden, a CSV fájlban lehetségesen szereplő fizetési módot és minden megadott fizetési módhoz egy Machinátoros ügyfélkódot kell rendelni. Pl:
Fájlból érkező fizetési módok |
Machinátoros ügyfélkód |
Mastercard |
464405 |
Cirrius Maestro |
464405 |
Visa Card |
464405 |
Átutalás |
400000 |
A program a segédtáblában megadott fizetési módokat a CSV fájl „Fizetési mód” oszlopában keresi.
A program a „Számlaszám” oszlopban megadott azonosítót veszi külső számlaszámnak, amely szám a Machinátorban generált számla Alapbizonylat mezőjébe fog kerülni. Ha több sorban került megadásra a CSV fájlban ugyanaz a „Számlaszám”, azokat a sorokat a program egy számla több tételének veszi. Ezekből a sorokból a program egy db számlát generál. Az alapbizonylat szolgál továbbá a duplikálódás elkerülésére, tehát ha a megadott „Számlaszám” mezőben érkező azonosító már szerepel valamelyik machinátoros számla
Alapbizonylat mezőjében, úgy a számla nem kerül beolvasásra, mert a program úgy veszi, hogy ez a számla már beolvasásra került.
A „Kiállítás” mezőben érkező adat lesz a Machinátorban generált számla kibocsátásának kelte. A „Teljesítés” mezőben érkező adat lesz a Machinátorban generált számla teljesítésének kelte. A „Fizetési határidő” mezőben érkező adat lesz a Machinátorban generált számla fizetési határideje. A Machinátorban generált számla ügyfele „Fizetési mód” mezőben érkező adat alapján a segédtáblában megadott ügyfélkódon a Machinátorban szereplő ügyfél lesz.
Azokhoz a sorokhoz, amelyek „Fizetési mód” mezőjének utolsó 4 karaktere EURO, a program devizás számlát fog generálni (belföldi devizaszámlát) EUR devizanemmel. A beolvasás devizás számlaként csak az EURO-s számlákat kezeli.
A Machinátorban generált számla fejlécének többi adata alapértékekkel fog feltöltődni.
A beolvasás során a program kétféle összevonást csinál.
A program megvizsgálja a CSV fájl „fizetési mód” mezőjében érkező adatot. Átutalás érték esetén minden, a CSV fájl „Számlaszám” mezőjében külön azonosítóval ellátott számla különálló számlaként generálódik le a Machinátorban is. Minden más fizetési mód esetén a program egy napon belül (a „Kiállítás” mezőben szereplő dátum alapján) a segédtáblában megadott összes olyan fizetési módú számlát, amelyhez ugyanaz az ügyfél lett megadva, összevonja a Machinátorban egy számlába. Ekkor a machinátoros számla Alapbizonylat mezőjébe ezen számlák „Kiállítás” mezőben megadott dátuma kerül összefűzve az adott fizetési módokhoz megadott ügyfelek kódjával és
egy napon belüli sorszámmal. Amennyiben egy „Kiállítás” dátum szerint összevonásba bevont sorok többféle „Teljesítés” vagy „Fizetési határidő” dátumot tartalmaznak, úgy a Machinátoros számlába generált Teljesítés és Fizetési határidő az első számlába generált sor adatát fogja megkapni.
A számlákon belül a program annyi tételt készít, ahány különböző, a „Megnevezés” mezőben érkező érték kerül az első pontban meghatározott összevonások után keletkező számlába.
A „Megnevezés” oszlopban érkező érték első szóközig figyelt karaktereit a program a Machinátoros cikkszámok között keresi meg. Amennyiben megtalálja, az adott cikket beválasztja a számlába. Amennyiben nem találja meg a cikket a cikktörzsben, úgy a számlatétel cikkszám nélkül generálódik le, és a „Megnevezés” oszlopban érkező érték a számla tétel megnevezésébe kerül beírásra a megengedett karakterek erejéig, ott elvágva az érkező szöveget. A „Mennyiség” mezőben érkező adat a Machinátorban létrehozott számla tétel mennyisége lesz.
Az „Adókulcs” mezőben érkező adat a Machinátorban létrehozott számla tétel Áfa kulcsa lesz. 0 érték esetén Hatályon kívüli, 5, 18, 27 esetén az ennek megfelelő %-ú Áfa kulcsok kerülnek a számlába. Amennyiben nincs a Machinátorban érvényes Áfa kulcs az Áfa táblában definiálva olyan értékkel, ami a fájlból érkezik, úgy a tétel nem kerül beolvasásra és a sor hibalistára kerül.
A „Nettó” mezőben érkező adat a Machinátorban létrehozott számla tétel Nettó egységára lesz. Devizás számla esetén a program a „Bruttó EUR” mezőben érkező adatot elosztja 1 mínusz az áfakulccsal. A kapott eredmény lesz a számla tétel nettó egységára (devizában).
A fenti osztások eredményeként és abból fakadóan, hogy a Machinátor Nettó értéket tárol a számlákhoz, valamint az összevonások által előfordulhat kerekítési különbözet a Machinátorban generált számla és a fájlból érkező adatok között!
Devizás számla esetén a számla fejlécébe bekerülő árfolyam a Machinátorban megadott VPI árfolyam lesz a generált számla „Kiállítás” dátumára. Amennyiben nincs megadva a Machinátorban megfelelő napi árfolyam, úgy a program az utolsó érvényes árfolyamot használja.
A program a Machinátorban az összevonások után generált számláiban számlánként összehasonlítja az összevont tételek „Bruttó” mezőben érkező adatainak összegét a Machinátorban generált számla bruttó végösszegével és a különbséget számla kerekítésben vezeti el.
A program a nem létező áfakulcs vagy fizetési mód miatt a beolvasásból kihagyott sorokat a beolvasás végén egy hibalistán jeleníti meg.