CREATE EXCEPTION ECCP_FROZENBUTEMPTY 'You cannot close the Period on an empty frozen dataset.';
COMMIT WORK;
SET AUTODDL OFF;
SET TERM ^ ;
/* Stored procedures */
ALTER PROCEDURE CLOSEPERIOD
(
VPAYSESDEFKEY INTEGER
)
RETURNS
(
CLOSESUCCESSFUL CHAR(1)
)
AS
declare variable CountInFrozen integer;
declare variable lowrkdat date;
declare variable perclsdel char(1);
declare variable lodeplab varchar(15);
declare variable hideplab varchar(15);
declare variable loempmaslab varchar(15);
declare variable hiempmaslab varchar(15);
declare variable setsuccessful char(1);
declare variable epdkey integer;
declare variable ivdayperper integer;
declare variable calcsuccessful char(1);
declare variable deletesuccessful char(1);
declare variable hismaskey INTEGER;
declare variable PAYSESKEY INTEGER;
declare variable PERNUM INTEGER;
declare variable PERENDDAT DATE;
declare variable curperdat DATE;
declare variable ccpkey INTEGER;
declare variable empmaskey INTEGER;
declare variable EmpHidrec CHAR(1);
declare variable EMPMASLAB VARCHAR(15);
declare variable EMPMASBDG VARCHAR(15);
declare variable EMPMASLNM VARCHAR(30);
declare variable EMPMASFNM VARCHAR(30);
declare variable EMPMASMNM VARCHAR(30);
declare variable SOCSECNO VARCHAR(30);
declare variable EMPMASPFMKEY INTEGER;
declare variable SHFKEY INTEGER;
declare variable SHFLAB VARCHAR(15);
declare variable SHFDES VARCHAR(30);
declare variable PRMVAL NUMERIC(15,4);
declare variable PRMVALPCTTF CHAR(1);
declare variable USEINOVTTF CHAR(1);
declare variable HOMJOBKEY INTEGER;
declare variable HOMJOBLAB VARCHAR(15);
declare variable HOMJOBDES VARCHAR(30);
declare variable HOMJOBHPTKEY INTEGER;
declare variable HOMJOBDIRTF CHAR(1);
declare variable HOMJOBOFFSTD CHAR(1);
declare variable HOMJOBINCMINKEY INTEGER;
declare variable HOMJOBEMPTMCKEY INTEGER;
declare variable HOMJOBBONELIINDTF CHAR(1);
declare variable HOMJOBBONELIMODTF CHAR(1);
declare variable HOMJOBBONELIDEPTF CHAR(1);
declare variable HOMJOBBONELIPLNTF CHAR(1);
declare variable HOMJOBCLSKEY INTEGER;
declare variable HOMJOBCLSLAB VARCHAR(15);
declare variable HOMJOBCLSDES VARCHAR(30);
declare variable HOMJOBCLSPFMKEY INTEGER;
declare variable HOMMODKEY INTEGER;
declare variable HOMMODLAB VARCHAR(15);
declare variable HOMMODDES VARCHAR(30);
declare variable HOMDEPKEY INTEGER;
declare variable HOMDEPLAB VARCHAR(15);
declare variable HOMDEPDES VARCHAR(30);
declare variable PAYSESDEFKEY INTEGER;
declare variable PAYSESDEFLAB VARCHAR(15);
declare variable PAYSESDEFDES VARCHAR(30);
declare variable REPTIMWRKFAC NUMERIC(15,4);
declare variable REPTIKTIMFAC NUMERIC(15,4);
declare variable REPTIKUNSFAC NUMERIC(15,4);
declare variable HOMPLNKEY INTEGER;
declare variable HOMPLNLAB VARCHAR(15);
declare variable HOMPLNDES VARCHAR(30);
declare variable MGRKEY INTEGER;
declare variable MGRLAB VARCHAR(15);
declare variable MGRLNM VARCHAR(30);
declare variable PFMKEY INTEGER;
declare variable PFMLAB VARCHAR(15);
declare variable PFMDES VARCHAR(30);
declare variable WAGUNSKEY INTEGER;
declare variable STDFRMYN CHAR(1);
declare variable OVTMET CHAR(3);
declare variable MUPMET CHAR(3);
declare variable OVTTHRYN CHAR(1);
declare variable OVTTHRMET CHAR(3);
declare variable OVTTHRVAL NUMERIC(15,4);
declare variable OVTMUL NUMERIC(15,4);
declare variable OVT2THRVAL NUMERIC(15,4);
declare variable OVT2MUL NUMERIC(15,4);
declare variable homshfprmtf CHAR(1);
declare variable OFFSTDOVTRAT CHAR(3);
declare variable INCMINKEY INTEGER;
declare variable INCMINLAB VARCHAR(15);
declare variable INCMINDES VARCHAR(30);
declare variable INCMINVAL NUMERIC(15,4);
declare variable HRYHPTKEY INTEGER;
declare variable HRYLAB VARCHAR(15);
declare variable HRYDES VARCHAR(30);
declare variable HRYREGRAT NUMERIC(15,4);
declare variable HRYOVTRAT NUMERIC(15,4);
declare variable HRYOVT2RAT NUMERIC(15,4);
declare variable TMCKEY INTEGER;
declare variable TMCLAB VARCHAR(15);
declare variable TMCDES VARCHAR(30);
declare variable TMCVAL NUMERIC(15,4);
declare variable CTYKEY INTEGER;
declare variable CTYLAB VARCHAR(15);
declare variable CTYDES VARCHAR(30);
declare variable EVECURKEY INTEGER;
declare variable WRKDAT DATE;
declare variable wrkdatint INTEGER;
declare variable EVECURRNK INTEGER;
declare variable TOTTIM INTEGER;
declare variable TPSTIKTOTUNS INTEGER;
declare variable TPSTIKTOTBUN INTEGER;
declare variable TPSTIKTOTCUR NUMERIC(15,4);
declare variable TPSTIKTOTTIM NUMERIC(15,4);
declare variable TPSTIKCURERN NUMERIC(15,4);
declare variable TPSTIKTIMERN NUMERIC(15,4);
declare variable TPSTIKJOBCURERN NUMERIC(15,4);
declare variable TPSTIKJOBTIMERN NUMERIC(15,4);
declare variable TPSTIKOPRCURERN NUMERIC(15,4);
declare variable TPSTIKOPRTIMERN NUMERIC(15,4);
declare variable GENTIKTOTUNS NUMERIC(15,4);
declare variable GENTIKTOTTIK INTEGER;
declare variable GENTIKTOTCUR NUMERIC(15,4);
declare variable GENTIKTOTTIM NUMERIC(15,4);
declare variable GENTIKCURERN NUMERIC(15,4);
declare variable GENTIKTIMERN NUMERIC(15,4);
declare variable GENTIKJOBCURERN NUMERIC(15,4);
declare variable GENTIKJOBTIMERN NUMERIC(15,4);
declare variable GENTIKOPRCURERN NUMERIC(15,4);
declare variable GENTIKOPRTIMERN NUMERIC(15,4);
declare variable ADJTOTADJ INTEGER;
declare variable ADJTOTCUR NUMERIC(15,4);
declare variable ADJTOTTIM NUMERIC(15,4);
declare variable ADJTOTPAY NUMERIC(15,4);
declare variable ADJCURERN NUMERIC(15,4);
declare variable ADJTIMERN NUMERIC(15,4);
declare variable ADJJOBCURERN NUMERIC(15,4);
declare variable ADJJOBTIMERN NUMERIC(15,4);
declare variable ADJOPRCURERN NUMERIC(15,4);
declare variable ADJOPRTIMERN NUMERIC(15,4);
declare variable PayTpsCurErn NUMERIC(15,4);
declare variable PayGenCurErn NUMERIC(15,4);
declare variable PayAdjCurErn NUMERIC(15,4);
declare variable PayTpsTimErn NUMERIC(15,4);
declare variable PayGenTimErn NUMERIC(15,4);
declare variable PayAdjTimErn NUMERIC(15,4);
declare variable EngTpsCurErn NUMERIC(15,4);
declare variable EngGenCurErn NUMERIC(15,4);
declare variable EngAdjCurErn NUMERIC(15,4);
declare variable EngTpsTimErn NUMERIC(15,4);
declare variable EngGenTimErn NUMERIC(15,4);
declare variable EngAdjTimErn NUMERIC(15,4);
declare variable PayUseTimValTF CHAR(1);
declare variable EngUseTimValTF CHAR(1);
declare variable PayTmcJobTF CHAR(1);
declare variable EngTMCjobTF CHAR(1);
declare variable hptcoeff NUMERIC(15,4);
declare variable tmccoeff NUMERIC(15,4);
declare variable incmincoeff NUMERIC(15,4);
declare variable ernratcoeff NUMERIC(15,4);
declare variable EVEJOBKEY INTEGER;
declare variable EVEJOBLAB VARCHAR(15);
declare variable EVEJOBDES VARCHAR(30);
declare variable EVEJOBDIRTF CHAR(1);
declare variable EVEJOBOFFSTD CHAR(1);
declare variable EveJobHptKey INTEGER;
declare variable EVEJOBINCMINKEY INTEGER;
declare variable EVEJOBINCMINLAB VARCHAR(15);
declare variable EVEJOBINCMINdes VARCHAR(30);
declare variable EVEJOBINCMINVAL NUMERIC(15,4);
declare variable EVEJOBEMPTMCKEY INTEGER;
declare variable EVEJOBEMPTMCLAB VARCHAR(15);
declare variable EVEJOBEMPTMCdes VARCHAR(30);
declare variable EVEJOBEMPTMCVAL NUMERIC(15,4);
declare variable evejobmupsetkey INTEGER;
declare variable evejobmupsetlab VARCHAR(15);
declare variable evejobmupsetdes VARCHAR(30);
declare variable evemupmet CHAR(3);
declare variable EVEJOBPAYYN CHAR(1);
declare variable EVEJOBWRKYN CHAR(1);
declare variable EVEJOBREGOTHNON CHAR(1);
declare variable EVEJOBOVTELG CHAR(1);
declare variable EVEJOBBONELIINDTF CHAR(1);
declare variable EVEJOBBONELIMODTF CHAR(1);
declare variable EVEJOBBONELIDEPTF CHAR(1);
declare variable EVEJOBBONELIPLNTF CHAR(1);
declare variable EVEJOBBONCALINDTF CHAR(1);
declare variable EVEJOBBONCALMODTF CHAR(1);
declare variable EVEJOBBONCALDEPTF CHAR(1);
declare variable EVEJOBBONCALPLNTF CHAR(1);
declare variable EVEJOBCLSKEY INTEGER;
declare variable EVEJOBCLSLAB VARCHAR(15);
declare variable EVEJOBCLSDES VARCHAR(30);
declare variable EVEJOBCLSPFMKEY INTEGER;
declare variable EVEMODKEY INTEGER;
declare variable EVEMODLAB VARCHAR(15);
declare variable EVEMODDES VARCHAR(30);
declare variable EVEDEPKEY INTEGER;
declare variable EVEDEPLAB VARCHAR(15);
declare variable EVEDEPDES VARCHAR(30);
declare variable EVEMCHKEY INTEGER;
declare variable EVEMCHLAB VARCHAR(15);
declare variable EVEMCHDES VARCHAR(30);
declare variable EVEMCHGRPKEY INTEGER;
declare variable EVEMCHEFF NUMERIC(15,4);
declare variable EVESHFKEY INTEGER;
declare variable EVESHFLAB VARCHAR(15);
declare variable EVESHFDES VARCHAR(30);
declare variable EVEPRMVAL NUMERIC(15,4);
declare variable EVEPRMVALPCTTF CHAR(1);
declare variable EVEDVRTSHF NUMERIC(15,4);
declare variable EVEHRYHPTKEY INTEGER;
declare variable EVEHRYLAB VARCHAR(15);
declare variable EVEHRYDES VARCHAR(30);
declare variable EVEHRYREGRAT NUMERIC(15,4);
declare variable EVEHRYOVTRAT NUMERIC(15,4);
declare variable EVEHRYOVT2RAT NUMERIC(15,4);
declare variable EVEREGTIM INTEGER;
declare variable EVEOTHTIM INTEGER;
declare variable EVEOVTTIM INTEGER;
declare variable EVEOVT2TIM INTEGER;
declare variable MasschMaskey INTEGER;
declare variable MasSchMasLab VARCHAR(15);
declare variable MasSchMasDes VARCHAR(30);
declare variable MasSchDetKey INTEGER;
declare variable MasschDetRnk INTEGER;
declare variable SchModKey INTEGER;
declare variable SchJobKey INTEGER;
declare variable SchStaTim DATE;
declare variable SchEndTim DATE;
declare variable schTottim INTEGER;
declare variable schBakOutTim INTEGER;
declare variable DVRTCURERNRTE NUMERIC(15,4);
declare variable DVRTONSTDOVT NUMERIC(15,4);
declare variable DVRTONSTDMUP NUMERIC(15,4);
declare variable DVRTSPCPAY NUMERIC(15,4);
declare variable DVRTSPLITRAT NUMERIC(15,4);
declare variable DVrtREG NUMERIC(15,4);
declare variable DVrtOTH NUMERIC(15,4);
declare variable DVrtOVT NUMERIC(15,4);
declare variable DVrtOVT2 NUMERIC(15,4);
declare variable DVrtTOT NUMERIC(15,4);
declare variable DVRTEQPAY NUMERIC(15,4);
declare variable DVRTWRKAVE NUMERIC(15,4);
declare variable DVPYONSTDOVT NUMERIC(15,4);
declare variable DVPYONSTDMUP NUMERIC(15,4);
declare variable DVPYONSTDINC NUMERIC(15,4);
declare variable DVPYONSTDERN NUMERIC(15,4);
declare variable DVPYOFSTDERN NUMERIC(15,4);
declare variable DVPYREG NUMERIC(15,4);
declare variable DVPYOTH NUMERIC(15,4);
declare variable DVPYOVT NUMERIC(15,4);
declare variable DVPYOVT2 NUMERIC(15,4);
declare variable DVPYSPCPAY NUMERIC(15,4);
declare variable DVPYTOT NUMERIC(15,4);
declare variable DVPYSHF NUMERIC(15,4);
declare variable DVRTBONPLN NUMERIC(15,4);
declare variable DVRTBONDEP NUMERIC(15,4);
declare variable DVRTBONMOD NUMERIC(15,4);
declare variable DVRTBONIND NUMERIC(15,4);
declare variable DVPYBONPLN NUMERIC(15,4);
declare variable DVPYBONDEP NUMERIC(15,4);
declare variable DVPYBONMOD NUMERIC(15,4);
declare variable DVPYBONIND NUMERIC(15,4);
declare variable grsprepay NUMERIC(15,4);
declare variable grspretim INTEGER;
declare variable tmpfltfld1 NUMERIC(15,4);
declare variable tmpfltfld2 NUMERIC(15,4);
declare variable tmpfltfld3 NUMERIC(15,4);
declare variable tmpfltfld4 NUMERIC(15,4);
declare variable tmpfltfld5 NUMERIC(15,4);
declare variable tmpintfld1 INTEGER;
declare variable tmpintfld2 INTEGER;
declare variable tmpintfld3 INTEGER;
declare variable tmpintfld4 INTEGER;
declare variable tmpintfld5 INTEGER;
declare variable holidaytf CHAR(1);
begin
paysesdefkey=vpaysesdefkey;
CloseSuccessful = 'F';
payseskey = gen_id( genpayseskey, 1 );
select max(ps.perenddat) + 1
from payses ps
where ps.paysesdefkey = :paysesdefkey
into :lowrkdat;
if (lowrkdat is null)
then lowrkdat = cast( '01/01/96' as date );
/*select the session key to use from paysesdef$ */
select min(EPDKEY), min(curpernum), min(dayperper) from paysesdef$
where paysesdefkey = :paysesdefkey
into :EPDKEY, :pernum, :ivdayperper;
if (epdkey is null) then
exception ECCP_NOFROZENPAY;
select count(*)
from ccpevecur
where paysesdefkey=:paysesdefkey and ccpkey=:epdkey
into :CountInFrozen;
if (CountInFrozen = 0) then
exception ECCP_FROZENBUTEMPTY;
select min(curperdat)
from ccpevecur
where paysesdefkey=:paysesdefkey and ccpkey=:epdkey
into :curperdat;
select min(psd.paysesdeflab),min(psd.perclsdel),
min(em.empmaslab),max(em.empmaslab),
min(dep.deplab),max(dep.deplab)
from empmas em
inner join mod$ mod on em.modkey=mod.modkey
inner join dep$ dep on dep.depkey=mod.depkey,
gtpaysesdefkey gs,
paysesdef$ psd
where em.empmaskey=gs.empmaskey
and gs.paysesdefkey=psd.paysesdefkey
and psd.paysesdefkey=:paysesdefkey
and em.hidrec='F'
into :paysesdeflab,:perclsdel,
:loempmaslab,:hiempmaslab,
:lodeplab,:hideplab ;
for select distinct empmaskey
from ccpevecur
where ccpkey = :epdkey
into :empmaskey
do begin
execute procedure addempjobhours :epdkey, :empmaskey;
For select
min(perenddat),min(empmaskey),min(EmpHidrec),
min(EMPMASLAB),min(EMPMASBDG),min(EMPMASLNM),min(EMPMASFNM),min(EMPMASMNM),min(SOCSECNO),min(EMPMASPFMKEY),
min(SHFKEY),min(SHFLAB),min(SHFDES),min(PRMVAL),min(PRMVALPCTTF),min(USEINOVTTF),min(HOMJOBKEY),min(HOMJOBLAB),
min(HOMJOBDES),min(HOMJOBHPTKEY),min(HOMJOBDIRTF),min(HOMJOBOFFSTD),min(HOMJOBINCMINKEY),min(HOMJOBEMPTMCKEY),
min(HOMJOBBONELIINDTF),min(HOMJOBBONELIMODTF),min(HOMJOBBONELIDEPTF),min(HOMJOBBONELIPLNTF),min(HOMJOBCLSKEY),
min(HOMJOBCLSLAB),min(HOMJOBCLSDES),min(HOMJOBCLSPFMKEY),min(HOMMODKEY),min(HOMMODLAB),min(HOMMODDES),min(HOMDEPKEY),
min(HOMDEPLAB),min(HOMDEPDES),min(PAYSESDEFKEY),min(PAYSESDEFLAB),min(PAYSESDEFDES),min(REPTIMWRKFAC),min(REPTIKTIMFAC),
min(REPTIKUNSFAC),min(HOMPLNKEY),min(HOMPLNLAB),min(HOMPLNDES),min(MGRKEY),min(MGRLAB),min(MGRLNM),
min(PFMKEY),min(PFMLAB),min(PFMDES),min(WAGUNSKEY),min(STDFRMYN),min(OVTMET),min(MUPMET),min(OVTTHRYN),min(OVTTHRMET),
min(OVTTHRVAL),min(OVTMUL),min(OVT2THRVAL),min(OVT2MUL),min(homshfprmtf),min(OFFSTDOVTRAT),min(INCMINKEY),min(INCMINLAB),
min(INCMINDES),min(INCMINVAL),min(HRYHPTKEY),min(HRYLAB),min(HRYDES),min(HRYREGRAT),min(HRYOVTRAT),min(HRYOVT2RAT),
min(TMCKEY),min(TMCLAB),min(TMCDES),min(TMCVAL),min(CTYKEY),min(CTYLAB),min(CTYDES)
from ccpevecur cc
where cc.ccpkey = :epdkey
and empmaskey = :empmaskey
into
:perenddat,:empmaskey,:EmpHidrec,:EMPMASLAB,:EMPMASBDG,:EMPMASLNM,
:EMPMASFNM,:EMPMASMNM,:SOCSECNO,:EMPMASPFMKEY,:SHFKEY,:SHFLAB,:SHFDES,:PRMVAL,:PRMVALPCTTF,:USEINOVTTF,:HOMJOBKEY,
:HOMJOBLAB,:HOMJOBDES,:HOMJOBHPTKEY,:HOMJOBDIRTF,:HOMJOBOFFSTD,:HOMJOBINCMINKEY,:HOMJOBEMPTMCKEY,:HOMJOBBONELIINDTF,
:HOMJOBBONELIMODTF,:HOMJOBBONELIDEPTF,:HOMJOBBONELIPLNTF,:HOMJOBCLSKEY,:HOMJOBCLSLAB,:HOMJOBCLSDES,:HOMJOBCLSPFMKEY,
:HOMMODKEY,:HOMMODLAB,:HOMMODDES,:HOMDEPKEY,:HOMDEPLAB,:HOMDEPDES,:PAYSESDEFKEY,:PAYSESDEFLAB,:PAYSESDEFDES,
:REPTIMWRKFAC,:REPTIKTIMFAC,:REPTIKUNSFAC,:HOMPLNKEY,:HOMPLNLAB,:HOMPLNDES,:MGRKEY,:MGRLAB,:MGRLNM,:PFMKEY,
:PFMLAB,:PFMDES,:WAGUNSKEY,:STDFRMYN,:OVTMET,:MUPMET,:OVTTHRYN,:OVTTHRMET,:OVTTHRVAL,:OVTMUL,:OVT2THRVAL,
:OVT2MUL,:homshfprmtf,:OFFSTDOVTRAT,:INCMINKEY,:INCMINLAB,:INCMINDES,:INCMINVAL,:HRYHPTKEY,:HRYLAB,:HRYDES,
:HRYREGRAT,:HRYOVTRAT,:HRYOVT2RAT,:TMCKEY,:TMCLAB,:TMCDES,:TMCVAL,:CTYKEY,:CTYLAB,:CTYDES
do begin
hismaskey = gen_id( genhismaskey, 1 );
insert into hismas(
hismaskey,PAYSESKEY,PERNUM,PERENDDAT,curperdat,ccpkey,empmaskey,EmpHidrec,
EMPMASLAB,EMPMASBDG,EMPMASLNM,EMPMASFNM,EMPMASMNM,SOCSECNO,EMPMASPFMKEY,SHFKEY,
SHFLAB,SHFDES,PRMVAL,PRMVALPCTTF,USEINOVTTF,HOMJOBKEY,HOMJOBLAB,HOMJOBDES,HOMJOBHPTKEY,
HOMJOBDIRTF,HOMJOBOFFSTD,HOMJOBINCMINKEY,HOMJOBEMPTMCKEY,HOMJOBBONELIINDTF,HOMJOBBONELIMODTF,
HOMJOBBONELIDEPTF,HOMJOBBONELIPLNTF,HOMJOBCLSKEY,HOMJOBCLSLAB,HOMJOBCLSDES,HOMJOBCLSPFMKEY,
HOMMODKEY,HOMMODLAB,HOMMODDES,HOMDEPKEY,HOMDEPLAB,HOMDEPDES,PAYSESDEFKEY,PAYSESDEFLAB,PAYSESDEFDES,
REPTIMWRKFAC,REPTIKTIMFAC,REPTIKUNSFAC,HOMPLNKEY,HOMPLNLAB,HOMPLNDES,MGRKEY,MGRLAB,MGRLNM,PFMKEY,
PFMLAB,PFMDES,WAGUNSKEY,STDFRMYN,OVTMET,MUPMET,OVTTHRYN,OVTTHRMET,OVTTHRVAL,OVTMUL,OVT2THRVAL,
OVT2MUL,homshfprmtf,OFFSTDOVTRAT,INCMINKEY,INCMINLAB,INCMINDES,INCMINVAL,HRYHPTKEY,HRYLAB,
HRYDES,HRYREGRAT,HRYOVTRAT,HRYOVT2RAT,TMCKEY,TMCLAB,TMCDES,TMCVAL,CTYKEY,CTYLAB,CTYDES )
values (
:hismaskey,:PAYSESKEY,:PERNUM,:PERENDDAT,:curperdat,:epdkey,:empmaskey,:EmpHidrec,
:EMPMASLAB,:EMPMASBDG,:EMPMASLNM,:EMPMASFNM,:EMPMASMNM,:SOCSECNO,:EMPMASPFMKEY,:SHFKEY,
:SHFLAB,:SHFDES,:PRMVAL,:PRMVALPCTTF,:USEINOVTTF,:HOMJOBKEY,:HOMJOBLAB,:HOMJOBDES,:HOMJOBHPTKEY,
:HOMJOBDIRTF,:HOMJOBOFFSTD,:HOMJOBINCMINKEY,:HOMJOBEMPTMCKEY,:HOMJOBBONELIINDTF,:HOMJOBBONELIMODTF,
:HOMJOBBONELIDEPTF,:HOMJOBBONELIPLNTF,:HOMJOBCLSKEY,:HOMJOBCLSLAB,:HOMJOBCLSDES,:HOMJOBCLSPFMKEY,
:HOMMODKEY,:HOMMODLAB,:HOMMODDES,:HOMDEPKEY,:HOMDEPLAB,:HOMDEPDES,:PAYSESDEFKEY,:PAYSESDEFLAB,:PAYSESDEFDES,
:REPTIMWRKFAC,:REPTIKTIMFAC,:REPTIKUNSFAC,:HOMPLNKEY,:HOMPLNLAB,:HOMPLNDES,:MGRKEY,:MGRLAB,:MGRLNM,:PFMKEY,
:PFMLAB,:PFMDES,:WAGUNSKEY,:STDFRMYN,:OVTMET,:MUPMET,:OVTTHRYN,:OVTTHRMET,:OVTTHRVAL,:OVTMUL,:OVT2THRVAL,
:OVT2MUL,:homshfprmtf,:OFFSTDOVTRAT,:INCMINKEY,:INCMINLAB,:INCMINDES,:INCMINVAL,:HRYHPTKEY,:HRYLAB,
:HRYDES,:HRYREGRAT,:HRYOVTRAT,:HRYOVT2RAT,:TMCKEY,:TMCLAB,:TMCDES,:TMCVAL,:CTYKEY,:CTYLAB,:CTYDES );
for select
EVECURKEY,WRKDAT,wrkdatint,EVECURRNK,TOTTIM,TPSTIKTOTUNS,TPSTIKTOTBUN,TPSTIKTOTCUR,TPSTIKTOTTIM,
TPSTIKCURERN,TPSTIKTIMERN,TPSTIKJOBCURERN,TPSTIKJOBTIMERN,TPSTIKOPRCURERN,TPSTIKOPRTIMERN,GENTIKTOTUNS,
GENTIKTOTTIK,GENTIKTOTCUR,GENTIKTOTTIM,GENTIKCURERN,GENTIKTIMERN,GENTIKJOBCURERN,GENTIKJOBTIMERN,GENTIKOPRCURERN,
GENTIKOPRTIMERN,ADJTOTADJ,ADJTOTCUR,ADJTOTTIM,ADJTOTPAY,ADJCURERN,ADJTIMERN,ADJJOBCURERN,ADJJOBTIMERN,ADJOPRCURERN,
ADJOPRTIMERN,PayTpsCurErn,PayGenCurErn,PayAdjCurErn,PayTpsTimErn,PayGenTimErn,PayAdjTimErn,EngTpsCurErn,
EngGenCurErn,EngAdjCurErn,EngTpsTimErn,EngGenTimErn,EngAdjTimErn,PayUseTimValTF,EngUseTimValTF,PayTmcJobTF,
EngTMCjobTF,hptcoeff,tmccoeff,incmincoeff,ernratcoeff,EVEJOBKEY,EVEJOBLAB,EVEJOBDES,EVEJOBDIRTF,EVEJOBOFFSTD,
EveJobHptKey,EVEJOBINCMINKEY,EVEJOBINCMINLAB,EVEJOBINCMINdes,EVEJOBINCMINVAL,EVEJOBEMPTMCKEY,EVEJOBEMPTMCLAB,
EVEJOBEMPTMCdes,EVEJOBEMPTMCVAL,evejobmupsetkey,evejobmupsetlab,evejobmupsetdes,evemupmet,EVEJOBPAYYN,EVEJOBWRKYN,
EVEJOBREGOTHNON,EVEJOBOVTELG,EVEJOBBONELIINDTF,EVEJOBBONELIMODTF,EVEJOBBONELIDEPTF,EVEJOBBONELIPLNTF,EVEJOBBONCALINDTF,
EVEJOBBONCALMODTF,EVEJOBBONCALDEPTF,EVEJOBBONCALPLNTF,EVEJOBCLSKEY,EVEJOBCLSLAB,EVEJOBCLSDES,EVEJOBCLSPFMKEY,EVEMODKEY,
EVEMODLAB,EVEMODDES,EVEDEPKEY,EVEDEPLAB,EVEDEPDES,EVEMCHKEY,EVEMCHLAB,EVEMCHDES,EVEMCHGRPKEY,EVEMCHEFF,EVESHFKEY,
EVESHFLAB,EVESHFDES,EVEPRMVAL,EVEPRMVALPCTTF,EVEDVRTSHF,EVEHRYHPTKEY,EVEHRYLAB,EVEHRYDES,EVEHRYREGRAT,EVEHRYOVTRAT,
EVEHRYOVT2RAT,EVEREGTIM,EVEOTHTIM,EVEOVTTIM,EVEOVT2TIM,MasschMaskey,MasSchMasLab,MasSchMasDes,MasSchDetKey,
MasschDetRnk,SchModKey,SchJobKey,SchStaTim,SchEndTim,schTottim,schBakOutTim,DVRTCURERNRTE,DVRTONSTDOVT,
DVRTONSTDMUP,DVRTSPCPAY,DVRTSPLITRAT,DVrtREG,DVrtOTH,DVrtOVT,DVrtOVT2,DVrtTOT,DVRTEQPAY,DVRTWRKAVE,DVPYONSTDOVT,
DVPYONSTDMUP,DVPYONSTDINC,DVPYONSTDERN,DVPYOFSTDERN,DVPYREG,DVPYOTH,DVPYOVT,DVPYOVT2,DVPYSPCPAY,DVPYTOT,
DVPYSHF,DVRTBONPLN,DVRTBONDEP,DVRTBONMOD,DVRTBONIND,DVPYBONPLN,DVPYBONDEP,DVPYBONMOD,DVPYBONIND,grsprepay,
grspretim,tmpfltfld1,tmpfltfld2,tmpfltfld3,tmpfltfld4,tmpfltfld5,tmpintfld1,tmpintfld2,tmpintfld3,tmpintfld4,
tmpintfld5,holidaytf
from ccpevecur where ccpkey = :epdkey and empmaskey = :empmaskey into
:EVECURKEY,:WRKDAT,:wrkdatint,:EVECURRNK,:TOTTIM,:TPSTIKTOTUNS,:TPSTIKTOTBUN,:TPSTIKTOTCUR,:TPSTIKTOTTIM,
:TPSTIKCURERN,:TPSTIKTIMERN,:TPSTIKJOBCURERN,:TPSTIKJOBTIMERN,:TPSTIKOPRCURERN,:TPSTIKOPRTIMERN,:GENTIKTOTUNS,
:GENTIKTOTTIK,:GENTIKTOTCUR,:GENTIKTOTTIM,:GENTIKCURERN,:GENTIKTIMERN,:GENTIKJOBCURERN,:GENTIKJOBTIMERN,
:GENTIKOPRCURERN,:GENTIKOPRTIMERN,:ADJTOTADJ,:ADJTOTCUR,:ADJTOTTIM,:ADJTOTPAY,:ADJCURERN,:ADJTIMERN,
:ADJJOBCURERN,:ADJJOBTIMERN,:ADJOPRCURERN,:ADJOPRTIMERN,:PayTpsCurErn,:PayGenCurErn,:PayAdjCurErn,:PayTpsTimErn,
:PayGenTimErn,:PayAdjTimErn,:EngTpsCurErn,:EngGenCurErn,:EngAdjCurErn,:EngTpsTimErn,:EngGenTimErn,:EngAdjTimErn,
:PayUseTimValTF,:EngUseTimValTF,:PayTmcJobTF,:EngTMCjobTF,:hptcoeff,:tmccoeff,:incmincoeff,:ernratcoeff,
:EVEJOBKEY,:EVEJOBLAB,:EVEJOBDES,:EVEJOBDIRTF,:EVEJOBOFFSTD,:EveJobHptKey,:EVEJOBINCMINKEY,:EVEJOBINCMINLAB,
:EVEJOBINCMINdes,:EVEJOBINCMINVAL,:EVEJOBEMPTMCKEY,:EVEJOBEMPTMCLAB,:EVEJOBEMPTMCdes,:EVEJOBEMPTMCVAL,:evejobmupsetkey,
:evejobmupsetlab,:evejobmupsetdes,:evemupmet,:EVEJOBPAYYN,:EVEJOBWRKYN,:EVEJOBREGOTHNON,:EVEJOBOVTELG,
:EVEJOBBONELIINDTF,:EVEJOBBONELIMODTF,:EVEJOBBONELIDEPTF,:EVEJOBBONELIPLNTF,:EVEJOBBONCALINDTF,:EVEJOBBONCALMODTF,
:EVEJOBBONCALDEPTF,:EVEJOBBONCALPLNTF,:EVEJOBCLSKEY,:EVEJOBCLSLAB,:EVEJOBCLSDES,:EVEJOBCLSPFMKEY,:EVEMODKEY,
:EVEMODLAB,:EVEMODDES,:EVEDEPKEY,:EVEDEPLAB,:EVEDEPDES,:EVEMCHKEY,:EVEMCHLAB,:EVEMCHDES,:EVEMCHGRPKEY,:EVEMCHEFF,
:EVESHFKEY,:EVESHFLAB,:EVESHFDES,:EVEPRMVAL,:EVEPRMVALPCTTF,:EVEDVRTSHF,:EVEHRYHPTKEY,:EVEHRYLAB,:EVEHRYDES,
:EVEHRYREGRAT,:EVEHRYOVTRAT,:EVEHRYOVT2RAT,:EVEREGTIM,:EVEOTHTIM,:EVEOVTTIM,:EVEOVT2TIM,:MasschMaskey,:MasSchMasLab,
:MasSchMasDes,:MasSchDetKey,:MasschDetRnk,:SchModKey,:SchJobKey,:SchStaTim,:SchEndTim,:schTottim,:schBakOutTim,
:DVRTCURERNRTE,:DVRTONSTDOVT,:DVRTONSTDMUP,:DVRTSPCPAY,:DVRTSPLITRAT,:DVrtREG,:DVrtOTH,:DVrtOVT,:DVrtOVT2,
:DVrtTOT,:DVRTEQPAY,:DVRTWRKAVE,:DVPYONSTDOVT,:DVPYONSTDMUP,:DVPYONSTDINC,:DVPYONSTDERN,:DVPYOFSTDERN,:DVPYREG,
:DVPYOTH,:DVPYOVT,:DVPYOVT2,:DVPYSPCPAY,:DVPYTOT,:DVPYSHF,:DVRTBONPLN,:DVRTBONDEP,:DVRTBONMOD,:DVRTBONIND,
:DVPYBONPLN,:DVPYBONDEP,:DVPYBONMOD,:DVPYBONIND,:grsprepay,:grspretim,:tmpfltfld1,:tmpfltfld2,:tmpfltfld3,
:tmpfltfld4,:tmpfltfld5,:tmpintfld1,:tmpintfld2,:tmpintfld3,:tmpintfld4,:tmpintfld5,:holidaytf
do begin
insert into hiseve (
HISMASKEY,EVECURKEY,WRKDAT,wrkdatint,EVECURRNK,TOTTIM,TPSTIKTOTUNS,TPSTIKTOTBUN,TPSTIKTOTCUR,TPSTIKTOTTIM,
TPSTIKCURERN,TPSTIKTIMERN,TPSTIKJOBCURERN,TPSTIKJOBTIMERN,TPSTIKOPRCURERN,TPSTIKOPRTIMERN,GENTIKTOTUNS,
GENTIKTOTTIK,GENTIKTOTCUR,GENTIKTOTTIM,GENTIKCURERN,GENTIKTIMERN,GENTIKJOBCURERN,GENTIKJOBTIMERN,
GENTIKOPRCURERN,GENTIKOPRTIMERN,ADJTOTADJ,ADJTOTCUR,ADJTOTTIM,ADJTOTPAY,ADJCURERN,ADJTIMERN,ADJJOBCURERN,
ADJJOBTIMERN,ADJOPRCURERN,ADJOPRTIMERN,PayTpsCurErn,PayGenCurErn,PayAdjCurErn,PayTpsTimErn,PayGenTimErn,
PayAdjTimErn,EngTpsCurErn,EngGenCurErn,EngAdjCurErn,EngTpsTimErn,EngGenTimErn,EngAdjTimErn,PayUseTimValTF,
EngUseTimValTF,PayTmcJobTF,EngTMCjobTF,hptcoeff,tmccoeff,incmincoeff,ernratcoeff,EVEJOBKEY,EVEJOBLAB,
EVEJOBDES,EVEJOBDIRTF,EVEJOBOFFSTD,EveJobHptKey,EVEJOBINCMINKEY,EVEJOBINCMINLAB,EVEJOBINCMINdes,EVEJOBINCMINVAL,
EVEJOBEMPTMCKEY,EVEJOBEMPTMCLAB,EVEJOBEMPTMCdes,EVEJOBEMPTMCVAL,evejobmupsetkey,evejobmupsetlab,evejobmupsetdes,
evemupmet,EVEJOBPAYYN,EVEJOBWRKYN,EVEJOBREGOTHNON,EVEJOBOVTELG,EVEJOBBONELIINDTF,EVEJOBBONELIMODTF,EVEJOBBONELIDEPTF,
EVEJOBBONELIPLNTF,EVEJOBBONCALINDTF,EVEJOBBONCALMODTF,EVEJOBBONCALDEPTF,EVEJOBBONCALPLNTF,EVEJOBCLSKEY,
EVEJOBCLSLAB,EVEJOBCLSDES,EVEJOBCLSPFMKEY,EVEMODKEY,EVEMODLAB,EVEMODDES,EVEDEPKEY,EVEDEPLAB,EVEDEPDES,
EVEMCHKEY,EVEMCHLAB,EVEMCHDES,EVEMCHGRPKEY,EVEMCHEFF,EVESHFKEY,EVESHFLAB,EVESHFDES,EVEPRMVAL,EVEPRMVALPCTTF,
EVEDVRTSHF,EVEHRYHPTKEY,EVEHRYLAB,EVEHRYDES,EVEHRYREGRAT,EVEHRYOVTRAT,EVEHRYOVT2RAT,EVEREGTIM,EVEOTHTIM,
EVEOVTTIM,EVEOVT2TIM,MasschMaskey,MasSchMasLab,MasSchMasDes,MasSchDetKey,MasschDetRnk,SchModKey,SchJobKey,
SchStaTim,SchEndTim,schTottim,schBakOutTim,DVRTCURERNRTE,DVRTONSTDOVT,DVRTONSTDMUP,DVRTSPCPAY,DVRTSPLITRAT,
DVrtREG,DVrtOTH,DVrtOVT,DVrtOVT2,DVrtTOT,DVRTEQPAY,DVRTWRKAVE,DVPYONSTDOVT,DVPYONSTDMUP,DVPYONSTDINC,DVPYONSTDERN,
DVPYOFSTDERN,DVPYREG,DVPYOTH,DVPYOVT,DVPYOVT2,DVPYSPCPAY,DVPYTOT,DVPYSHF,DVRTBONPLN,DVRTBONDEP,DVRTBONMOD,DVRTBONIND,
DVPYBONPLN,DVPYBONDEP,DVPYBONMOD,DVPYBONIND,grsprepay,grspretim,tmpfltfld1,tmpfltfld2,tmpfltfld3,tmpfltfld4,tmpfltfld5,
tmpintfld1,tmpintfld2,tmpintfld3,tmpintfld4,tmpintfld5,holidaytf )
values(
:HISMASKEY,:EVECURKEY,:WRKDAT,:wrkdatint,:EVECURRNK,:TOTTIM,:TPSTIKTOTUNS,:TPSTIKTOTBUN,:TPSTIKTOTCUR,:TPSTIKTOTTIM,
:TPSTIKCURERN,:TPSTIKTIMERN,:TPSTIKJOBCURERN,:TPSTIKJOBTIMERN,:TPSTIKOPRCURERN,:TPSTIKOPRTIMERN,:GENTIKTOTUNS,
:GENTIKTOTTIK,:GENTIKTOTCUR,:GENTIKTOTTIM,:GENTIKCURERN,:GENTIKTIMERN,:GENTIKJOBCURERN,:GENTIKJOBTIMERN,:GENTIKOPRCURERN,
:GENTIKOPRTIMERN,:ADJTOTADJ,:ADJTOTCUR,:ADJTOTTIM,:ADJTOTPAY,:ADJCURERN,:ADJTIMERN,:ADJJOBCURERN,:ADJJOBTIMERN,
:ADJOPRCURERN,:ADJOPRTIMERN,:PayTpsCurErn,:PayGenCurErn,:PayAdjCurErn,:PayTpsTimErn,:PayGenTimErn,:PayAdjTimErn,
:EngTpsCurErn,:EngGenCurErn,:EngAdjCurErn,:EngTpsTimErn,:EngGenTimErn,:EngAdjTimErn,:PayUseTimValTF,:EngUseTimValTF,
:PayTmcJobTF,:EngTMCjobTF,:hptcoeff,:tmccoeff,:incmincoeff,:ernratcoeff,:EVEJOBKEY,:EVEJOBLAB,:EVEJOBDES,:EVEJOBDIRTF,
:EVEJOBOFFSTD,:EveJobHptKey,:EVEJOBINCMINKEY,:EVEJOBINCMINLAB,:EVEJOBINCMINdes,:EVEJOBINCMINVAL,:EVEJOBEMPTMCKEY,:EVEJOBEMPTMCLAB,
:EVEJOBEMPTMCdes,:EVEJOBEMPTMCVAL,:evejobmupsetkey,:evejobmupsetlab,:evejobmupsetdes,:evemupmet,:EVEJOBPAYYN,
:EVEJOBWRKYN,:EVEJOBREGOTHNON,:EVEJOBOVTELG,:EVEJOBBONELIINDTF,:EVEJOBBONELIMODTF,:EVEJOBBONELIDEPTF,:EVEJOBBONELIPLNTF,
:EVEJOBBONCALINDTF,:EVEJOBBONCALMODTF,:EVEJOBBONCALDEPTF,:EVEJOBBONCALPLNTF,:EVEJOBCLSKEY,:EVEJOBCLSLAB,:EVEJOBCLSDES,
:EVEJOBCLSPFMKEY,:EVEMODKEY,:EVEMODLAB,:EVEMODDES,:EVEDEPKEY,:EVEDEPLAB,:EVEDEPDES,:EVEMCHKEY,:EVEMCHLAB,:EVEMCHDES,
:EVEMCHGRPKEY,:EVEMCHEFF,:EVESHFKEY,:EVESHFLAB,:EVESHFDES,:EVEPRMVAL,:EVEPRMVALPCTTF,:EVEDVRTSHF,:EVEHRYHPTKEY,:EVEHRYLAB,
:EVEHRYDES,:EVEHRYREGRAT,:EVEHRYOVTRAT,:EVEHRYOVT2RAT,:EVEREGTIM,:EVEOTHTIM,:EVEOVTTIM,:EVEOVT2TIM,:MasschMaskey,
:MasSchMasLab,:MasSchMasDes,:MasSchDetKey,:MasschDetRnk,:SchModKey,:SchJobKey,:SchStaTim,:SchEndTim,:schTottim,
:schBakOutTim,:DVRTCURERNRTE,:DVRTONSTDOVT,:DVRTONSTDMUP,:DVRTSPCPAY,:DVRTSPLITRAT,:DVrtREG,:DVrtOTH,:DVrtOVT,:DVrtOVT2,
:DVrtTOT,:DVRTEQPAY,:DVRTWRKAVE,:DVPYONSTDOVT,:DVPYONSTDMUP,:DVPYONSTDINC,:DVPYONSTDERN,:DVPYOFSTDERN,:DVPYREG,
:DVPYOTH,:DVPYOVT,:DVPYOVT2,:DVPYSPCPAY,:DVPYTOT,:DVPYSHF,:DVRTBONPLN,:DVRTBONDEP,:DVRTBONMOD,:DVRTBONIND,:DVPYBONPLN,
:DVPYBONDEP,:DVPYBONMOD,:DVPYBONIND,:grsprepay,:grspretim,:tmpfltfld1,:tmpfltfld2,:tmpfltfld3,:tmpfltfld4,:tmpfltfld5,
:tmpintfld1,:tmpintfld2,:tmpintfld3,:tmpintfld4,:tmpintfld5,:holidaytf ) ;
end /* end detail events based entry to hstdet table */
end /* end singleton hstmas loop */
end /* end the distinct empmaskey loop */
insert into payses( payseskey,paysesdefkey,perenddat,pernum) values(:payseskey,:paysesdefkey,:curperdat,:pernum );
update paysesdef$ set curperdat = :curperdat + :ivdayperper, curpernum = :pernum+1 where paysesdefkey=:paysesdefkey;
execute procedure hstave :paysesdefkey returning_values :calcsuccessful;
execute procedure setactiveevecur :paysesdefkey RETURNING_VALUES :setsuccessful;
IF (perclsdel='T') then execute procedure delhiddat 1 RETURNING_VALUES :deletesuccessful;
/* delete records from the table */
execute procedure CCPEveCurClear :EPDKey;
/* Nullify the edpkey in paysesdef$ table */
update Paysesdef$
set epdkey = null
where paysesdefkey = :paysesdefkey;
delete from rptsespar;
delete from rptses;
CloseSuccessful = 'T';
end
^
SET TERM ; ^
COMMIT WORK;
SET AUTODDL ON;
|