Előleg számlák

Navigation:  Tartalom > Pénzügyi modul > Számlaállomány nyilvántartás > Számla adatok karbantartása >

Előleg számlák

Previous pageReturn to chapter overviewNext page

 

Egy számla jellege szerint előleg, vég, vagy rész számla lehet. Az előleg számlák vég számlákhoz való hozzákapcsolására szolgál ez a funkció.

 

Funkciók:        Karbantartás        Új tétel

Módosítás

Törlés

Jogosultságkód:        242206                        Help context:        242206

 

clip2625

 

DOCUMENT Előleg befűzés árfolyamkülönbözet elszámolás

 

PSzaElo – Számla előleg tábla

Insert / Delete

 

Input adatok:

1.        ElolSz                Előleg számla szám        

Egy vagy több tétel kiválasztása a partnerhez tartozó előleg számlák közül.

Feltételek:        StoAll=’0’ AND                Nem stornó vagy stornózott tétel

Jelleg=’3’ AND                Előleg számla

EloOszE<DeOssz        Maradt hozzárendelhető érték

 

A számlákon történő adatátvezetések elvégzéséhez meg kell őrizni az összerendelési tábla értékadatainak módosítás előtti állapotát:

1.        ElAfaOR:=PSzaElo.ElAfaO

2.        ElOsszR:=PSzaElo.ElOssz

Új összerendelés rögzítése esetén:

1.        ElAfaOR:=0

2.        ElOsszR:=0

 

Előleg számla összerendelési input adatok:

2.        ElOssz                Számla összesen        Előleg

A végszámlába beszámítandó előleg összege (bruttó = alap + áfa). A program felajánlja az előleg számla még beépíthető összegét (= előleg számla bruttó értéke – az előleg számlából más végszámlákba beszámított összeg). Ez a maximálisan beszámítható összeg, melynél kisebb összeg is megadható. Ekkor az előlegszámlának még marad más végszámlába beépíthető összege.

3.        AfaKod        Áfa kód                        fk: AAfaTor.AfaKod

A beépített előleg áfa kódja. A program felajánlja az előleg számla első áru tételének áfa kódját. Célszerű csak olyan előlegszámlákat készíteni (vevő) illetve befogadni (szállító) amelyek tételei egyforma áfa kódból állnak. Ellenkező esetben nem adható meg egzakt módon az előlegbeépülések áfa kódja.

4.        ElAfaO                ÁFA összeg                Előleg

A végszámlába beszámítandó előleg áfa összege. A program a megadott áfa kód áfa kulcsa alapján az előleg összegéből kiszámítja a beszámítandó áfa összegét, és azt felajánlja input adatként. Ez ugyan módosítható, de megváltoztatni mégsem célszerű, mert akkor megszűnik a konzisztencia a számla összeg, az áfa kód és az áfa érték között.

5.        AkdKod                Áfa besorolás kód        fk: AAkdTor.AkdKod

A beépített előleg áfa besorolás kódja. A program felajánlja az előleg számla első áru tételének áfa besorolás kódját. A kód megadása az előleg befűzés áfa bevallásban történő megjelenítése miatt szükséges.

 

Áfa tipizáló adatok:

VS1.        AdoMent        Adómentes tétel                        <I/N>

VS2.        AdoMenKod        Adó (áfa) mentesség kód                AME

Kódtári adat.                                                default: ’0’

VS3.        AfaTvKivul        ÁFA törvény hatályán kívüli tétel        <I/N>

VS4.        AfaKivKod        Adó (áfa) hatályon kívüliség kód        AHK

Kódtári adat.                                                default: ’0’

VS5.        AdoMentHiv        Adómentességi hivatkozási alap

A hatályon kívüliség szöveges hivatkozását is itt kell megadni.

 

Számított adatok:

1.        DevArfX        Deviza árfolyam – végszámla                (PSzaElo.AlapID)

If PSzaAla.DevDatF > 0        Then        DevArfX := PSzaAla.DevArfF        {A mérleg fordulónap után}

Else        DevArfX := PSzaAla.DevArf        {A mérleg fordulónap előtt}

2.        DevArfE        Deviza árfolyam – előlegszámla                (PSzaElo.ElolID)

If PSzaAlaE.DevDatF > 0        Then        DevArfE := PSzaAlaE.DevArfF        {A mérleg fordulónap után}

Else        DevArfE := PSzaAlaE.DevArf        {A mérleg fordulónap előtt}

 

Program által előállított adatok:

1.        SzElID                Számla előleg ID        <AlapID+’/’+EloNull(TetSor,4)>

2.        AlapID                Alap számla  ID                <PSzaAla.SzAlID/Alap>

3.        TetSor                Tétel sorszám                inkrementális

4.        SzaSza                Alap számlaszám        <PSzaAla.SzaSza/Alap>

5.        ElolID                Előleg számla ID        <PSzaAla.SzAlID/Előleg>

6.        ElolSz                Előleg számlaszám        <PSzaAla.SzaSza/Előleg>

7.        ElNtto                Számla nettó összege        <ElOssz – ElAfaO>

8.        Opekod        Rögzítés napló adatok – Operátor kód        generált

9.        Terkod                Terminál kód                generált

10.        Rogdat                Rögzítés időpontja        generált

11.        DevArf                Deviza árfolyam

If        PSzaAlaE.Jelleg = ’3’        Then        DevArfE        {Előleg számla}

Else        DevArfX        {Rész-számla}

Előleg számla befűzésekor a befűzés árfolyama az előleg számla könyv szerinti árfolyama lesz. Rész-számla befűzése során a befűzési árfolyam mező a végszámla könyv szerinti árfolyamát kapja.

12.        PenAll                Árfolyam különbség kezelési állapot        ARK

If        PSzaAlaE.Jelleg = ’3’        Then                        {Előleg számla}

Begin

If Abs(DevArfE-DevArfX)>0 and PSzaAla.DevKod <> KA.AlaDev

Then                1 – Előkészített                Else        0 – N/A

End

Else

Begin                                                        {Rész-számla}

0 – N/A

End

13.        FokAll                Főkönyvi állapot        <0>

 

Az összerendelés során beírt adatok hatását az előleg és a végszámlák egyes adatmezőin át kell vezetni.

 

PSzaAla – Számla alap tábla (Végszámla)

Modify

Program által előállított adatok:

1.        ElSzDb        Előleg számlák darabszáma

Insert:        ElSzDb:=ElSzDb + 1

Modify:        -

Delete:        ElSzDb:=ElSzDb – 1

2.        Opekod        Rögzítés napló adatok – Operátor kód        generált

3.        Terkod                Terminál kód                generált

4.        Rogdat                Rögzítés időpontja        generált

 

Az alábbi mezők módosítását csak Insert és Modify rögzítési mód esetén kell elvégezni:

5.        ElAfaO                ÁFA összeg

ElAfaO:=ElAfaO + PSzaElo.ElAfaO – ElAfaOR

6.        ElOssz                Számla összesen

ElOssz:=ElOssz + PSzaElo.ElOssz – ElOsszR

7.        ElNtto                Számlák nettó összege

ElNtto:=ElOsz-ElAfaO

 

PSzaAla – Számla alap tábla (Előlegszámla)

Modify

Program által előállított adatok:

Az alábbi mezők módosítását csak Insert és Modify rögzítési mód esetén kell elvégezni:

1.        ElAfaOE        ÁFA összeg

ElAfaOE:=ElAfaOE + PSzaElo.ElAfaO – ElAfaOR

2.        ElOsszE                Számla összesen

ElOsszE:=ElOsszE + PSzaElo.ElOssz – ElOsszR

3.        ElNttoE                Számlák nettó összege

ElNttoE:=ElOszE-ElAfaOE

4.        Opekod        Rögzítés napló adatok – Operátor kód        generált

5.        Terkod                Terminál kód                generált

6.        Rogdat                Rögzítés időpontja        generált

 

Új előleg tétel felvitelének, illetve már rögzített összerendelések módosításának feltételei:

1.        PSzaAla.SzNyDb = 0                Az alapszámla még nincs kinyomtatva.

2.        PSzaAla.FokAll = ’0’                A számla még nincs kontírozva.

3.        PSzaAla.StoKod = ’0’                Nem stornó / stornózott számla.

4.        PSzaAla.UtaAll <> ’1’                A számla még nincs utalványozva,

Or KAzoAda.SzaSzlJovMod = ’N’        vagy nem kell figyelni a számla jóváhagyást.

5.        PSzaAla.JovAll <> ’1’                A számla még nincs jóváhagyva,

Or KAzoAda.SzaSzlJovMod = ’N’        vagy nem kell figyelni a számla jóváhagyást.

6.        PSzaAla.DeKiOs=0                A számlán nincs kiegyenlítés.

7.        PSzaAla.KaZaDat=nil                A számláról még nem készült hitelkamat számla.

8.        PSzaElo.FokAll = ’0’                Az előleg tétel még nincs kontírozva

9.        PSzaElo.PenAll <= ’1’                Az előlegre nincs elszámolva árfolyam különbség

 

Az előleg összerendelések törlésének feltételei:

Az előleg tétel törlésének feltételei egyrészt megegyeznek a felvitel és módosítás feltételeivel, másrészt a törlésnek további feltételei is vannak:

1.PSzaElo.ElOssz=0                A befűzött előleg összege 0. A tétel törlése előtt a befűzött összeget nullára kell módosítani! Így a törlés feltételei ugyanazok lesznek mint a módosításé.

 

Az előleg tételek logikai ellenőrzése mentés előtt:

 

1.        ElolSzX Exists In PSzaElo.ElolSz Where PSzaElo.AlapId = PSzaAla.SzAlId

Egy előleg számla egy végszámlához csak egyszer rögzíthető.

 

2.        PSzaElo.ElOssz-ElOsszR<=Min(PSzaAla.DeOssz/Alap – PSzaAla.ElOssz/Alap,

PSzaAla.DeOssz/Előleg – PSzaAla.ElOsszE/Előleg)

A befűzött előleg összege nem lehet nagyobb, mint az előleg számlából illetve a végszámlából rendelkezésre álló szabad összegből a kisebbik.

 

3.        PSzaElo.ElAfaO-ElAfaOR<=Min(PSzaAla.DeAfaO/Alap – PSzaAla.ElAfaO/Alap,

PSzaAla.DeAfaO/Előleg – PSzaAla.ElOssz/Előleg)

A befűzött áfa összege nem lehet nagyobb, mint az előleg számlából illetve a végszámlából rendelkezésre álló szabad áfa összegből a kisebbik.

 

4.        Az előleg számla input értékekből számított ÁFA kulcs, és az előlegszámlához rendelt ÁFA kódhoz tartozó ÁFA kulcs közötti eltérés kevesebb mint 1%.

 

5. Áru tétel áfa kód és áfa besorolás kód ütköztetése

A számla előleg tétel áfa kódjának és az áfa besorolás kódhoz tartozó áfa kódnak összhangban kell lenni.

 

If        ((PSzaElo.AkdKod = ’0’)        Or

(FAkdTor(PSzaElo.AkdKod).AfaKod = ’X’)        Or

(FAkdTor(PSzaElo.AkdKod).AfaKod = PSzaElo.AfaKod))

Then        OK

Else        Begin

Message : Áfa kód – áfa besorolás kód ütközés!

Abort

End

 

6. Áfa besorolás kód meglétének ellenőrzése

A számla előleg áfa kódjának függvényében nem mindig engedhető meg az áfa besorolás kód hiánya.

 

If        (((PSzaAla.TipusK = ’1’)        And                                {Szállító}

(PSzaElo.AkdKod = ’0’)        And

(AAfaTor(PSzaElo.AfaKod).SzalBev = ’I’))

OR

((PSzaAla.TipusK <> ’1’)        And                                {Vevő, Belső}

(PSzaElo.AkdKod = ’0’)        And

(AAfaTor(PSzaElo.AfaKod).VevoBev = ’I’))

Then        Begin

Message : Az áfa besorolás kód nem lehet 0!

Abort

End;

 

7. Áfa besorolás kód – számla típus egyeztetés

If        ((PSzaAla.TipusK = ’1’)        And        (FAkdTor(PSzaElo.SAkdKod).SzaSzl = ’N’))        Or        {Száll}

((PSzaAla.TipusK = ’2’)        And        (FAkdTor(PSzaElo.VAkdKod).VevSzl = ’N’))        Or        {Vev}

((PSzaAla.TipusK = ’3’)        And        (FAkdTor(PSzaElo.VAkdKod).BelSzl = ’N’))        Then        {Bels}

Then        Begin

Message : Számla típus – áfa besorolás kód ütközés!

Abort

End;