Kiadás-felhasználás

Navigation:  Tartalom > Készlet modul > Készletmozgások rögzítése > Kiadás >

Kiadás-felhasználás

Previous pageReturn to chapter overviewNext page

 

A raktári felhasználások adatainak rögzítésére szolgáló funkció.

 

Jogosultságkód:        232222                        Help context:        232222

 

A felhasználás funkcióba is egy előtétszűrés képernyőn keresztül jutunk be.

Lásd: DOCUMENT Előtétszűrés

 

A szűrés végrehajtása után egy bizonylatfej adatait rögzíthatjük, vagy egy kiválasztott bizonylat adatait módosíthatjuk.

 

KMozFej - Mozgás fej

 

clip1679

 

Input adatok:

Általános input adatok:

I1.        BToKod        Bizonylat tömb kód        fk: KBToTor.BToKod

I4.        RakKod                Raktárkód                fk: ARakTor.RakKod

I5.        MozDat        Mozgás dátuma

I6.        Bizony                Bizonylatszám

I9.        SzeKod        Szervezeti egység        fk: ASzerTor.SzeKod

Az anyagot felhasználó szervezeti egység kódja. A felhasználás kontírozásába is bekerül, így a költségek a főkönyvből szervezeti egységekre is kigyűjthetőek.

I10.        DolKod                Dolgozó kód                fk: ADolTor.DolKod

Az anyagot felhasználó dolgozó kódja. A felhasználás kontírozásába is bekerül, így a költségek a főkönyvből dolgozókra is kigyűjthetőek.

I12.        Megjeg                Megjegyzés

 

Program által előállított adatok:

Általános input adatok:

I2.        Relaci                Reláció                        PRE                                <1>

I3.        DevKod        Deviza kód                fk: ADevTor.DevKod                <HUF>

I7.        SzlSza                Szállítólevél szám                                        <0>

I8.        ParKod                Partner kód                fk: AParTor.ParKod                <0>

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

 

Alap adatok:

A1.        BizAzo                Bizonylat azonosító        pk

A bizonylat azonosítót a program a kiválasztott bizonylattömb kódja és mozgás dátuma alapján generálja.

A2.        BizAzoP        Pénzügyi bizonylat azonosító        fk:PSzaAla.SzAlId        <0>

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

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

 

Állapot adatok:

Á1.        Jogcim                Jogcím - mozgáskódból        JOG                        <5> - Felhasználás

Á2.        BesTip                Beszerzés típus                        BES                        <0>

Á3.        PenAll                Pénzügyi állapot                PPA                        <0>

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

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

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

Á7.        CegKod        Cégkód                                                        <0>

Á8.        GonRog        Göngyszer rögzítés                                        <N>

 

Napló adatok:

N1.        Opekod        Operátor kód

N2.        Terkod                Terminál kód

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

 

KRakMoz – Raktári mozgás tétel tábla

 

clip1680

 

Input adatok:

Általános input adatok:

I1.        AruKod                Árukód                        fk: AAruTor.AruKod

I2.        TarHel                Tárolóhely                fk: KTarHel.TarHel

A tárolóhelynek a fejben definiált raktárhoz kell tartoznia. A program a fejben megadott raktárkód azon tárolóhelyeit jeleníti meg, amelyekből a kiválasztott áruból készlet van.

I3.        MozKod        Mozgáskód                fk: KMozDef:MozKod

I4.        Megjeg        Megjegyzés

I6.        Kiadas                Kiadás mennyiség

I7.        RenSza        Rendelésszám (+tételsorszám)

Vásárlás és felhasználás esetén értelmezett. Egyébként értéke 0.        fk: KRenTet.TetAzo

I8.        MlpAzo                Munkalap azonosító

I9.        ProKod                Project kód                fk: FProTor.ProKod        <>0

Felhasználás esetén mindig kell lenni project kódnak!

Ha van megadva munkalap azonosító, akkor a program onnan tesz ajánlatot a project kódra:

<If MlpAzo<>0 Then A:KMunLap.ProKod Else>

A project törzsben megadott tárgyi eszköz típus eldönti, hogy szükséges-e megadni a mozgáshoz tárgyi eszközt. 1 és 3 típus kód esetén a tárgyi eszköz megadása elkerülhetetlen, egyéb kódok esetén pedig lehetséges.

PteKodX:= FProTor.PteKod – Project – tárgyi eszköz típus

If PteKodX=1 or 3        Then TaenAz<>0 Kell tárgyi eszköz azonosító

Else Lehet megadni TE azonosítót!

Ha a kiválasztott project tartalmaz költségviselőt (7-es számlaosztály), akkor a program a project törzsből veszi a felhasználás költségnemét (5-es számlaosztály) és költségjellegét, egyébként pedig az árukatalógus törzsből.

If FProTor.KtgVis<>'X' Then PrKtVisBo:=True PrKtVisBo:=False        

Tartalmaz-e költségviselőt a project?

KtgHelP:= FProTor.KtgHel        - A project költséghelye.

KtgJelP:= FProTor.KtgJel        - A project költségjellege.

 

Költségfelmerülési adatok anyagfelhasználás esetén:

K6.        TaenAz        Tárgyi eszköz                Sw: FTaeFej.TaenAz

Ha van megadva munkalapszám, akkor a program a munkalap törzsből ajánlatot tesz a tárgyi eszköz kódra. Munkalapszám hiányában a project törzsből próbál ajánlatot tenni a tárgyi eszközre. Ha a project törzsben sincs tárgyi eszköz megadva, akkor a program a tárgyi eszközre nem tesz ajánlatot.

If MlpAzo<>0        Then        A:KMunLap.TaenAz

Else        If ProKod<>0        Then        A:FProTor.TaenAz        Else;

A project törzsben megadott tárgyi eszköz típus eldönti, hogy szükséges-e megadni a mozgáshoz tárgyi eszközt. 1 és 3 típus kód esetén a tárgyi eszköz megadása elkerülhetetlen, egyéb kódok esetén pedig lehetséges.

If PteKodX=1 or 3        Then TaenAz<>0 Kell tárgyi eszköz azonosító

Else Lehet megadni TE azonosítót!

Ha van megadott tárgyi eszköz, akkor a program a tárgyi eszköz törzsből átveszi a könyveléshez a tárgyi eszköz költséghelyét és költségjellegét. Tárgyi eszköz hiányában a program a project törzsből veszi át a költséghelyet és költségjelleget.

TE+:        Tárgyi eszköz azonosító van megadva

KtgHelT:= FTaeFej.KthSzl        - A tárgyi eszköz költséghelye.

KtgJelT:= FTaeFej.KtgJel        - A tárgyi eszköz költségjellege.

TE–:        Tárgyi eszköz azonosító nincs megadva

KtgHelP:=0

KtgJelP:=0

Ha nincs tárgyi eszköz megadva, akkor a project költséghelye és költségjellege nullázódik, mert nem kell a két (project és tárgyi eszköz) költséghelyre és költségjellegre ellenőrzést végezni.

 

Program által előállított adatok:

Alap adatok:

A1.        RaMoID        Raktári mozgás ID        pk

A raktári mozgás azonosító mezője. A program a mozgás fej azonosítójából és a fejhez kapcsolódó mozgás tételsorszámából állítja elő.

A2.        BizAzoP        Pénzügyi bizonylat azonosító                                <0>

Kapcsolódási kulcs a számlanyilvántartáshoz                                <0>

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

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

A5.        BizAzo                Bizonylatazonosító        fk: KMozFej.BizAzo

Master – Detail kapcsolat

A6.        TetSor                Tétel sorszám        Inkrementális

 

Általános input adatok:

I5.        Bevete                Bevét  mennyiség                                        <0>

 

Költségfelmerülési adatok anyagfelhasználás esetén:

 

A. Költségnem:

1.Alapértelmezés: A felhasznált áru árukatalógusa határozza meg. <AAktTor.FKtgNem>
2.Olyan project kód lett megadva a felhasználáshoz <KRakMoz.ProKod>, amelyhez költségnem lett megadva <FProTor.KtgNem<>'X'> : A project törzs költségnem mezője lesz a könyvelés költség-neme: <FProTor.KtgNem>
3.Tárgyi eszköz azonosító kód van megadva a felhasználáshoz <KRakMoz.TaenAz<>0> : A tárgyi eszköz azonosító a költségfelmerülések csoportosítására szolgál, az előbbiekben meghatározott költség-nemet nem változtatja meg.

B. Költségtípus

Az előbb kiválasztott költségnem <KRakMoz.KtgNem> határozza meg a főkönyvi számla törzsből <FFokTor.KtgNem>

C. Költséghely, költségjelleg

1.A project meghatároz egy költséghelyet és egy költségjelleget <FProTor.KtgHel -> KtgHelP, FProTor.KtgJel -> KtgJelP>
2.Tárgyi eszköz azonosító kód van megadva a felhasználáshoz <KRakMoz.TaenAz<>0 : A tárgyi eszköz is meghatároz egy költséghelyet és egy költségjelleget <FTaeFej.KthSzl -> KtgHelT, FTaeFej.KtgJel -> KtgJelT>.
3.Amennyiben a project által meghatározott költséghely és költségjelleg megegyezik a tárgyi eszköz által definiálttal < KtgHelP= KtgHelT AND KtgJelP=KtgJelT>, akkor az egyező adatokkal történik a kontírozás <KtgJHelT, KtgJelT>.
4.Akár a project által meghatározott költséghely nem egyezik meg a tárgyi eszköz által definiálttal, akár a két költségjelleg nem egyforma, akkor a program nem engedi meg a felhasználási tétel rögzítését.
5.Amennyiben nincs megadva tárgyi eszköz, akkor az egyeztetés elmarad, és a project által meghatározott költséghely és költségjelleg lesz az érvényes.

 

K1.        KtgNem        Költségnem kód        fk: FFokTor.FokKod                5*

<FProTor.KtgNem>

<If PrKtVisBo=True Then FProTor.FktgNem Else>

<Tárgyi eszköz kód megadása, vagy meg nem adása nem változtatja meg a költség-nemet!>

K2.        KtgHel                Költséghely kód                fk: FFokTor.FokKod                6*, 7*

 <FProTor.KtgHel>

K3.        KtgJel                Költségjelleg                FKT

 <FProTor.KtgJel>

K4.        KtgTip                Költségtípus                FTP

 <KRakMoz.KtgNem -> FFokTor.KtgTip>

K5.        KonTip                Kontírozás típusa        SKT                                <0>

 

Értékesítési adatok

É1.        ErEgAr                Egységár – Mozgás                                        <0>

 

Állapot adatok:

Á1.        KesAll                Készletkönyvelési állapot        MAL                        <1> – Előkészített

A felhasználás és az értékesítés adminisztrációja során lehetőség van arra, hogy a rögzített készletmozgás hatása ne azonnal vezetődjön át a készleten, hanem a mozgás csak előkészített állapotban legyen. Az előkészített állapotnak megfelelő adatokat nem a raktár rögzíti. A készletváltozás a raktár általi könyveléssel, raktári kiadással történik meg. Ekkor kerül a tétel feldolgozott állapotba.

Á2.        PenAll                Pénzügyi állapot                PPA                        <0>

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

Á4.        TaeAll                Tárgyi eszköz állapot                MAL                        <0>

 <If AAktTor.EszKod(AruKod)=1 Then TaeAll:=1 Else TaeAll:=0>

Á5.        DoeAll                Dolgozói  állapot                MAL                        <0>

Á6.        EgysAr                Egységár – Mozgás                HUF                        <0>

Á7.        AruTAr                Egységár – Árutörzsben – Elszámoló ár                        <AAruTor.NyilAr>

Á8.        Erteke                Nettóérték                        HUF                        <AktErtX>

Á9.        BesErt                Beszerzési áras érték                HUF                        <BesErtX>

Kiadás:                A kiadás könyvelésekor számított, a forrás készlettétel beszerzési egységára alapján.

Á10.        AktErt                Aktuális áras érték                HUF                        <AktErtX>

Kiadás:                A kiadás könyvelésekor számított, a forrás készlettétel aktuális egységára alapján.

Á10.        AtpKod                Ártípus kód                        ATP                        <0>

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

Á13.        StornA                Stornózott tétel sorszáma        - Forrás                        <0>

Á14.        StornB                Stornó tétel sorszáma                - Cél                        <0>

 

Napló adatok:

N1.        Opekod        Operátor kód

N2.        Terkod                Terminál kód

N3.        Rogdat                Rögzítés dátuma

 

AAruTor – Áru törzs

Az árutörzsbe készletkönyveléskor már nem történik visszaírás! A korábban visszaírt adatokat a program az adatok megjelenítésekor számolja ki.

 

KTetKes - Tételes készlet

Modify

Lásd: Értékesítés

 

KRakKes – Raktári készlet

Modify

Lásd: Értékesítés

 

KTetMoz – Tételes mozgás

Insert

Lásd: Értékesítés

 

Mozgás adatok stornózása: DOCUMENT Kiadás - Stornó

 

Dolgozói eszköznyilvántartás

 

Amennyiben a raktári mozgás mozgás kódja dolgozói eszköz mozgás típusú, akkor a kiadás mozgás mellett egy partnerenkénti készlet bevételezési mozgást is rögzítünk.

 

If KMozDef(KRakMoz.MozKod).DolEsz = ’I’

Begin

TcSp_ParKesAdmin

p_RaMoId                KRakMoz.RaMoId        Raktári mozgás azonosító

p_OpeKod                gc_OpeKod                Operátor azonosító

p_TerKod                gc_TerKod                Terminál azonosító

p_HibaStr                varchar (300)        Out        Hibaüzenet string

p_RaMoIdUj        varchar (20)        Out        Partnerenkénti készletmozgás azonosítója

Amennyiben a partnerenkénti készletmozgás rögzítése sikerült (p_RaMoIdUj Is Not Null), akkor a program az azonosítót megjeleníti a képernyőn. Ellenkező esetben (p_HibaStr <> ’’) a hibaüzenetet láthatjuk.

End

 

A tárolt eljárás által megvalósított adat adminisztráció

A tárolt eljárás a készlet felhasználás fej és mozgás, valamint rendszer paraméterek alapján állítja elő a partnerenkénti készlet bevételezési adatokat.

 

1. Mozgás fej – Partnerenkénti készlet bevét

A program megvizsgálja hogy a felhasználás mozgás fejben megadott dolgozónak (KMozFej.DolKod) a kiadás napjával (KMozFej.MozDat) van-e olyan partnerenkénti készlet bevételezési mozgás feje (KMozFej.BtoKod = SAzoAda.BtoKodParKesBev), amelyik még nincs kinyomtatva (KMozFej.SzNyDb < 1). Ha létezik a feltételeknek megfelelő mozgás fej, akkor a program nem hoz létre új bevételezési fejet, hanem a megtalált fejhez csatolja a bevételezési mozgást.

Ha nem talál megfelelő mozgás fejet a program, akkor létrehozza azt:

KMozFej(Bev).Insert

BizAzo        := exec sp_BizAzo_Gen @BtoKod, 5, @MozDat, @BizAzo out

BtoKod        := SAzoAda.BtoKodParKesBev

RakKod        := AdolTor(KMozFej(Felh).DolKod).RakKod

MozDat        := KMozFej(Felh).MozDat

Bizony        := KMozFej(Felh).Bizony

ParKod        := AParTor(DolKod=KMozFej(Felh).DolKod).ParKod.Max

SzeKod        := ADolTor(KMozFej(Felh).DolKod).SzeKod

DolKod        := KMozFej(Felh).DolKod

Megjeg        := KMozFej(Felh).Megjeg

 

A Felhasználás funkcióban nincs lehetőség partner kód megadására, miközben a dolgozói eszköznyilvántartást a partnerenkénti készlet nyilvántartással valósítjuk meg. Az ellentmondást úgy oldjuk fel, hogy mivel a partnertörzsben a dolgozók is szerepelnek, ezért a program megkeresi dolgozóhoz tartozó legnagyobb (legújabb) élő partner kódot. Ez a kód lesz a nyilvántartás alapja. Ezért ügyelni kell rá, hogy a partner törzsben a dolgozóhoz lehetőleg csak egy élő partner kód tartozzon.

 

2. Raktári mozgás  – Partnerenkénti készlet bevét

A program a létrehozott, vagy megtalált mozgás fejhez kapcsolódóan előállítja a raktári mozgás tételet.

KRakMoz(Bev).Insert

RaMoId        := KMozFej(Bev).BizAzo + TetSor

AruKod        := KRakMoz(Felh).AruKod

TarHel        :=

MozKod        :=

Megjeg        := KRakMoz(Felh).

Bevete        := KRakMoz(Felh).Kiadas

Kiadas        := 0

KesAll        := ’1’ – Előkészített készlet állapot

EgysArD        := KRakMoz(Felh).AktErt / KRakMoz(Felh).Kiadas

BesErt        := KRakMoz(Felh).AktErt

AktErt        := KRakMoz(Felh).AktErt

 

3. Az előkészített készlet állapotú raktári mozgás bevételezése

exec TcSp_RakMoz_Bevet 'E', @p_RaMoIdUj, @p_OpeKod, @p_TerKod, @TetSorB out

 

4. A felhasználás és dolgozói eszköz bevételezési mozgás összekapcsolása

insert into KRakMozOsz(Id, RaMoIdA, RaMoIdK, OsReFa, Opekod, Terkod, Rogdat)

values (@MozOszId, @p_RaMoId, @p_RaMoIdUj, 'DEK', @p_Opekod, @p_Terkod, getdate())

 

Felhasználási mozgás adatok ellenőrzése mentés előtt

 

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. Mozgás fej adatok                                        Rendszer paraméter

 

B. Mozgás tétel adatmezői                                Rendszer paraméter