Pénzügyi eszközök fordulónapi átértékelése

Navigation:  Tartalom > Pénzügyi modul > Számlaállomány nyilvántartás > Devizás mérlegtételek fordulónapi átértékelése >

Pénzügyi eszközök fordulónapi átértékelése

Previous pageReturn to chapter overviewNext page

 

Egyedi devizás eszközönként és forrásonként egy pénzügyi eszköz lett létrehozva a rendszerben (Pl: Pénztár – USD), melyeknek értékváltozásai a Pénzügyi eszköz mozgás adminisztráció funkcióban lettek rögzítve.

A funkció segítségével a devizás pénzügyi eszközök számviteli fordulónapi egyenlege és mérleg szerinti fordulónapi egyenlegének eltéréséből adódó érték különbözetet számolhatjuk el automatizáltan.

 

Forrás:                        Frm_FordNapAtertekPee

Script:                        PeeAtert_UtoFor.sql

Jogosultságkód:                242630                        Help context:        242630

 

clip1933

 

Az átértékelés lépései:

 

1. Input adatok megadása

 

2. Az átértékelendő pénzeszköz kiválasztása

 

3. Fordulónap utáni forgalom kigyűjtése                PeeAtert_UtoFor.sql

 

4. Átértékelési adatok kiszámítása

 

5. A kiválasztott pénzeszköz átértékelhetőségének ellenőrzése

 

6. Az átértékelés elvégzése

 

6.1. Az átértékelési pénzmozgás rögzítése

 

6.2. Az utólagos forgalom mozgásainak átszámítása

 

Az elszámolás input adatai:

1. DevDatF        A fordulónap dátuma

2. EgyNapX        Egyenlegközlés napja

Ehhez a funkcióhoz ez a dátum közvetlenül nem szükséges. Csak azért szerepel ezen a formon, mert a fordulónaphoz van kötve.

3. BtoKodX        Bizonylattömb

A generált átértékelési pénzmozgás bizonylattömbje.

Jogcím:        PK

 

Átértékelési adatok kiszámítása

 

EgyenlegDevFej                        Pénzeszköz aktuális devizás egyenleg

EgyenlegHufFej                        Pénzeszköz aktuális forintos egyenleg

DevArfFej                        Pénzeszköz aktuális deviza árfolyam

 

Sum(EgyenlegDevKie)                Utólagos forgalom devizás egyenleg

Sum(EgyenlegHufKie)                Utólagos forgalom forintos egyenleg

 

SzamvErtDev                        Számviteli érték devizás (Fordulónapi devizás egyenleg)

= EgyenlegDevFej – Sum(EgyenlegDevKie)

SzamvErtHuf                        Számviteli érték forintos (Fordulónapi forintos egyenleg)

= EgyenlegHufFej – Sum(EgyenlegHufKie)

 

MerlegErt – Mérleg érték

MerlegErtHuf = SzamvErtDev * FordArf

A pénzeszköz mérleg szerinti értéke a devizás számviteli érték és fordulónapi árfolyam szorzata

 

ErtKulX – Fordulónapi értékelési különbözet

ErtKulX := MerlegErtHuf – SzamvErtHuf vagy részletesen:

A fordulónapi értékelési különbözet a fordulónapi mérlegérték (MerlegErtHuf) és a számviteli érték (SzamvErtHuf) különbsége.

 

Az adatok számítási módját alapvetően az befolyásolja, hogy eszköz (1), vagy forrás (2) jellegű pénzeszközről van-e szó (EsFoJeFej), illetve az, hogy milyen az értékelési különbözet (ErtKulX) előjele.

 

EsFoJeFej

MerlegErtHuf > SzamvErtHuf

MerlegErtHuf < SzamvErtHuf

1 – Eszköz

Árfolyam nyereség

Árfolyam veszteség

2 – Forrás

Árfolyam veszteség

Árfolyam nyereség

 

 

A pénzeszköz átértékelésének feltételei:        PPeeTor

1. DevKod <> KA.AlaDev                        Devizás pénzeszköz

2. FokKod[1] in (’1’,’2’,’3’,’4’)                        Mérleg tétel pénzeszköz

3. EloKod = ’I’                                        Élő

4. Abs(ErtKulX) > Nulla                                Van elszámolható értékelési különbözet

 

 

A kiegyenlítési mozgások átértékelésének feltételei:

1. A forduló nap után rögzített mozgások árfolyam különbsége még nincs elszámolva. Így a mozgás új bekerülési értéke átírható.

Sum(ArkTet) = 0

 

2. A forduló nap után rögzített mozgások nincsenek kikontírozva. Így a mozgás új bekerülési értéke átírható.

Sum(FokTet) = 0

 

 

PSzaKie – Számla kiegyenlítés tábla

Insert

 

Alap adatok:

A1.        SzKiID                Szla kiegyenlítés ID        pk        f(BtoKod,KnyvEv)

A2.        SzAlID                Számla alap ID                        <0>

A3.        KnyvEv                Könyvelés éve                        <ForduloNap-ból>

A4.        KnyvHo                Könyvelés hónapja                <ForduloNap-ból>

A5.        TetSor                Tétel sorszám

A6.        BizAzo                Számla bizonylatszám                <0>

A7.        BizaSo                Bizonylat sorszám                f(BtoKod,KnyvEv)

A8.        SzKiIDCs        Számla kiegyenlítés ID – Csoportos        <0>

A9.        SzKiIDEl        Számla kiegyenlítés ID – Ellen                <0>

 

Input adatok:

I1.        FimKod        Fizetési mód                                <0>                fk: AFimTor.FimKod

I2.        PeeKod        Pénzeszköz kód                        PeeKodX        fk: PPeeTor.PeeKod

A fordulónapi értékelés pénzügyi eszköze.

I3.        PeuKod                Pénzügyi eszköz kód – Alap                <0>                fk: PPeeTor.PeeKod

I4.        PeeJog                Pénzeszköz mozgáskód                                fk: PPeJoDf.PeJoKd

A fordulónapi értékelés elszámolásának mozgáskódja. A számla típusától és a fordulónapi értékelésikülönbözet előjelétől függ az ajánlott adat.

A négy lehetséges elszámolási módhoz (Szállító / Vevő – Nyereség / Veszteség) négy különböző mozgáskód tartozik. Ez egyrészt azért van mert egy mozgáskód csak vagy a szállítói, vagy a vevői bizonylaton választható ki, másrészt pedig a nyereség és a vesztéség kontírozásának más a kontírozás típusa.

If EsfojeFej = ’1’ Then

Begin                {Eszköz}

If ErtKulX > Nulla

Then        KAzoAda.PeeJogKieVev                {Nyereség – Jóváírás}

Else        KAzoAda.PeeJogKieSza        {Veszteség – Terhelés}

End

Else

Begin                {Forrás}

If ErtKulX < Nulla

Then        KAzoAda.PeeJogKieSza        {Nyereség – Terhelés}

Else        KAzoAda.PeeJogKieVev                {Veszteség – Jóváírás}

End

I5.        BToKod        Bizonylat tömb                <BtoKodX>                        fk: KBToTor.BtoKod

I6.        DevKod        Devizanem kód                <DevFej / PPeeTor.DevKod>        fk: ADevTor.DevKod

I7.        MegJeg        Megjegyzés                Fordulónapi átértékelés

I8.        MellDb                Mellékletek száma        <0>

I9.        Bizony                Bizonylatszám                <0>

I10.        KonDat                Könyvelés dátum        <ForduloNap>

I11.        ErtDat                Értéknap dátum                <ForduloNap>

 

Deviza input adatok:

D1.        DevBan        Deviza átszámítási bank                                fk: PBanAzo.BanAzo

<KA.BanAzoD>                                A fordulónapi értékelés deviza bankja.

D2.        DevDat        Deviza átszámítási dátum

<ForduloNap>                                Mérleg fordulónap.

D3.        DevArf                Deviza átszámítási árfolyam

<FordArf>                                Fordulónapi árfolyam.

 

Érték adatok:

É1.        JovDev                Jóváírás összege        DEV        <0>

É2.        TerDev                Terhelés összege        DEV        <0>

É3.        EveDev                Értékvesztés összege        DEV        <0>

É4.        EheDev        Értékhelyesbítés        DEV        <0>

É5.        EgyDev                Egyéb adat                DEV        <0>

 

Számított adatok:

S1.        JovHuf                Jóváírás összege        HUF

If PeeJog[1] = ’1’        Then        Abs(ErtKulX)        Else        0

S2.        TerHuf                Terhelés  összege        HUF

If PeeJog[1] = ’2’        Then        Abs(ErtKulX)        Else        0

S3.        EveHuf                Értékvesztés összege        HUF        <0>

S4.        EheHuf                Értékhelyesbítés        HUF        <0>

S5.        EgyHuf                Egyéb adat                HUF        <0>

S6.        KieHuf                Kiegyenlítés összege        HUF        =JovHuf – TerHuf

S7.        KieDev                Kiegyenlítés összege        DEV        =JovDev – TerDev

 

 

Állapot adatok:

Á1.        PenAll                Pénzügyi állapot                ARK                <0>

Á2.        FokAll                Főkönyvi állapot                FAL                <0>

Á3.        StoKod                Stornó állapot:                        STO                <0>

Á4.        MozElj                Mozgás előjel                                        <1>

Á5.        StornA                Stornózott tétel azonosítója        – Forrás        <0>

Á6.        StornB                Stornó tétel azonosítója                – Cél                <0>

Á7.        SzNyDb        Nyomtatott bizonylat példányszáma                <0>

 

Számviteli adatok:

F1.        ProKod                Project                                                <0>

F2.        SzeKod                Szervezeti egység                                <0>

F3.        DolKod                Dolgozó                                                <0>

F5.        KtgSzl                Költség főkszla                                        <X>

F6.        KtgJel                Költség jelleg                        FKT                <0>

F7.        KtgTip                Költség típus                        FTP                <0>

F10.        ParKod                Partner                                                <0>

F11.        SzlJel                Számla jelleg                        FSJ                <0>

F12.        TevKod                Tevékenység kód                                <0>

 

If (EsfojeFej = ’1’ and PeeJog[1] = ’1’) or (EsfojeFej = ’2’ and PeeJog[1] = ’2’) Then

Begin        Eszköz jóváírás vagy forrás terhelés        ->        Árfolyam nyereség

F9.        AruKod                Áru kód                        SA.MeAruArfNy

F8.        AktKod                Áru katalógus                AruTor(AruKod).AktKod

F4.        FokKod        Főkönyvi számla        AAktTor(AktKod).VFokKod

End

Else

Begin                                                        Árfolyam veszteség

F9.        AruKod                Áru kód                        SA.MeAruArfVe

F8.        AktKod                Áru katalógus                AruTor(AruKod).AktKod

F4.        FokKod        Főkönyvi számla        AAktTor(AktKod).VRafSzl

End

 

Napló adatok:

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

N2.        Terkod                Terminál kód

N3.        Rogdat                Rögzítés időpontja

 

PPeeTor.Update

 

PPeeTor.JovHuf := PPeeTor.JovHuf + PSzaKie.JovHuf

PPeeTor.TerHuf := PPeeTor.TerHuf + PSzaKie.TerHuf

 

 

 

Összegezendő adatmezők:

 

SumErtDev := SzamvErtDev                        Számviteli érték devizás

A devizás kumulált mező induló értéke a számviteli fordulónapi devizás érték, azaz a fordulónapi egyenleg.

SumErtHuf := MerlegErtHuf                        Mérleg érték forintos

A forintos kumulált mező induló értéke a mérleg érték, azaz a devizás egyenleg fordulónapi árfolyamon.

 

N                                                Átértékelendő tételek száma

 

Az átértékelés elvégzése

 

For .i = 1 To N Do

Begin        {Ciklus kezdete}

 

Az átértékelés feltételei:

 

1. Abs(TerDevKieU) > Nulla                Devizás terheléses pénzmozgás

 

2. DevKie = DevFej                        A kiegyenlítés és pénzeszköz devizaneme megegyezik

 

3. MozFaj = ’PEE’Pénzeszközhöz (nem pénzügyi eszközhöz) kapcsolódó kiegyenlítési mozgás

 

Módosított adatmezők:                        Csak, ha van átértékelés

 

DevArfX := Round(SumErtHuf / SumErtDev, 5)        Aktuális devizaárfolyam

Az aktuális deviza árfolyam a kumulált forintos és devizás érték hányadosa

 

1. PSzaKie.MellDb        = PSzaKie.TerHuf

A mellékletek darabszáma mezőbe eltesszük a terhelés átértékelés előtti értékét, hogyha vissza kell csinálni az átértékelést, rendelkezésünkre álljon az eredeti érték.

 

2. PSzaKie.TerHuf        = Round(PSzaKie.TerDev * DevArfX, 2)                Terhelés forintos

A forintos terhelés új értéke a devizás terhelés és az aktuális árfolyam szorzata lesz.

 

4. PSzaKie.DevArf        = DevArfX                                        Deviza árfolyam

A kiegyenlítés deviza árfolyama az aktuális deviza árfolyam

 

5. PenAllKie                PSzaKie.PenAll                Pénzügyi (árfolyam különbözet elszámolási) állapot

If Abs(DevDatFSz-DevArfX) > Nulla Then PenAll := ’1’ Else PenAll := ’0’

Mivel a kiegyenlítés árfolyama megváltozott, ezért újra kell értékelni az árfolyam különbözet elszámolási állapotát.

 

6 PSzaKie.OpeKod, TerKod, RogDat                Napló adatok

 

A pénzmozgáshoz kapcsoló számla értékadatainak átszámítása                Csak, ha van átértékelés

Ha a számlához kapcsolódó kiegyenlítés értéke megváltozik, akkor a számla kiegyenlítés összege is módosul.

 

Az átszámítás feltételei:

 

1. SzamlaAzon <> ’0’        PSzaKie.SzAlId                        A kiegyenlítés számlához kapcsolódik

 

Átszámított adatmezők:

 

1. PSzaAla.BizaDb := PSzaKie.FtKiOs

A bizonylatok darabszáma mezőbe eltesszük a számla átértékelés előtti értékét, hogyha vissza kell csinálni az átértékelést, rendelkezésünkre álljon az eredeti érték.

 

2. PSzaAla.FtKiOs := PSzaAla.FtKiOs + ErtValX                Kiegyenlített összeg – forintos

If PSzaAla.TipusK = ’1’        Then        ErtValX := PSzaKie.TerHuf[Új] - PSzaKie.TerHuf[Régi]

Else        ErtValX := PSzaKie.TerHuf[Régi] - PSzaKie.TerHuf[Új]

A számla kiegyenlítés összegét a kiegyenlítési mozgás átértékelés előtti és utáni értékének különbözetével módosítjuk.

 

Az adatmező összegzése:

Cikluson belül, az átértékelés elvégzése után a kumulálást a kiegyenlítés eredeti (átértékelés előtti) egyenlegével végzezzük el.

 

SumErtDev := SumErtDev + EgyenlegDevKie

SumErtHuf := SumErtHuf + EgyenlegHufKie

 

End        {Ciklus vége}