Számla áru adatok kezelése

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

Számla áru adatok kezelése

Previous pageReturn to chapter overviewNext page

 

A program csak bizonyos feltételek teljesülése esetén engedi meg új számla áru tétel rögzítését a bizonylatra.

 

Új számla áru tétel felvitelének letiltása:

1.        PSzaAla.SzNyDb > 0                Kinyomtatott számla.

2.        PSzaAla.FokAll = ’1’                Kontírozott számla.

3.        PSzaAla.StoKod <> ’0’                A bizonylat stornó / stornózott

4.        PSzaAla.UtaAll = ’1’                Utalványozott számla.

5.        PSzaAla.JovAll = ’1’                Jóváhagyott számla.

6.        PSzaAla.KaZaDat <> null        Már kamat van rá elszámolva.

 

A számla áru tételek törlésének egyrészt ugyanazok a feltételei mint a módosításnak, másrészt a törlés elvégzésének további feltételei is vannak.

 

Meglévő számla áru tétel törlésének letiltása:

1.        PSzaAru.RaMoId > ’0’                Az áru tétel raktári mozgáshoz kapcsolódik.

 

 

A program a már rögzített számla áru tételek adatmezőinek módosítását bizonyos feltételektől függően teljesen vagy részlegesen letilthatja.

 

A. Az adatok módosításának teljes letiltása

 

1.        PSzaAla.FokAll = ’1’                A bizonylat már kontírozva van

2.        PSzaAla.StoKod <> ’0’                A bizonylat stornó / stornózott

3.        PSzaAla.KaZaDat <> null        Már kamat van rá elszámolva.

4.        PSzaAla.SzNyDb > 0        And        Kinyomtatott vevőszámla számla áru adatai

PSzaAla.TipusK = ’2’                nem módosíthatóak.

 

5.        PSzaAru.TaeAll = ’2’                Az áruból tárgyi eszköz lett aktiválva.

6.        PSzaAru.RaMoId <> ’0’                Az áruhoz raktári mozgás tartozik.

 

B. Egyes számla áru adatmezők letiltása

 

B.1.        PSzaAla.TipusK = ’1’        And        PSzaAru.PenAll > ’0’

Raktári mozgáshoz kapcsolódó szállítói számla áru tételek adatmezői:

1.        AruKod                Áru kód

2.        Mennyi                Mennyiség

3.        MeeKod        Mennyiség egység

4.        AfaKod                Áfa besorolás kód

Költség áfa esetén az áfa kulcs változása miatt megváltozna az áru bekerülési értéke.

5.        ArTip                Ár típus

6.        TetErt                Tétel érték (áfa nélküli)

7.        AfaErt                Áfa érték

 

B.2.        PSzaAla.TipusK = ’1’        And        PSzaAla.UtaAll = ’1’        And        KAzoAda.SzaSzlJovMod = ’I’

Szállítói utalványozott számlák esetén rendszerparaméterként megadhatjuk, hogy a program letiltsa azoknak az adatmezőknek a módosítását, amelyeknek hatása van az utalványozásra.

1.        AruKod                Áru kód

2.        AfaKod                Áfa besorolás kód

3.        Mennyi                Mennyiség

4.        TetErt                Tétel érték (áfa nélküli)

5.        AfaErt                Áfa érték

 

B.31.        PSzaAla.TipusK = ’2’        And        PSzaAru.PenAll > ’0’

Raktári mozgáshoz kapcsolódó vevői számla áru tételek adatmezői:

1.        AruKod                Áru kód

2.        Mennyi                Mennyiség

3.        MeeKod        Mennyiség egység

 

B.3.        PSzaAla.TipusK = ’2’        And        PSzaAru.DevTet = ’I’

1.        EgysAr                Egységár

Devizás vevői számla áru tétel esetén az egységár mező letiltásra kerül, mivel az a devizás egységár és az árfolyam szorzataként kerül előállításra.

 

 

 

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

A számla áru tétel áfa kódjának és az áfa besorolás kódhoz tartozó áfa kódnak összhangban kell lenni. Amennyiben egy áfa besoroláskódhoz csak egyetlen áfa kód tartozhat, akkor az áfa besorolás törzsben megadható az, hogy a program az áfa besoroláskód kiválasztásakor az adott számla áru tételnél melyik áfa kódot fogadja el. Amennyiben az áfa besoroláskódhoz nem egyetlen áfa kód tartozhat, akkor az áfa besorolás törzsbe az áfa kód mezőbe X-et írunk, és ebben az esetben a program a számla áru tétel áfa kódját, és az áru tételnél megadott áfa besorolás kód áfa kódjának az egyezőségét nem ellenőrzi.

 

If        PSzaAla.TipusK = ’1’ And PSzaAru.KulAfa In (’E’,’F’)        Then        AfaKodEll := AfaKodEU

Else        AfaKodEll := AfaKod

Az ellenőrzés alapjául szolgáló áfa kód szállító számla és fordított adózás esetén az adó (különleges áfa fül) áfa kód, egyébként pedig a normál (alap adatok fül) áfa kód.

 

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

((PSzaAru.SAkdKod = ’0’)        Or

(FAkdTor(PSzaAru.SAkdKod).AfaKod = ’X’)        Or

(FAkdTor(PSzaAru.SAkdKod).AfaKod = AfaKodEll)))

OR

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

((PSzaAru.VAkdKod = ’0’)        Or

(FAkdTor(PSzaAru.VAkdKod).AfaKod = ’X’)        Or

(FAkdTor(PSzaAru.VAkdKod).AfaKod = AfaKodEll)))

Then        OK

Else        Begin

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

Abort

End

 

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

A számla áru áfa kódjának függvényében nem mindig engedhető meg az áfa besorolás kód hiánya. Amennyiben az áfa törzsben az adott áfa kódot úgy definiáltuk, hogy annak a szállítói áfa bevallásban, vagy a vevői áfa bevallásban szerepelni kell, akkor ha számla áru tétel rögzítésekor egy ilyen árukódot választottunk ki, akkor a számla áru adatok rögzítésekor az áfa besorolás kód mezőben 0-tól eltérő kódot kell megadnunk.

 

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

(PSzaAru.SAkdKod = ’0’)        And

(AAfaTor(AfaKodEll).SzalBev = ’I’))

OR

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

(PSzaAru.VAkdKod = ’0’)        And

(AAfaTor(AfaKodEll).VevoBev = ’I’))

Then        Begin

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

Abort

End;

 

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

Az áfa besorolás kód törzsben az is megadható, hogy az adott áfa besorolás kód milyen típusú (Szállító, Vevő, Belső) választható ki. Így például a program nem engedi meg, hogy szállítói pénzügyi bizonylaton olyan áfa besorolás kódot adjunk meg, amely vevő bizonylatok számára lett definiálva.

 

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

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

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

Then        Begin

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

Abort

End;

 

D. A rögzítendő áru típusának ellenőrzése gépi számlán

If        PSzaAla.FormaK = ’1’        And        

AAktTor.AruTip(AAruTor.AktKod(PSzaAru.AruKod)) <> ’2’        Then        Message

Gépi számlára további számla áru tételként csak szolgáltatás típusú árukódot lehet rögzíteni. Az áru típust az áru katalógus törzs tartalmazza. Az áru katalógus kód a számla áruhoz tartozó áru törzsében található.

 

E. A rögzítendő áru hitelkamat számítási módjának ellenőrzése

If        AAktTor.HitKam.Aktual <> AAktTor.HitKam.First                Then        Message

Számla áruként egy adott számla csak megegyező hitelkamat számítási módú áru tételek rögzíthetőek. A hitelkamat számítási mód a számla árukódhoz tartozó árutörzs árukatalógusának árukatalógus törzséből határozható meg.

Ez a megszorítás azért van, mert egy számlának csak egyféle hitelkamat számítási módja lehet.

 

F. A szállítói számla áfa kulcsának ellenőrzése

If        PSzaAla.TipusK = ’1’        And

Abs(AAfaTor.AfaKul(PSzaAru.AfaKod) – 100 * PSzaAru.AfaErt / PSzaAru.TetErt) > 1

Then        Message

Szállítói számla esetén mind a számla alap, mind az áfa érték input adat. Az ezekből kiszámított áfa kulcs maximum +- 1%-al térhet el a számla áru tételhez tartozó áfa kulcstól.

 

G. Számla áru költségviselő és munkalap megadás ellenőrzése

If        PSzaAla.TipusK = ’1’                        And        Szállítói számla

Substring(PSzaAru.SKtgHel,1,1) = ’7’        And        Van megadott költségviselő

SA.KtgVisMlpKell = ’I’                        And        Költségviselőhöz munkalapot kell megadni

PSzaAru.MlpAzo='0'                        And        Nincs megadott munkaszám

Then        Begin        Message, Abort                End

Szállítói számlában rögzített költségviselőre (7*) könyvelendő költségfelmerülés esetén a kötelező munkalapot megadni.

 

H. Számla áru költséghely és munkalap költséghely egyezőség figyelése

If        PSzaAla.TipusK = ’1’                        And                Szállítói számla

SA.SzaKtgHelEgy = ’I’                        And                Figyelni kell az egyezőséget

PSzaAru.MlpAzo<>'0'                        And                Van megadott munkaszám

PSzaAru.SKtgHel <> ’X’                        And                Van megadott költséghely

PSzaAru.SKtgHel <> KMunLap(PSzaAru.MlpAzo).KtgHel

Then        Begin        Message, Abort                End

Szállítói számlában rögzített költségfelmerülés esetén a számla áru (project vagy tárgyi eszköz által meghatározott) költséghelyének egyezni kell a kiválasztott munkalap költséghelyével.

 

Rendszerparaméterként megadható, hogy a vállalkozás a pénzügyi modulban használja-e a kontírozás funkciót. Amennyiben igen, akkor a számla áru adatok számviteli fülén a megfelelő főkönyvi számlának értéket kell adni.

 

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

(KAzoAda.PenKontir = ’I’)        And

(PSzaAru.SArkSzl = ’X’)        And

(PSzaAru.SKtgNem = ’X’)        And

(PSzaAru.SEgySzl = ’X’))

OR

((PSzaAla.TipusK = ’2’)                And                                {Vevő}

(KAzoAda.PenKontir = ’I’)        And

(PSzaAru.VFokKod = ’X’))

OR

((PSzaAla.TipusK = ’3’)                And                                {Belső}

(KAzoAda.PenKontir = ’I’)        And

(PSzaAru.BFokKod = ’X’))

Then        Begin

Message :Hiányzik a főkönyvi számla!

Abort

End

 

Rendszerparaméterként megadható, hogy a vállalkozás a könyvelés során használ-e költség nemet / költség helyet / költség jelleget / költség típust. Amennyiben valamelyik adatra szükség van, akkor anélkül nem hagyja a program elmenteni a szállító számla (PSzaAla.TipusK = ’1’) áru tételét.

 

Ellenőrizendő mező                                        Rendszer paraméter

 

 

Az adatbázis megszorítások nem engedik meg, hogy egy kötelező kitöltésűnek definiált adatmezőt üresen elmentsünk. További megszorításként azt is megadhatjuk, hogy az adott mezőben csak 0-tól eltérő értéket (kódot) fogadjon el program. Rendszerparaméterek (KAzoAda) segítségével a számla áru tábla alábbi adatmezőinél írhatjuk azt elő, hogy a mező tartalma nem lehet 0:

 

A. Szállító számlák mezői                                Rendszer paraméter

Az alábbi mezők kitöltését a program szállító számláknál csak szolgáltatás típusú (AAktTor.TipusK = ’2’) áruk rögzítésekor ellenőrzi, mivel csak szolgáltatásból lesz költségfelmerülés. A termék típusú szállítói számla áru tételek készletre lesznek vételezve, így azokhoz költség információk megadása nem szükséges.

 

B. Vevő és belső számlák mezői                        Rendszer paraméter

 

 

Pénzügyi bizonylatok (szállító és vevő számlák) áru adatainak felvitele (Insert) során a program lehetőséget biztosít arra, hogy a számla utolsó rögzített áru tételének egyes adatmezőinek tartalmát átmásoljuk, az éppen rögzítés alatt lévő tétel aktuális adatmezőjébe. Ez két módon valósítható meg.

 

Az első módszer szerint például, ha a számlára a negyedik árutételt rögzítjük, és éppen a szervezeti egység kód mezőben vagyunk, akkor ha megnyomjuk az F12 funkció billentyűt, akkor a program a számla harmadik árutételének szervezeti egység kódját beajánlja a negyedik tétel szervezeti egység input mezőjébe. Azon mezők beajánlása során, amely mezők kitöltése további mezők tartalmára tesz ajánlást (pl: project kód), az előző árutételből átvett mező tartalma ugyanúgy kiváltja más mezők adatainak kitöltését, mintha az adatmező tartalmát kézzel írtuk volna be. Az első áru tétel rögzítésekor a program természetesen nem tud ajánlást tenni.

Az előző árutétel átvehető adatmezői:

Ez a funkció akkor hasznosítható, ha olyan több áru tételből álló számlát rögzítünk, amelynek egyes áru tétel mezőinek adattartalma ugyanaz.

 

Van egy másik lehetőségünk is a számla áru adatok beajánlására. Ha megnyomjuk az F11 billentyűt, akkor a program ez előző tétel minden olyan mezőjének értékét beajánlja a rögzítés alatt lévő tétel mezőibe, amire az F12 billentyű mezőnkénti lenyomásával lehetőségünk volt. Azaz amennyiben az előző tétel adatainak a többségét át kívánjuk venni, akkor nem egyenként vesszük át a mezők tartalmát az F12 billentyű többszöri lenyomásával, hanem egyszer megnyomjuk az F11 billentyűt, és minden mező kitöltésre kerül.