Időelszámolás

Navigation:  Tartalom > Termelési modul > Termelési adatok rögzítése >

Időelszámolás

Previous pageReturn to chapter overviewNext page

 

A dolgozói idő elszámolási adatok rögzítésére szolgáló funkció. A funkció segítségével megadható, hogy egy kiválasztott dolgozó egy adott napon, melyik műveleten (munkalapon), milyen időtípusban, hány percet dolgozott.

 

Jogosultságkód:                282300                        Help context:        282300

Forrás:                        Frm_IdoElszam

 

clip2100

 

Tábla:                HIdoEls

 

Fő adatok:

F1.        ID                float                NOT NULL,        – Idő elszámolási tétel azonosító        PK

1-ről induló inkrementális sorszám.

 

Alap adatok:

A1.        Datum                datetime        NOT NULL ,        – Dátum                <A:Last>

A2.        DolKod                varchar (8)        NOT NULL ,        – Dolgozó kód                <A:Last>

A munkavégző dolgozó kódja.                                                fk: ADolTor.DolKod

A kiválasztott dolgozó egyes törzsadatait megjeleníti a program a képernyőn.

 

ADolTor – Dolgozó törzs

A2.        DolNev        Dolgozó név

A4.        DolBeo        Beosztás

A6.        SzeKod        Szervezeti egység        

ASzeTor.SzeNev        Szervezeti egység név

 

A3.        MuvAzo        float                NOT NULL ,        – Művelet azonosító        <A:Last>

Munkalap művelet azonosítója, amelyen a munkavégzés zajlik.                fk: HMunMuv.ID

A kiválasztott művelet és a művelethez tartozó munkalap egyes adatait a program megjeleníti a képernyőn.

 

KMunLap – Munkalap fej adatok:

F3.        MlpAzo                Munkalap azonosító        Pl 12001234

I4.        MlpMeg        Munka megnevezés

T3.        KezDatN        Kezdés dátuma        – Tény

T4.        BefDatN        Befejezés dátuma        – Tény

 

HMunMuv – Munkalap műveleti adatok:

I2.        MuvSor                Művelet sorszám

X1.        GyaMenX        Gyártandó mennyiség

= KMunLap.Mennyi * HMunMuv.GyaMen

X2.        GyMeEgyX        Gyártási mennyiség egység

HGyaTor(HMunMuv.GyaAzo).MeeKod

K1.        GyaAzo                Művelet gyártmány azonosító

HGyaTor.GyaNev        Művelet gyártmány megnevezés

I4.        SzeKod                Szervezeti egység (Üzem)

ASzeTor.SzeNev        Szervezeti egység név

I6.        SzaKod                Szakma kód

HSzaTor.SzaKod        Szakma név

I11.        ElIdo                Előkészületi idő                [perc]

I12.        DbIdo                Darab idő                [perc]

X3.        TervIdoX        Terv idő                [perc]

= KMozFej.Mennyi * HMunMuv.GyaMen * HMunMuv.DbIdo – HMunMuv.ElIdo

X4.        TenyIdoX        Tény idő                [perc]

= Sum(HIdoEls.TenyIdo) Where HIdoEls.MuvAzo = HMunMuv.Id

A kiválasztott műveletre eddig rögzített idő.

X5.        TenTerAraX        Tény / Terv idő arány        [%]

= 100 * TenyIdoX / TervIdoX

Amennyiben az időarány meghaladja a rendszerparaméterként megadott értéket (SAzoAda.MunLapIdoAraWarn) akkor a program az arány adatot piros színnel jeleníti meg. Ha a tény idő nagyobb mint a terv idő, akkor az idő arány villogni fog, az adotok mentésekor pedig a program figyelmeztetést ad.

 

A3.        IdTiKod                varchar (5)        NOT NULL ,        – Idő típus kód                fk: HIdTiTor.IdTiKod

 

Input adatok:

 

I1.        TenyIdo                float                NOT NULL ,        – Tény idő                <A:0>

Ledolgozott idő                                                                [perc]        0D

I2.        VeszIdo                float                NULL ,                – Veszélyes idő                <A:0>

Veszélyes helyen dolgozott idő (a tény időből).                                [perc]        0D

I3.        IdoKer                float                NULL        ,        – Időkeretes idő                <A:0>

Időkeretben ledolgozott idő (a tény időből).                                [perc]        0D

I4.        Megjeg                varchar (40)        NULL ,                – Megjegyzés

 

Napló adatok:

N1.        Opekod        varchar (20)        NOT NULL ,        – Rögzítés napló adatok

N2.        Terkod                varchar (20)        NOT NULL ,        – Terminál kód

N3.        Rogdat                datetime        NOT NULL ,        – Rögzítés dátuma

 

Ellenőrzések az idő-elszámolási adatok mentése során

 

1. A művelet rajzszáma megfelelő állapotban van [Folyamatban, Kész, Ellenőrizve]

HMunMuv.IdCs -> HMunCsa.Id -> HMunCsa.AllKod In [’1’,’2’,’3’]

 

2. Műveletes időtípus ellenőrzés

A. HIdTiTor(IdTiKod).MuvTip = ’I’ And MuvAzo = 0

Message: Az időtípushoz műveletet kell megadni!

 

B. HIdTiTor(IdTiKod).MuvTip = ’’ And MuvAzo <> 0

Message: Az időtípushoz nem szabad műveletet megadni!

 

3. Munkaidő ellenőrzés

Ledolgozando := usunis.Ledolgozando(HIdoEls.Datum,HIdoEls.DolKod)

Ledolgozandó idő:

1. Dolgozói munkaidő definíció                        HDolMun

2. Munkanap áthelyezés                        HNapAth

3. Napi törzsidő                                        SAzoAda

Elsőként a program azt vizsgálja meg, hogy a dolgozónak van-e az adott napra definiált egyéni ledolgozandó ideje. Ha van, akkor az a ledolgozandó idő. Ha nincs dolgozói definiált idő, akkor azt nézi meg a program, hogy van-e az adott napra vonatkozó munkanap áthelyezés. Ha van munkanap áthelyezés, akkor az áthelyezett napra vonatkozó törzsidő az érvényes, ha nincs akkor a normál napi törzsidő.

 

Ledolgozott := usunis.Ledolgozott(HIdoEls.Datum,HIdoEls.DolKod,HIdoEls.ID)

A dolgozó adott napon ledolgozott törzsidőbe tartozó ideje.

 

Ha Ledolgozott > Ledolgozando

Then Message: A ledolgozott idő nem haladhatja meg a napi ledolgozandó időt!

 

 

4 Napi összes idő ellenőrzés

Sum(TenyIdo) > SA.NapTorIdo_Day + SA.NapPluIdo

where Datum = DatumX and DolKod = DolKodX

Message: Az összes idő nem haladhatja meg a napi összes idő maximumot!

 

5 Heti összes idő ellenőrzés

Sum(TenyIdo) > SA.HetOszIdo

where Datum >= DatumX.HetKezd and Datum <= DatumX.HetVeg  and DolKod = DolKodX

Message: A heti összes idő nem haladhatja meg a heti összes idő maximumot!

 

6. A művelet élő

HMunMuv.EloKod = ’I’

 

7. A munkalap élő

HMunMuv.MlpAzo -> KMunLap.MlpAzo -> KMunLap.EloKod = ’I’

 

8. A tény idő meghaladja a terv időt

TenyIdoX > TervIdoX        Warning