A rögzített számla tételek adatai csak egy bizonyos ideig korrigálhatók. Egy kinyomtatott vevőszámla adatait a későbbiekben már nem lehet megváltoztatni. Az ilyen számlákat ekkor már csak stornózni lehet. A stornó funkció a hibás tételt stornózott állapotba teszi, és előállít egy negatív előjelű stornó tételt. Így a két tétel kiegyenlíti egymást. Azaz a tételek benne maradnak az adatbázisban, miközben a hiba korrigálva lett. A stornózás funkció a Számla alap adatok fülről a [Stornó
] gomb megnyomásával indítható el.
Jogosultságkód: 242208 Help context: 242208
A stornózás elvégezhetőségének feltételei:
1. PSzaAla.SzAlId Not In ASemaDef A bizonylat nincs sémaként elmentve.
2. PSzaAla.StoKod='0' Nem stornó / stornózott bizonylat.
3. PSzaAla.FokAll='0' OR FokAll='3' A számla még nincs kontírozva.
Ha a számla már kontírozva van, akkor előbb kontírozást vissza kell stornózni.
4. Abs(PSzaAla.DeKiOs)<1E-4 A számlán nincs kiegyenlítés
Ha a számlán már van kiegyenlítés, akkor előbb azt kell stornózni.
5. Abs(PSzaAla.ElOsszE)<1E-4 A számlából nem épült be előleg más számlába.
Ha számlából valamilyen összeg már beépült egy végszámlába, akkor előbb a végszámlát kell stornózni.
6. Abs(PSzaAla.ElOssz)<1E-4 A számlába nem épült be előleg számla.
Ha számlába előleg számla épül be, akkor előbb le kell bontani az előleg számlákat a végszámláról.
7. PSzaAla.KaZaDat=nil And Jelleg<>'7' A számlára nem lehet hitelkamat elszámolva.
| 8. | PSzaAla.Jelleg='7' and KamatSzla.Last Hitelkamat számla. A hitelkamat számla az alapszámla utolsó kamatszámlája kell legyen. Lásd: Eco_Fina_Func_Kamat.Doc. |
A számla stornózásának folyamata:
| 1. | A stornózandó számla fej adatai (PSzaAla) alapján előállítjuk a stornó számla fej adatait negatív előjellel. |
| 2. | A stornózott számlába visszaírjuk a stornózás hatását, azaz felülírjuk a stornózott számla fejének (PSzaAla) állapot jellegű mezőit (Stornó állapot). |
| 3. | Ha számlához raktári mozgás fej (KMozFej) kapcsolódik, akkor nullázzuk annak az összerendelésre vonatkozó adatait (Pénzügyi állapot, pénzügyi bizonylat azonosító). |
| 4. | A stornó számlához átmásoljuk a stornózott számla előleg tételeit (PSzaElo) ellentétes (negatív) előjellel. |
5. A stornózás hatásait át kell vezetni a stornózott számlához tartozó minden előleg számlán.
6. A stornó számla áru tételeinek (PSzaAru) előállítása a stornózott számla áru tételei alapján.
| 7. | A stornózott számla árutételeibe visszaírjuk a stornózás hatását, azaz felülírjuk a stornózott számla árutételek (PSzaAru) állapot jellegű mezőit (Stornó állapot). |
| 8. | Ha számla áru tételeihez raktári mozgás (KRakMoz) kapcsolódik, akkor nullázzuk annak az összerendelésre vonatkozó adatait (Pénzügyi állapot, pénzügyi bizonylat azonosító). |
9. Hitelkamat számla stornózásakor stornózzuk a kamat elszámolási alap adatokat.
| 10. | Kölcsön bizonylat esetén a kölcsön nyilvántartó adatbázisba visszaírjuk a kölcsön mozgásból keletkezett bizonylat megszűnése miatti pénzügyi állapot változást. |
Megjegyzések:
Stornózás után az összerendelés a stornózott számla és az értékesítési bizonylat fej és tétel adatai között az összerendelési táblákban (PSzaBiz,PSArBTe) megmarad! A számla stornózását követően le kell bontanunk előbb az áru, majd a fejek összerendelését (UNIS / Készlet mozgások rögzítése / Bevételezés / Vásárlás / Szállítólevél – számla összerendelés funkció).
Amennyiben a mozgás adatok hibája miatt stornóztunk, akkor stornózni kell a mozgásokat. Ha a mozgás adatok helyesek és csak a számla készítés során követtünk el hibát, akkor nem stornózzuk a mozgásokat, hanem csak újból előállítjuk a számlát.
A stornózás elkezdése előtt végig kell gondolnunk, hogy feltétlenül szükséges-e a számla stornózása, vagy esetleg orvosolható-e a hiba számla összerendelés lebontásával, majd az összerendelés újbóli elvégzésével.
Funkció – Adat entitás kapcsolat:
1. A stornó számla fej adatainak előállítása:
PSzaAla – Számla alap tábla
Insert
A stornózott számla adatai másolódnak át, az alábbi módosítással:
Input adatok: (Csak szállítói bizonylat stornózásakor)
1. SzaSza Számlaszám
2. SzmDat Számla kelte
Program által előállított adatok:
1. SzAlID Számla alap ID generált
2. BizAzo Bizonylat azonosító Bizonylattömb azonosító + Inkrementális sorszám
3. StoKod Stornó állapot: <2> - Stornó
4. MozElj Mozgás előjel <-1>
5. StornA Stornózott szla száma <PSzaAla.BizAzo> Régi/Stornózott
6. StornB Stornó számla száma <0>
7. SzaSza Számlaszám <PSzaAla.BizAzo> Új/Stornó Csak vevőnél
Szállítónál input
8. FtNtto Számla nettó összege HUF <-1*FtNtto> Régi/Stornózott
9. FtAfaO ÁFA összeg HUF <-1*FtAfaO> Régi/Stornózott
10. FtOssz Számla összesen HUF <-1*FtOssz> Régi/Stornózott
11. FtKiOs Kiegyenlítés összesen HUF <-1*FtKiOs> Régi/Stornózott
12. DeNtto Számla nettó összege DEV <-1*DeNtto> Régi/Stornózott
13. DeAfaO ÁFA összeg DEV <-1*DeAfaO> Régi/Stornózott
14. DeOssz Számla összesen DEV <-1*DeOssz> Régi/Stornózott
15. DeKiOs Kiegyenlítés összesen DEV <-1*DeKiOs> Régi/Stornózott
16. EveHuf Értékvesztés összege HUF <-1*EveHuf> Régi/Stornózott
17. EheHuf Értékhelyesbítés HUF <-1*EheHuf> Régi/Stornózott
18. EgyHuf Egyéb adat HUF <-1*EgyHuf> Régi/Stornózott
19. EveDev Értékvesztés DEV <-1*EveDev> Régi/Stornózott
20. EheDev Értékhelyesbítés DEV <-1*EheDev> Régi/Stornózott
21. EgyDev Egyéb adat DEV <-1*EgyDev> Régi/Stornózott
22. KesNap Késedelmi napok száma <-1*KesNap> Régi/Stornózott
23. KesOsz Késedelmi kamat összege <-1*KesOsz> Régi/Stornózott
24. SzNyDb Nyomtatott számla példány <0>
25. Opekod Rögzítés napló adatok – Operátor kód generált
26. Terkod Terminál kód generált
27. Rogdat Rögzítés időpontja generált
2. A stornózott számla adatainak módosítása:
A stornózott számlába vissza kell írni a stornózás hatását.
PSzaAla – Számla alap tábla
Modify
Program által előállított adatok:
1. StoKod Stornó állapot: <1> - Stornózott
2. MozElj Mozgás előjel <1>
3. StornB Stornó számla száma <PSzaAla.BizAzo> Új/Stornó
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
3. A kapcsolódó mozgás fej adatainak módosítása
Amennyiben a számlához raktári mozgás fej tartozik, akkor nullázzuk a mozgásfej összerendelésre vonatkozó adatait.
A számlához több raktári mozgás fejadat tartozhat. Összerendelő tábla: PSzaBiz.
KMozFej – Raktári mozgás fejtábla
Modify
Program által előállított adatok:
1. PenAll Pénzügyi állapot <0> - N/A
2. BizAzoP Pénzügyi biz. azon. <0>
4. A számla előleg adatok átvétele a stornózott számlából a stornó számlába
Csak végszámlánál!
A stornó számlához át kell másolni a stornózott számla előleg tételeit <PSzaElo> ellentétes előjellel (-1).
PSzaElo – Számla előleg tábla
Insert
Program által előállított adatok
1. SzElID Szla előleg ID <AlapID+'/'+EloNull(TetSor,4)>
2. AlapID Számla alap ID <PSzaAla.SzAlID> Stornó számla /Új
3. SzaSza Alap számla szám <PSzaAla.SzaSza/Stornó> Stornó szla száma /Új
4. TetSor Tételsorszám <TetSor> NV – Nem változik
A stornó számlánál ugyanaz, mint a stornózott számlánál
5. ElolID Előleg számla ID <PSzaAla.SzAlID/Előleg> NV
6. ElolSz Előleg számla szám <PSzaAla.SzaSza/Előleg> NV
7. ElNtto Számla nettó összege <-1*ElNtto>
8. ElAfaO ÁFA összeg <-1*ElAfaO>
9. ElOssz Számla összesen <-1*ElOssz>
10. AfaKod Áfa kód NV
11. Opekod Rögzítés napló adatok – Operátor kód generált
12. Terkod Terminál kód generált
13. Rogdat Rögzítés időpontja generált
5. A stornózás hatásainak átvezetése a stornózott számlákhoz kapcsolódó előleg számlákon
A módosítást a már megváltozott előjelű (-) előlegszámla adataival kell elvégezni.
PSzaElo.ElolID -> PSzaAla/Előleg száma
PSzaAla – Számla alap tábla (Előlegszámla)
Modify
Program által előállított adatok:
1. ElAfaOE ÁFA összeg
ElAfaOE:=ElAfaOE + PSzaElo.ElAfaO /Új
2. ElOsszE Számla összesen
ElOsszE:=ElOsszE + PSzaElo.ElOssz /Új
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
6. A stornó számla áru tételeinek előállítása
A stornó számlához át kell másolni a stornózott számla áru tételeit <PSzaElo> ellentétes előjellel (-1).
PSzaAru – Számla áru tábla Új/Stornó
Insert
Program által előállított adatok
1. SzArID Számla áru ID <SzAlID+'/'+EloNull(TetSor,4)>
2. SzAlID Számla alap ID <PSzaAla.SzAlID> Stornó számla
3. BizAzo Számla bizonylat <PSzaAla.BizAzo> Stornó számla
4. TetSor Tételsorszám <TetSor> NV – Nem változik
A stornó számlánál ugyanaz, mint a stornózott számlánál
5. AruKod Áru kód NV
6. AruLei Áru leírás NV
7. AruMeg Áru megjegyzés NV
8. AfaKod Áfa kód NV
9. AfaKul Áfa kulcs NV
10. Mennyi Mennyiség <-1*Mennyi>
11. MeeKod Mennyiség egység <A:AMeeTor.MeeKod>
12. AtpKod Ártípus kód NV
13. Egysar Egységár NV
14. TetErt Tétel érték <-1*TetErt>
15. AfaErt Tétel áfa érték <-1*AfaErt>
16. PenAll Pénzügyi állapot <I:0>
17. FokAll Főkönyvi állapot <I:0>
18. StoKod Stornó állapot: <2> - Stornó
19. StornA Stornózott tétel azon. <PSzaAru.SzArID> Régi/Stornózott
20. StornB Stornó tétel azonosító <I:0>
21. MozElj Mozgás előjel <-1*MozElj>
Ha StoKod=2 akkor –1 egyébként +1
22. Opekod Rögzítés napló adatok – Operátor kód generált
23. Terkod Terminál kód generált
24. Rogdat Rögzítés időpontja generált
7. A stornózás hatásának visszaírása a stornózott számla árutételeibe
PSzaAru – Számla áru tábla Régi / Stornózott
Modify
Program által előállított adatok
1. StoKod Stornó állapot: <1> - Stornózott
2. StornB Stornó tétel azonosító <PSzaAru.SzArID> Úji/Stornó
3. Opekod Rögzítés napló adatok – Operátor kód generált
4. Terkod Terminál kód generált
5. Rogdat Rögzítés időpontja generált
8.A számla áru tételekhez kapcsolódó raktári mozgások adatmezőinek módosítása
Gépi számla esetén ki kell keresni a számla árukhoz tartozó raktári mozgásokat.
P_SzAlId:=PSzaAla.SzAlId A stornózott számla azonosítója.
P_SzAlId -> PSzaBiz.SzAlId -> PSzaBiz.SzBiId -> PSArBTe.SzBiId -> PSArBTe.RaMoId -> KRakMoz.RaMoId
KRakMoz – Raktári mozgás tábla
Modify
Program által előállított adatok:
1. PenAll Pénzügyi állapot <0> - N/A
2. BizAzoP Pénzügyi biz. azon. <0>
9. Hitelkamat számla kamat elszámolási adatainak stornózása
PSzaAla.Jelleg='7' – Hitelkamat számla A hitelkamat számla stornózásakor a kamat elszámolási adatokat is stornózni kell. Lásd: Eco_Fina_Func_Kamat.Doc.
10. Kölcsön bizonylat stornózási hatásainak átvezetése
If PSzaAla.Jelleg='8' {Kölcsön bizonylat} Then
Begin
Kölcsön bizonylat stornózásakor a kölcsön nyilvántartó adatbázisba vissza kell írni a kölcsön mozgásból keletkezett bizonylat megszűnése miatt a pénzügyi állapot változást.
Select * from fW where PSzaAla.KeskaA = fW.ID
FokonyvhozVIEW Update
fW.PenAll:=0 Pénzügyi állapot 0 – Alap
End Else