A kontírozási feltételeknek megfelelő (zöld) számlák kontírozása a számla adminisztrációs képernyőn található [Kontírozás] gomb megnyomásával végezhető el.
Kontírozási feltételek: FokAll = ’0’ – Alap főkönyvi állapot Számla fej
Torolt = ’N’ – Nem törölt tétel Számla fej és tétel
Jogosultságkód: 255501 Help context: 255501
Normál szállítói számla:
Pl-A: Szállító Teljesítés dátuma: 2002.07.30
T5 400 K454 500
T466 100
Normál vevő számla:
Pl-B: Vevő Teljesítés dátuma: 2002.07.30
T311 500 K9 400
K467 100
A kontírozási fej és tétel adatok előállításának módja:
Minden számlából általában egy kontírozási egység (egy fej és legalább kettő tétel (egy Tartozik és egy Követel) keletkezik. A kontírozási fej a kontírozás fő adatait tartalmazza, míg a tételekben a Tartozik és Követel kontírozási elemek adatai szerepelnek. A program az 1:N típusú kontírozást valósítja meg. Ez azt jelenti, hogy vagy egy Tartozik és több Követel, vagy egy Követel és több Tartozik tételből áll kontírozás. A kontírozási tételek mindig az egyedi tétellel kezdődnek, azaz ha kontírozásunk egy Követel és több Tartozik tételből áll, akkor az első tétel a Követel jellegű lesz, és ezt követik a Tartozik tételek.
A kontírozás feltételei:
Minden pénzügyi bizonylatra (számlára) vonatkozóan:
KkSzlaFej.FokAll=’0’ (Alap – Kontírozatlan főkönyvi állapot) And
KkSzlaFej.Torolt=’N’ (Nem törölt számla) And
KkSzlaFej.SzlaTip=’Számla’ (Tényleges számla) And
KkSzlaFej.TeljDat in Nyitott idő (A számla teljesítés dátuma a nyitott időszakba esik) And
KkSzlaFej.AfaDat in Nyitott idő (A számla áfa dátuma a nyitott időszakba esik)
Számla típus: TipusX := Substring(KkSzlaFej.tip,2,1) S – Szállító
V – Vevő
Számla reláció: RelaciX := Substring(KkSzlaFej.tip,1,1) B – Belföldi
K – Külföldi
FKntFej - Kontírozási fejadatok
Insert
A modul a számla alapadatokból (KkSzlaFej) állítja elő a fejadatokat.
Program által előállított adatok:
Azonosító adatok:
A1. KontEv Kontírozás éve <KontDt-ból>
A2. KontHo Kontírozás hónapja <KontDt-ból>
A3. KontID Kontírozási tételsor f(’KOX’,KontEv)
A4. KontAz Kontírozási azonosító: Program által generált KOX
Pl: KOX-05/12345 – A program a kontírozás dátuma és a rendszerparaméterek között megadott kontírozási bizonylattömb alapján generálja. Ez azonosítja a kontírozási eseményt.
Input adatok:
I1. KontDt Kontírozás dátuma KkSzlaFej.TeljDat
A kontírozás dátuma alap értelmezés szerint a teljesítés dátuma.
I2. NapKod Napló kód:
A naplókódot a számla típustól függően, a rendszerparaméterek közül veszi. A napló kódok közül a nyitó, a záró és korrekciós típusú naplók bírnak kitüntetett jelentéssel a beszámolók előállítása során. A többi naplónak nincs hatása a rendszer működésére.
Szállító: TipusX =’S’ 6SX – Szállító számla gépi kontírozás
<KAzoAda.SzKoSzN> Rendszer paraméterek között tárolt adat.
Vevő: TipusX <> ’S’ 5SX – Vevő számla gépi kontírozás
<KAzoAda.SzKoVeN> Rendszer paraméterek között tárolt adat.
I3. Bizony Bizonylatszám: KkSzlaFej.Iktszam – Iktatószám
A kontírozás bizonylatszáma a számla program által generált adatbázisban lévő azonosítója lesz, és nem a szállító által adott számlaszám! Pl: 000007BS
I4. EloBiz Előző bizonylatszám: KkSzlaFej.Iktszam – Iktatószám
Pl: 000007BS
I5. ParKod Partner kód:
Case TipusX When ’S’ Then AParTor.Parkod (KkSzlaFej.Fszam=AParTor.SzaSzl)
AParTor.Parkod (KkSzlaFej.Fszam=AParTor.VevSzl)
A kontírozási fej adatok közé bekerül a számla partner kódja.
I6. SzeKod Szervezeti egység KkSzlaFej.Szervkod Pl: 1
I7. DolKod Dolgozó kód 0
I8. Megjeg Megjegyzés: KkSzlaFej.Tetel
A számla alap adatok fülön kitöltött megjegyzés mező tartalma kerül ide.
Pl: Szolgáltatási díj 2011.12. hó
Kiegészítő adatok:
K1. BizAzo Bizonylat azonosító FloatToStr(KkSzlaFej.Id)
Számla bizonylat azonosítója Pl: 5513
K2. SzaSza Számlaszám: KkSzlaFej.Szhiv – Számla hívatkozás
Szállítói számlánál a bejövő számla azonosítója. Pl: 0027855
K3. KonAzo Kontírozási azonosító: KkSzlaFej.Iktszam – Iktatószám
A számla kontírozási azonosítója a számla program által generált adatbázisban lévő azonosítója lesz, és nem a szállító által adott számlaszám! Pl: Pl: 000007BS
K4. CsopTip Csoportos kontírozási típus CKT <2> – Csoportos összetartozó
Amennyiben a kontírozási csoportba az áfa át és visszavezetés miatt több kontírozási egység tartozik (lásd: kompenzációs számla), akkor ez a mező jelzi, hogy a tétel összetartozó csoportba tartozik. Ha a csoportba csak egy kontírozási egység tartozik (mert nincs áfa át és visszavezetés), a kontírozás akkor is csoportos, mert a kontírozás során a több kontírozási egység előállításának lehetősége fennállt. Azaz a csoport lehet egy elemű is.
K5. CsKonAz Csoportos kontírozási azonosító FKntFej.First.KontAz
Pl: KOX-05/12345 Az egyszerre kontírozott gazdasági események az első kontírozás kontírozási azonosítóját (KontAz) kapják meg csoportos kontírozási azonosítóként. Az egyszerre kontírozott események nem feltétlenül jelentenek összetartozó kontírozási tételeket. Például egyszerre kontírozott csoport a szállítói kézi számla könyvelés funkció előtétszűrés képernyőjéről elindított csoportos kontírozás, amely kikontíroz minden a kontírozási feltételeknek megfelelő számlát, miközben az egyes számlák, és így azok kontírozásai sem tarotznak össze.
K6. OsKonAz Összetartozó kontírozási azonosító FKntFej.First.KontAz
Pl: KOX-05/12345 Az összetartozó kontírozott gazdasági események az összetartozó elemek első kontírozásának kontírozási azonosítóját (KontAz) kapják meg összetartozó kontírozási azonosítóként. Az összetartozó tételeke csak egyszerre, az első tételen állva stornózhatóak. Összetartozó kontírozások például: úton lévő készlet, nem számlázott szállítások, folyamatos áfa át- és visszavezetése.
Állapot adatok:
Á1. KonMod Kontírozás mód: 2 – Gépi kontírozás
A program által végzett kontírozás módja: 2 – Gépi kontírozás. Amennyiben a kontírozás bármelyik mezőjét megváltoztatjuk a könyvelés elvégzése előtt, akkor a kontírozás módja megváltozik: 1 – Módosított gépi kontírozás.
Á2. FokAll Főkönyvi állapot: 1 – Kontírozott
A kontírozási egység főkönyvi állapota a kontírozás elvégzése után: 1 – Kontírozott. A könyvelés végrehajtása után: 2 – Könyvelt.
Á3. StoKod Stornó állapot 0 – Alap
Á4. StoAzA Stornó azonosító A: 0
Á5. StoAzB Stornó azonosító B: 0
Á6. SzlJel Számla jelleg
Case KkSzlaFej.Jelleg When ’T’ Then ’1’ Else ’2’ end
A kontírozás elve 1:N típusú. Ez azt jelenti, hogy egy számlához több ellenszámla tartozhat. A számla jellege az egy számlának a jellegét (Tartozik / Követel) jelenti. Az ellenszámlák ellentétes jellegűek lesznek.
Á7. KonTip Kontírozás típusa: Z41 – Számla gépi számlakontírozás (ArmCom)
A kontírozás típusa csak gépi kontírozás esetén kap értéket (kézi kontírozásnál 0 lesz a tartalma). A mező tartalma arra utal, hogy a kontírozás milyen típusú gazdasági esemény kontírozásból származik.
Á8. Tartoz Tartozik összesen Sum(FKntTet.Tartoz)
Á9. Kovete Követel összesen Sum(FKntTet.Kovete)
Á10. Mennyi Mennyiség Sum(FKntTet.Mennyi)
Napló adatok:
N1. KOpeKo Kontírozási napló adatok: Operátor kód generált
N2. KTerko Terminál kód generált
N3. KRogda Rögzítés időpontja generált
N4. ROpeKo Könyvelési napló adatok: Operátor kód Üresen marad
N5. RTerko Terminál kód Üresen marad
N6. RRogda Rögzítés időpontja Üresen marad
FKntTet - Kontírozási tételadatok
Insert
Egy kontírozási fejhez legalább kettő kontírozási tétel tartozik. Pénzügyi bizonylatok kontírozásakor az első kontírozási tétel (amit alap tételnek nevezünk) mindig a szintetikus számla (szállító vagy vevő). A második és további kontírozási tételek (amelyeknek ellen tétel a neve) számát a számla áru tételek száma és az áru tételek áfa tartalma határozza meg. Egy olyan áru tételről, amelynek áfa tartalma van (az áfa értéke nem nulla) két kontírozási tétel keletkezik: az egyik az áfa mentes érték kontírozása lesz (költségnem – szállító, árbevétel – vevő), míg a másik az áfa tartalom kontírozása (466 – szállító / 467 – vevő). Amennyiben az áru tétel áfa értéke nulla, akkor az áfa tétel kontírozása elmarad.
1. tétel: Szintetikus számla (szállító / vevő)
2. tétel: 1. áru tétel alap összege
3. tétel: 1. áru tétel áfa tartalma (ha van)
4. tétel: 2. áru tétel alap összege
5. tétel: 2. áru tétel áfa tartalma (ha van)
…
Például egy olyan számla esetén, amelynek négy áru tétele van, és a négy áruból kettőnek van áfa tartalma 7 kontírozási tétel keletkezik: 1 szintetikus számla (1 alap számla) 4 áru alap, 2 áru áfa tartalom (6 ellenszámla).
A, Alap számla (1. kontírozási tétel)
A program a kontírozási tétel adatait a számla alapadatokból (KkSzlaFej) állítja elő
Input adatok: Nincsenek
Program által előállított adatok:
Azonosító adatok:
A1. KontEv Kontírozás éve <KontDt-ból>
A2. KontHo Kontírozás hónapja <KontDt-ból>
A3. KontID Kontírozási tételsor f(’KOX,KontEv)
A4. KontAz Kontírozási azonosító: A kontírozási fej azonosítója.
Pl: KOX-05/12345 A mező a tétel kapcsolódását (master – detail) biztosítja a kontírozási fejhez.
A5. KoTeSo Kontírozási tételsorszám
Inkrementális (folytonos, kihagyásmentesen növekvő egész szám), a kontírozási csoporton belül 1-ről indul
A6. KoTeAz Kontírozási tétel azonosító
KoTeAz=KontAz+’/’+EloNull(KoTeSo,3) A kontírozási fej azonosítójának és kontírozási tétel sorszámának összetételéből származik.
Pl: KOX-05/12345/001 (1. tétel)
A7. SzlTip Számla típus: 1 – Alap
Az első kontírozási tétel típusa mindig Alap (1).
A8. SzlJel Számla jelleg:
Case KkSzlaFej.Jelleg When ’T’ Then ’1’ Else ’2’ end
Input adatok:
I1. FokKod Főkönyvi számla KkSzlaFej.Fszam
Az első kontírozási tétel a szintetikus számla lesz. Ezt a számla fejben rögzített főkönyvi számla. Pl: 454100009
I2. ParKod Partner kód: 0
I3. KtgSzl Költség számla: X
I4. KtgJel Költség jelleg: 0
I5. KtgTip Költség típus: 0
I6. AkdKod ÁFA besorolás kód: 0
I7. ProKod Project kód: 0
I8. TaenAz Tárgyi eszköz azon. 0
I9. SzeKod Szervezeti egység 0
I10. DolKod Dolgozó kód 0
If FKntTet.Jelleg = ’1’ Then {Tartozik}
Begin
I11. Tartoz Tartozik összeg: Round(KkSzlaFej.Osszeg* KkSzlaFej.DevArf,2)
I12. Kovete Követel összeg: 0
End
Else {Követel}
Begin
I11. Tartoz Tartozik összeg: 0
I12. Kovete Követel összeg: Round(KkSzlaFej.Osszeg* KkSzlaFej.DevArf,2)
End
I13. MeeKod Mennyiség egység 0
I14. Mennyi Mennyiség 0
I15. MlpAzo Munkalap azonosító 0
I16. TevKod Tevékenység kód 0
Kiegészítő adatok:
K1. KttAzo Kontírozott tétel azonosító: FloatToStr(KkSzlaFej.Id) – Számla azonosító
Napló adatok:
N1. Opekod Operátor kód generált
N2. Terkod Terminál kód generált
N3. Rogdat Rögzítés időpontja generált
B, Ellenszámla tételek
A program a számlákhoz tartozó tétel adatokból (KkSzlaTet) állítja elő a kontírozási tétel adatait.
Ellenszámla tételek száma: N
Egy számla tétel adatból két kontírozási tétel adat keletkezhet:
Érték tétel akkor jön létre, ha van tétel érték, és áfa tétel is csak akkor keletkezik, ha van ÁFA érték a számla áru tételben.
Az ellen kontírozási tételek előállításának négy változata van:
Számított adatok:
AfaAlaX Könyvelendő áfa alap – Számviteli
Round(KkSzlaTet.AdoAlap * KkSzlaFej.DevArf ,2)
AfaErtX Könyvelendő áfa érték – Számviteli
Round(KkSzlaTet.Ado * KkSzlaFej.DevArf ,2)
A számviteli [alap / áfa] érték a számla áru tétel [tétel / áfa] értékének és a számla alap adatok között megadott devizaárfolyam értékének szorzata lesz.
If (KkSzlaFej TeljDat.Ev.Ho <> KkSzlaFej.AfaDat.Ev.Ho) Then
Begin
AfaAtvTetX := AfaAtvTetX +1 Áfa átvezetési tételek száma
SzvAfaErtX := SzvAfaErtX + AfaErtX Átvezetett áfa érték
AfaAtvTetY := ’I’
End Else AfaAtvTetY := ’N’
Program által előállított adatok:
Azonosító adatok:
A1. KnyvEv Kontírozás éve <KnyDat-ból>
A2. KnyvHo Kontírozás hónapja <KnyDat-ból>
A3. KnyvID Kontírozási tételsor f(’KOX,KontEv)
A4. KnyvAz Könyvelési azonosító: Program által generált
A5. KoTeSo Tételsor. – Kontírozás Inkrementális, a kontírozási csoporton belül 1-ről indul
A6. KoTeAz Kontírozási tétel azonosító
KoTeAz=KnyvAz+’/’+EloNull(KoTeSo,3)
A7. SzlTip Számla típus: 2 – Ellen
A második tételtől kezdődően az Ellen (2) számla tételek szerepelnek.
A8. SzlJel Számla jelleg: Ellentétel az alap tétellel.
Input adatok:
I1. FokKod Főkönyvi számla Input adat
A. Érték tétel: KkSzlaTet.FokKod Tétel alap számla
B. ÁFA tétel:
If AfaAtvTetY = ’N’ Then KkSzlaTet.FokKodA Tétel áfa számla
Else KAzoAda.AFoSzAfa Áfa átvezetési számla
I6. AkdKod ÁFA besorolás kód KkSzlaTet.Afakod
I2. ParKod Partner kód 0
I3. KtgSzl Költség számla X
I4. KtgJel Költség jelleg 0
I5. KtgTip Költség típus 0
I7. ProKod Project kód: KkSzlaTet.Project
I8. TaenAz Tárgyi eszköz azon. 0
I9. SzeKod Szervezeti egység KkSzlaTet.Szervkod
I10. DolKod Dolgozó kód 0
I13. MeeKod Mennyiség egység 0
I14. Mennyi Mennyiség
A. Érték tétel: 0
B. ÁFA tétel: AfaAlaX
I15. MlpAzo Munkalap azonosító 0
I16. TevKod Tevékenység kód 0
If FKntTet.Jelleg = ’1’ Then {Tartozik}
Begin
I11. Tartoz Tartozik összeg
A. Érték tétel: AfaAlaX
B. ÁFA tétel: AfaErtX
I12. Kovete Követel összeg: 0
End
Else {Követel}
Begin
I11. Tartoz Tartozik összeg: 0
I12. Kovete Követel összeg:
A. Érték tétel: AfaAlaX
B. ÁFA tétel: AfaErtX
End
Kiegészítő adatok.
K1. KttAzo Kontírozott tétel azonosító: FloatToStr(KkSzlaTet.Id) – Tétel azonosító
Napló adatok:
N1. Opekod Operátor kód generált
N2. Terkod Terminál kód generált
N3. Rogdat Rögzítés időpontja generált
PSzaFej – Számla alap tábla
Modify A teljes könyvelési tranzakció utolsó lépése!
A1. FokAll Főkönyvi állapot 1 – Kontírozott
A kontírozás sikeres elvégzése után a program a kontírozás alapbizonylatának főkönyvi állapotát Kontírozott állapotúra (1) változtatja.
A2. KontAz Kontírozási azonosító p_KontAz
Számla kontírozásakor, amennyiben a számla teljesítés és az áfa dátum nem ugyanabba a hónapba esik, akkor az áfa kontírozása nem áfa számlára (466,/467), hanem az áfa elszámolási számlára történik (3683). Ebben az esetben szükség van arra, hogy az áfát átvezessük az áfa elszámolási számláról az áfa számlára.
Az áfa visszavezetés kontírozásának feltételei:
A különleges áfa kontírozás a kontírozási fej rekordban (FKntFej) ugyanazt a kontírozási csoport azonosítót kapja, mint alap gazdasági esemény kontírozása.
FKntFej - Kontírozási fejadatok
Insert
A modul a számla alapadatokból (KkSzlaFej) állítja elő a fejadatokat.
Az adatok előállítása megegyezik a számla alap kontírozási eseményével. Eltérés:
Input adatok:
I1. KontDt Könyvelés dátuma KkSzlaFej.AfaDat Számla áfa dátuma
Állapot adatok:
Á5. SzlJel Számla jelleg Ugyanaz, mint az alap számla kontírozás
Á6. KonTip Kontírozás típusa: Z49 – Áfa visszavezetés
Kiegészítő adatok:
K4. CsopTip Csoportos kontírozási típus CKT <2> – Csoportos összetartozó
K6. OsKonAz Összetartozó kontírozási azonosító FKntFej.First.KontAz
FKntTet - Kontírozási tételadatok
Insert
A, Alap számla
A modul a számla tétel adatokból (KkSzlaTet) állítja elő
Program által előállított adatok:
Azonosító adatok:
A7. SzlTip Számla típus: 1 – Alap
A8. SzlJel Számla jelleg: FKntFej.SzlJel
Input adatok:
I1. FokKod Főkönyvi számla KAzoAda.AFoSzAfa
A rendszer paraméterek között eltárolt áfa elszámolási számla.
I2. ParKod Partner kód: 0
I3. KtgSzl Költség számla: X
I4. KtgJel Költség jelleg: 0
I5. KtgTip Költség típus: 0
I6. AkdKod ÁFA besorolás kód: 0
I7. ProKod Project kód: 0
I8. TaenAz Tárgyi eszköz azon. 0
I9. SzeKod Szervezeti egység 0
I10. DolKod Dolgozó kód 0
If SzlJel=1 Then
Begin
I11. Tartoz Tartozik összeg: SzvAfaErtX – A gyűjtött számviteli áfa érték
I12. Kovete Követel összeg: 0
End
Else
Begin
I11. Tartoz Tartozik összeg: 0
I12. Kovete Követel összeg: SzvAfaErtX – A gyűjtött számviteli áfa érték
End
I13. Mennyi Mennyiség 0
I14. MeeKod Mennyiség egység 0
I15. MlpAzo Munkalap azonosító 0
I16. TevKod Tevékenység kód 0
Kiegészítő adatok:
K1. KttAzo Kontírozott tétel azonosító: FloatToStr(KkSzlaTet.Id) – Számla azonosító
Napló adatok:
N1. Opekod Operátor kód generált
N2. Terkod Terminál kód generált
N3. Rogdat Rögzítés időpontja generált
B, Ellenszámla
Ellenszámla tételek száma: N – AfaAtvTetX – Áfa átvezetésű tételek száma
A modul a számlákhoz tartozó tétel adatokból (KkSzlaTet) állítja elő a kontírozási tételt.
Számított adatok:
AfaAlaX Könyvelendő áfa alap – Számviteli
Round(KkSzlaTet.AdoAlap * KkSzlaFej.DevArf ,2)
AfaErtX Könyvelendő áfa érték – Számviteli
Round(KkSzlaTet.Ado * KkSzlaFej.DevArf ,2)
Program által előállított adatok:
Azonosító adatok:
A7. SzlTip Számla típus: 2 - Ellen
A8. SzlJel Számla jelleg: Inverz(FKntFej.SzlJel)
Input adatok:
I1. FokKod Főkönyvi számla: KkSzlaTet.FokKodA Tétel áfa számla
I2. ParKod Partner kód: 0
I3. KtgSzl Költség számla: X
I4. KtgJel Költség jelleg: 0
I5. KtgTip Költség típus: 0
I6. AkdKod ÁFA besorolás kód: KkSzlaTet.Afakod Tétel áfakód
I7. ProKod Project kód: 0
I8. TaenAz Tárgyi eszköz azon. 0
I9. SzeKod Szervezeti egység 0
I10. DolKod Dolgozó kód 0
If FKntTet.SzlJel=1 Then
Begin
I11. Tartoz Tartozik összeg: AfaErtX
I12. Kovete Követel összeg: 0
End
Else
Begin
I11. Tartoz Tartozik összeg: 0
I12. Kovete Követel összeg: AfaErtX
End
I13. Mennyi Mennyiség AfaAlaX
I14. MeeKod Mennyiség egység 0
I15. MlpAzo Munkalap azonosító 0
I16. TevKod Tevékenység kód 0
Kiegészítő adatok.
K1. KttAzo Kontírozott tétel azonosító: FloatToStr(KkSzlaTet.Id) – Tétel azonosító
Napló adatok:
N1. Opekod Operátor kód generált
N2. Terkod Terminál kód generált
N3. Rogdat Rögzítés időpontja generált
Az előtétszűrés képernyőn található forgalmi tételek kontírozásának stormózását a [Stornózás] gomb megnyomásával végezhetjük el. A program azon kontírozott tételek stornózását végzi el, melyek a kontírozás elvégzése után módosultak, vagy töröltve lettek. A stornózást a főkönyvi modul tárolt eljárása végzi el.
A stornózás elvégzésésének feltételei:
K3. FokAll = ’1’ <Kontírozott> főkönyvi állapot AND
(
K0. Valtoz = ’I’ Megváltozott az adatállomány OR
K5. Torolt = ’I’ Törölt forgalmi tétel
)
Stornózás elvégzése
KkForgTet – Forgalmi tétel adatmódosítás
UpDate
K0. Valtoz Adatváltozás N
K3. FokAll Főkönyvi állapot 0 – Alap
K4. KontAz Kontírozási azonosító 0