0% found this document useful (0 votes)
4 views

RU - I404 - AE (App Engine Program Report)

Application Engine Development

Uploaded by

sgeorge
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

RU - I404 - AE (App Engine Program Report)

Application Engine Development

Uploaded by

sgeorge
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 1 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
Program ID: RU_I404_AE Outbound Interface to uConfirm
CEMLI Ref: I404
JIRA Ref: RIASHCM-1690
Date: 05/30/2013
Developer: JNEGOLA
Description: Outbound Interface to uConfirm

JIRA Ref: RIASHCM-2502


Date: 02/20/2013
Developer: JNEGOLA
Description: Update uConfirm to include new earnings codes for essential personnel
(R30 & R95)

CEMLI Ref: I404


JIRA Ref: RIASHCM-2745
Date: 07/3/2014
Developer: JNEGOLA
Description: Truncate First/Middle Name field in LoadEmps step

CEMLI Ref: I404


JIRA Ref: BIIP-37
Date: 03/11/2016
Developer: Jen Voorhees
Description: Add Banner Earnings Codes
Appl Library: No Last Update: 04/10/2024 10:47:27AM JNEGOLA
Owner ID: Message Set: 0
Disable Restart: Yes Program Type: Standard
State Records: RU_INTFC_AET (default)

Section: MAIN MAIN description


Public Section: Yes Last Update: 04/10/2024 10:47:27AM JNEGOLA
Market Code: GBL Database Type: default
Status: Active Effective Date: 1900-01-01
Auto Commit: No Section Type: Prepare Only

Step: TruncStg Truncate Staging Table


Active: Yes On Error: Abort

Action: SQL Truncate Staging Table


ReUse Statement: No On No Rows: Continue
SQL text: %Execute() %TruncateTable(%Table(RU_I404_EMP_STG));
%TruncateTable(%Table(RU_I404_YTD_STG));
%TruncateTable(%Table(RU_I404_PYP_STG));

Step: SFTPConf Check SFTP Configuration


Active: Yes On Error: Abort

Action: PeopleCode Check SFTP Configuration


On Return: Skip Step
PeopleCode text: /****************************************************************************************************
************
RUT HCM Implementation

Ref#Date Developer Description


-------------- -------------- ------------------------------------------------------------------------
I40404/04/2013 Jen Voorhees Check if data is present in record
RU_I030_SFTPCFG for current interface
****************************************************************************************************
**************/

import RU_APP_PACKAGE:*;

Local string &STR_SFTP_ConfigCheck;


Component RU_APP_PACKAGE:InterfaceProcess &OBJ_InterfaceProcess;

&OBJ_InterfaceProcess = create RU_APP_PACKAGE:InterfaceProcess();

&STR_SFTP_ConfigCheck = &OBJ_InterfaceProcess.Sftp_Config_check("I404", 1);


If None(&STR_SFTP_ConfigCheck) Then
MessageBox(0, "", 30002, 58, "SFTP is not configured for the current interface");
Exit (1);
End-If;
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 2 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
Step: LoadAET Load AET
Active: Yes On Error: Abort

Action: SQL SQL to Load AET


ReUse Statement: No On No Rows: Continue
SQL text: %Select(OPRID, RUN_CNTL_ID, RU_INTERFACE_ID, SEQNO,
RU_INTERFACE_NAME, RU_FILENAME) SELECT %OperatorId ,%RUNCONTROL
,B.RU_INTERFACE_ID ,B.SEQNO ,B.RU_INTERFACE_NAME ,B.RU_FILENAME
FROM %Table(RU_I030_SFTPCFG) B WHERE B.RU_INTERFACE_ID='I404'

Step: LdEMPStg Load Employee STG


Active: Yes On Error: Abort

Action: SQL Load Staging Table


ReUse Statement: No On No Rows: Continue
SQL text: %Execute(); INSERT INTO %Table(RU_I404_EMP_STG) ( NATIONAL_ID ,
FIRST_NAME , LAST_NAME , ADDRESS1 , ADDRESS2 , CITY , STATE , POSTAL ,
PHONE , BIRTHDATE , TITLE , HR_STATUS , RU_WORK_STATUS , START_DATE ,
ORIG_HIRE_DT , PREV_TERM_DT , TERMINATION_DT , LOCATION_NAME ,
ADDRESS3 , ADDRESS4 , CITY2 , STATE2 , POSTAL2 , PHONE2 , RU_EIN) SELECT
s.national_id , SUBSTR((n.first_name||CASE WHEN n.middle_name = ' ' THEN '' ELSE '
'||n.middle_name END) ,1 ,30) , n.last_name , a.address1 , a.address2 , a.city , CASE
WHEN ((LENGTH(TRIM(TRANSLATE(a.state , ' +-.0123456789' ,' '))) IS NULL) OR
(LENGTH(a.state) > 2)) THEN 'XX' ELSE a.state END state , a.postal , nvl(p.phone , ' ') ,
%Date(b.birthdate) , jc.descr , j.hr_status , CASE WHEN j.full_part_time = 'F' THEN 'Full
Time' WHEN j.full_part_time = 'P' THEN 'Part Time' ELSE 'Other' END , %Date(j.hire_dt)
, ( SELECT MIN(%Date(j2.hire_dt)) FROM sysadm.ps_job j2 WHERE j.emplid =
j2.emplid AND j2.effdt = ( SELECT MIN(j2_ed.effdt) FROM sysadm.ps_job j2_ed
WHERE j2.emplid = j2_ed.emplid AND j2.empl_rcd = j2_ed.empl_rcd AND j2_ed.effdt <=
%CurrentDateIn) AND j2.effseq = ( SELECT MAX(j2_es.effseq) FROM sysadm.ps_job
j2_es WHERE j2.emplid = j2_es.emplid AND j2.empl_rcd = j2_es.empl_rcd AND j2.effdt
= j2_es.effdt)) , '' , %Date(j.termination_dt) , d.descr , a2.address1 , a2.address2 , a2.city
, a2.state , a2.postal , nvl(p2.phone , ' ') , '226001086000' FROM sysadm.ps_job j LEFT
OUTER JOIN sysadm.ps_personal_phone p ON j.emplid = p.emplid AND p.phone_type
= 'HOME' LEFT OUTER JOIN
sysadm.ps_personal_phone p2 ON j.emplid = p2.emplid AND p2.phone_type = 'BUSN' ,
sysadm.ps_pers_nid s , sysadm.ps_person_name n , sysadm.ps_addresses a ,
sysadm.ps_person b , sysadm.ps_jobcode_tbl jc , sysadm.ps_dept_tbl d ,
sysadm.ps_location_tbl a2 WHERE ((j.job_indicator = 'P' AND j.empl_class
IN('1','3','6','7','8')) OR j.empl_class = '4') AND (j.empl_status = 'A' OR (j.empl_status <>
'A' AND NOT EXISTS ( SELECT 'X' FROM sysadm.ps_job j3 WHERE j3.emplid =
j.emplid AND j3.empl_rcd <> j.empl_rcd AND j3.job_indicator = 'P' AND j3.empl_status =
'A' AND j3.effdt = ( SELECT MIN(j3_ed.effdt) FROM sysadm.ps_job j3_ed WHERE
j3.emplid = j3_ed.emplid AND j3.empl_rcd = j3_ed.empl_rcd AND j3_ed.effdt <=
%CurrentDateIn) AND j3.effseq = ( SELECT MAX(j3_es.effseq) FROM sysadm.ps_job
j3_es WHERE j3.emplid = j3_es.emplid AND j3.empl_rcd = j3_es.empl_rcd AND j3.effdt
= j3_es.effdt)))) AND j.emplid = s.emplid AND j.emplid = n.emplid AND j.emplid =
a.emplid AND a.address_type = 'HOME' AND j.emplid = b.emplid AND j.jobcode =
jc.jobcode AND j.deptid = d.deptid AND j.location = a2.location AND j.effdt = ( SELECT
MAX(j_ed.effdt) FROM sysadm.ps_job j_ed WHERE j.emplid = j_ed.emplid AND
j.empl_rcd = j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND j.effseq = (
SELECT MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid = j_es.emplid
AND j.empl_rcd = j_es.empl_rcd AND j.effdt = j_es.effdt) AND a.effdt = ( SELECT
MAX(a_ed.effdt) FROM sysadm.ps_addresses a_ed WHERE a.emplid = a_ed.emplid A
%CurrentDateIn) AND jc.effdt = ( SELECT MAX(jc_ed.effdt) FROM
sysadm.ps_jobcode_tbl jc_ed WHERE jc.jobcode = jc_ed.jobcode AND jc_ed.effdt <=
%CurrentDateIn) AND d.effdt = ( SELECT MAX(d_ed.effdt) FROM sysadm.ps_dept_tbl
d_ed WHERE d.deptid = d_ed.deptid AND d_ed.effdt <= %CurrentDateIn) AND a2.effdt
= ( SELECT MAX(a2_ed.effdt) FROM sysadm.ps_location_tbl a2_ed WHERE
a2.location = a2_ed.location AND a2_ed.effdt <= %CurrentDateIn) ORDER BY 1

Step: LdYTDStg Load YTD STG


Active: Yes On Error: Abort

Action: SQL Load Staging Table


ReUse Statement: No On No Rows: Continue
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 3 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
SQL text: %Execute(); INSERT INTO %Table(RU_I404_YTD_STG) ( NATIONAL_ID , YEARCD ,
RECORD_DT , ANNUAL_RT , DESCR , DESCR1 , STD_HOURS , AMT1 , AMT2 ,
AMT3) SELECT n.national_id , to_char(sysdate ,'YYYY') , %CurrentDateIn , j.annual_rt ,
'Annual' , ' ' , (j.std_hours * j.fte) , (NVL(( SELECT SUM(e.reg_earns) FROM
sysadm.ps_pay_check ce , sysadm.ps_pay_earnings e WHERE ce.company =
e.company AND ce.paygroup = e.paygroup AND ce.pay_end_dt = e.pay_end_dt AND
ce.off_cycle = e.off_cycle AND ce.page_num = e.page_num AND ce.line_num =
e.line_num AND ce.sepchk = e.sepchk AND ce.emplid = j.emplid AND ce.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND ce.check_dt <=
%CurrentDateIn),0) + NVL(( SELECT SUM(r.oth_earns) FROM sysadm.ps_pay_check
cr , sysadm.ps_pay_oth_earns r WHERE cr.company = r.company AND cr.paygroup =
r.paygroup AND cr.pay_end_dt = r.pay_end_dt AND cr.off_cycle = r.off_cycle AND
cr.page_num = r.page_num AND cr.line_num = r.line_num AND cr.sepchk = r.sepchk
AND cr.emplid = j.emplid AND cr.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cr.check_dt <=
%CurrentDateIn AND r.erncd
IN('CRG','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0) - NVL(( SELECT
SUM(u.oth_earns) FROM sysadm.ps_pay_check cu , sysadm.ps_pay_oth_earns u
WHERE cu.company = u.company AND cu.paygroup = u.paygroup AND cu.pay_end_dt
= u.pay_end_dt AND cu.off_cycle = u.off_cycle AND cu.page_num = u.page_num AND
cu.line_num = u.line_num AND cu.sepchk = u.sepchk AND cu.emplid = j.emplid AND cu.
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cu.check_dt <=
%CurrentDateIn AND u.erncd = 'R10'),0)), NVL(( SELECT SUM(ot.oth_earns) FROM
sysadm.ps_pay_check cot , sysadm.ps_pay_oth_earns ot WHERE cot.company =
ot.company AND cot.paygroup = ot.paygroup AND cot.pay_end_dt = ot.pay_end_dt AND
cot.off_cycle = ot.off_cycle AND cot.page_num = ot.page_num AND cot.line_num =
ot.line_num AND cot.sepchk = ot.sepchk AND cot.emplid = j.emplid AND cot.check_dt
>= to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cot.check_dt <=
%CurrentDateIn AND ot.erncd IN('R03','R04','R13','R30','R93','R94','R95')),0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_check co ,
sysadm.ps_pay_oth_earns o WHERE co.company = o.company AND co.paygroup =
o.paygroup AND co.pay_end_dt = o.pay_end_dt AND co.off_cycle = o.off_cycle AND
co.page_num = o.page_num AND co.line_num = o.line_num AND co.sepchk = o.sepchk
AND co.emplid = j.emplid AND co.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND co.check_dt <=
%CurrentDateIn AND o.erncd
IN('I02','I03','I04','I05','I06','I07','I08','I09','N02','N03','R05','R06','R07','R08','R66','R77',
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')),0) FROM sysadm.ps_job j,
sysadm.ps_pers_nid n WHERE j.emplid = n.emplid AND j.job_indicator = 'P' AND j.empl
n.national_id <> '999999999' AND NOT EXISTS ( SELECT * FROM sysadm.ps_job j2
WHERE j.emplid = j2.emplid AND j2.empl_class IN('7','8') AND j2.effdt = ( SELECT
MAX(j2_ed.effdt) FROM sysadm.ps_job j2_ed WHERE j2.emplid = j2_ed.emplid AND
j2.empl_rcd = j2_ed.empl_rcd AND j2_ed.effdt <= %CurrentDateIn) AND j2.effseq = (
SELECT MAX(j2_es.effseq) FROM sysadm.ps_job j2_es WHERE j2.emplid =
j2_es.emplid AND j2.empl_rcd = j2_es.empl_rcd AND j2.effdt = j2_es.effdt)) AND j.effdt =
( SELECT MAX(j_ed.effdt) FROM sysadm.ps_job j_ed WHERE j.emplid = j_ed.emplid
AND j.empl_rcd = j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND j.effseq = (
SELECT MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid = j_es.emplid
AND j.empl_rcd = j_es.empl_rcd AND j.effdt = j_es.effdt) UNION SELECT n.national_id ,
to_char(sysdate ,'YYYY') , %CurrentDateIn , j.hourly_rt , 'Hourly' , ' ' , (j.std_hours * j.fte) ,
(NVL(( SELECT SUM(e.reg_earns) FROM sysadm.ps_pay_check ce ,
sysadm.ps_pay_earnings e WHERE ce.company = e.company AND ce.paygroup =
e.paygroup AND ce.pay_end_dt = e.pay_end_dt AND ce.off_cycle = e.off_cycle AND
ce.page_num = e.page_num AND ce.line_num = e.line_num AND ce.sepchk = e.sepchk
AND ce.emplid = j.emplid AND ce.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND ce.check_dt <=
%CurrentDateIn),0) + NVL(( SELECT SUM(r.oth_earns) FROM sysadm.ps_pay_check
cr , sysadm.ps_pay_oth_earns r WHERE cr.company = r.company AND cr.paygroup =
r.paygroup AND cr.pay end dt = r.pay end dt AND cr.off cycle = r.off cycle AND cr.pa
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 4 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
= r.page_num AND cr.line_num = r.line_num AND cr.sepchk = r.sepchk AND cr.emplid
= j.emplid AND cr.check_dt >= to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD')
AND cr.check_dt <= %CurrentDateIn AND r.erncd
IN('CRG','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0) - NVL(( SELECT
SUM(u.oth_earns) FROM sysadm.ps_pay_check cu , sysadm.ps_pay_oth_earns u
WHERE cu.company = u.company AND cu.paygroup = u.paygroup AND cu.pay_end_dt
= u.pay_end_dt AND cu.off_cycle = u.off_cycle AND cu.page_num = u.page_num AND
cu.line_num = u.line_num AND cu.sepchk = u.sepchk AND cu.emplid = j.emplid AND
cu.check_dt >= to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND
cu.check_dt <= %CurrentDateIn AND u.erncd = 'R10'),0)), NVL(( SELECT
SUM(ot.oth_earns) FROM sysadm.ps_pay_check cot , sysadm.ps_pay_oth_earns ot
WHERE cot.company = ot.company AND cot.paygroup = ot.paygroup AND
cot.pay_end_dt = ot.pay_end_dt AND cot.off_cycle = ot.off_cycle AND cot.page_num =
ot.page_num AND cot.line_num = ot.line_num AND cot.sepchk = ot.sepchk AND
cot.emplid = j.emplid AND cot.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cot.check_dt <=
%CurrentDateIn AND ot.erncd IN('R03','R04','R13','R30','R93','R94','R95')),0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_check co ,
sysadm.ps_pay_oth_earns o WHERE co.company = o.company AND co.paygroup =
o.paygroup AND co.pay_end_dt = o.pay_end_dt AND co.off_cycle = o.off_cycle AND co.
j.emplid AND co.check_dt >= to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD')
AND co.check_dt <= %CurrentDateIn AND o.erncd
IN('I02','I03','I04','I05','I06','I07','I08','I09','N02','N03','R05','R06','R07','R08','R66','R77',
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')),0) FROM sysadm.ps_job j,
sysadm.ps_pers_nid n WHERE j.emplid = n.emplid AND j.empl_class = '4' AND
n.national_id <> '999999999' AND NOT EXISTS ( SELECT * FROM sysadm.ps_job j2
WHERE j.emplid = j2.emplid AND j2.empl_class IN('1','3','6','7','8') AND j2.effdt = (
SELECT MAX(j2_ed.effdt) FROM sysadm.ps_job j2_ed WHERE j2.emplid =
j2_ed.emplid AND j2.empl_rcd = j2_ed.empl_rcd AND j2_ed.effdt <= %CurrentDateIn)
AND j2.effseq = ( SELECT MAX(j2_es.effseq) FROM sysadm.ps_job j2_es WHERE
j2.emplid = j2_es.emplid AND j2.empl_rcd = j2_es.empl_rcd AND j2.effdt = j2_es.effdt))
AND j.effdt = ( SELECT MAX(j_ed.effdt) FROM sysadm.ps_job j_ed WHERE j.emplid =
j_ed.emplid AND j.empl_rcd = j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND
j.effseq = ( SELECT MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid =
j_es.emplid AND j.empl_rcd = j_es.empl_rcd AND j.effdt = j_es.effdt) UNION SELECT
n.national_id , to_char(sysdate ,'YYYY') , %CurrentDateIn , ( SELECT SUM(j2.comprate)
FROM sysadm.ps_job j2 WHERE j2.emplid = j.emplid AND j2.effdt = ( SELECT
MAX(j2_ed.effdt) FROM sysadm.ps_job j2_ed WHERE j2.emplid = j2_ed.emplid AND
j2.empl_rcd = j2_ed.empl_rcd AND j2_ed.effdt <= %CurrentDateIn) AND j2.effseq = (
SELECT MAX(j2_es.effseq) FROM sysadm.ps_job j2_es WHERE j2.emplid =
j2_es.emplid AND j2.empl_rcd = j2_es.empl_rcd AND j2.effdt = j2_es.effdt)) , 'Other' ,
'Contract' , 0, (NVL(( SELECT SUM(e.reg_earns) FROM sysadm.ps_pay_check ce ,
sysadm.ps_pay_earnings e WHERE ce.company = e.company AND ce.paygroup =
e.paygroup AND ce.pay_end_dt = e.pay_end_dt AND ce.off_cycle = e.off_cycle AND
ce.page_num = e.page_num AND ce.line_num = e.line_num AND ce.sepchk = e.sepchk
AND ce.emplid = j.emplid AND ce.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND ce.check_dt <=
%CurrentDateIn),0) + NVL(( SELECT SUM(r.oth_earns) FROM sysadm.ps_pay_check
cr , sysadm.ps_pay_oth_earns r WHERE cr.company = r.company AND cr.paygroup =
r.paygroup AND cr.pay_end_dt = r.pay_end_dt AND cr.off_cycle = r.off_cycle AND
cr.page_num = r.page_num AND cr.line_num = r.line_num AND cr.sepchk = r.sepchk
AND cr.emplid = j.emplid AND cr.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cr.check_dt <=
%CurrentDateIn AND r.erncd
IN('CRG','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0) - NVL(( SELECT
SUM(u.oth_earns) FROM sysadm.ps_pay_check cu , sysadm.ps_pay_oth_earns u
WHERE cu.company = u.company AND cu.paygroup = u.paygroup AND cu.pay end dt
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 5 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
u.sepchk AND cu.emplid = j.emplid AND cu.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cu.check_dt <=
%CurrentDateIn AND u.erncd = 'R10'),0)), NVL(( SELECT SUM(ot.oth_earns) FROM
sysadm.ps_pay_check cot , sysadm.ps_pay_oth_earns ot WHERE cot.company =
ot.company AND cot.paygroup = ot.paygroup AND cot.pay_end_dt = ot.pay_end_dt AND
cot.off_cycle = ot.off_cycle AND cot.page_num = ot.page_num AND cot.line_num =
ot.line_num AND cot.sepchk = ot.sepchk AND cot.emplid = j.emplid AND cot.check_dt
>= to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cot.check_dt <=
%CurrentDateIn AND ot.erncd IN('R03','R04','R13','R30','R93','R94','R95')),0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_check co ,
sysadm.ps_pay_oth_earns o WHERE co.company = o.company AND co.paygroup =
o.paygroup AND co.pay_end_dt = o.pay_end_dt AND co.off_cycle = o.off_cycle AND
co.page_num = o.page_num AND co.line_num = o.line_num AND co.sepchk = o.sepchk
AND co.emplid = j.emplid AND co.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND co.check_dt <=
%CurrentDateIn AND o.erncd
IN('I02','I03','I04','I05','I06','I07','I08','I09','N02','N03','R05','R06','R07','R08','R66','R77',
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')),0) FROM sysadm.ps_job j, sys
j.empl_class IN('7','8') AND j.empl_status = 'A' AND n.national_id <> '999999999' AND
NOT EXISTS ( SELECT * FROM sysadm.ps_job j2 WHERE j.emplid = j2.emplid AND
j2.job_indicator = 'P' AND j2.empl_class = '1' AND j2.effdt = ( SELECT MAX(j2_ed.effdt)
FROM sysadm.ps_job j2_ed WHERE j2.emplid = j2_ed.emplid AND j2.empl_rcd =
j2_ed.empl_rcd AND j2_ed.effdt <= %CurrentDateIn) AND j2.effseq = ( SELECT
MAX(j2_es.effseq) FROM sysadm.ps_job j2_es WHERE j2.emplid = j2_es.emplid AND
j2.empl_rcd = j2_es.empl_rcd AND j2.effdt = j2_es.effdt)) AND j.effdt = ( SELECT
MAX(j_ed.effdt) FROM sysadm.ps_job j_ed WHERE j.emplid = j_ed.emplid AND
j.empl_rcd = j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND j.effseq = (
SELECT MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid = j_es.emplid
AND j.empl_rcd = j_es.empl_rcd AND j.effdt = j_es.effdt) UNION SELECT n.national_id ,
to_char(sysdate ,'YYYY') , %CurrentDateIn , j.annual_rt , 'Annual' , ' ' , (j.std_hours * j.fte)
, (NVL(( SELECT SUM(e.reg_earns) FROM sysadm.ps_pay_check ce ,
sysadm.ps_pay_earnings e WHERE ce.company = e.company AND ce.paygroup =
e.paygroup AND ce.pay_end_dt = e.pay_end_dt AND ce.off_cycle = e.off_cycle AND
ce.page_num = e.page_num AND ce.line_num = e.line_num AND ce.sepchk = e.sepchk
AND ce.emplid = j.emplid AND ce.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND ce.check_dt <=
%CurrentDateIn),0) + NVL(( SELECT SUM(r.oth_earns) FROM sysadm.ps_pay_check
cr , sysadm.ps_pay_oth_earns r WHERE cr.company = r.company AND cr.paygroup = r.
cr.pay_end_dt = r.pay_end_dt AND cr.off_cycle = r.off_cycle AND cr.page_num =
r.page_num AND cr.line_num = r.line_num AND cr.sepchk = r.sepchk AND cr.emplid =
j.emplid AND cr.check_dt >= to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD')
AND cr.check_dt <= %CurrentDateIn AND r.erncd
IN('CRG','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0)), NVL(( SELECT
SUM(ot.oth_earns) FROM sysadm.ps_pay_check cot , sysadm.ps_pay_oth_earns ot
WHERE cot.company = ot.company AND cot.paygroup = ot.paygroup AND
cot.pay_end_dt = ot.pay_end_dt AND cot.off_cycle = ot.off_cycle AND cot.page_num =
ot.page_num AND cot.line_num = ot.line_num AND cot.sepchk = ot.sepchk AND
cot.emplid = j.emplid AND cot.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND cot.check_dt <=
%CurrentDateIn AND ot.erncd IN('R03','R04','R13','R30','R93','R94','R95')),0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_check co ,
sysadm.ps_pay_oth_earns o WHERE co.company = o.company AND co.paygroup =
o.paygroup AND co.pay_end_dt = o.pay_end_dt AND co.off_cycle = o.off_cycle AND
co.page_num = o.page_num AND co.line_num = o.line_num AND co.sepchk = o.sepchk
AND co.emplid = j.emplid AND co.check_dt >=
to_date(to_char(sysdate,'YYYY')||'01-01','YYYY-MM-DD') AND co.check_dt <=
%CurrentDateIn AND o.erncd IN('I02','I03','I04','I05','I06','I07','I08','I09','N02','N03','R05','
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')),0) FROM sysadm.ps_job j,
sysadm.ps_pers_nid n WHERE j.emplid = n.emplid AND j.job_indicator = 'P' AND
j.empl_class = '1' AND n.national_id <> '999999999' AND EXISTS ( SELECT * FROM
sysadm.ps_job j2 WHERE j.emplid = j2.emplid AND j2.empl_class IN('7','8') AND j2.effdt
= ( SELECT MAX(j2_ed.effdt) FROM sysadm.ps_job j2_ed WHERE j2.emplid =
j2_ed.emplid AND j2.empl_rcd = j2_ed.empl_rcd AND j2_ed.effdt <= %CurrentDateIn)
AND j2.effseq = ( SELECT MAX(j2_es.effseq) FROM sysadm.ps_job j2_es WHERE
j2.emplid = j2_es.emplid AND j2.empl_rcd = j2_es.empl_rcd AND j2.effdt = j2_es.effdt))
AND j.effdt = ( SELECT MAX(j_ed.effdt) FROM sysadm.ps_job j_ed WHERE j.emplid =
j_ed.emplid AND j.empl_rcd = j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND
j.effseq = ( SELECT MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid =
j_es.emplid AND j.empl_rcd = j_es.empl_rcd AND j.effdt = j_es.effdt) ORDER BY 1

Step: LdPYPStg Load Pay Period STG


Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 6 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
Active: Yes On Error: Abort

Action: SQL Load Staging Table


ReUse Statement: No On No Rows: Continue
SQL text: %Execute(); INSERT INTO %Table(RU_I404_PYP_STG) (NATIONAL_ID , CHECK_DT
, PAY_END_DT , AMT1 , AMT2 , AMT3 , EARNS_AMT2 , EARNS_AMT3 ,
EARNS_AMT4 , EARNS_AMT5 , EARNS_AMT6 , EARNS_AMT7 , EARNS_AMT8 ,
EARNS_AMT9 , EARNS_AMT10 , EARNS_AMT11) SELECT n.national_id ,
%Date(c.check_dt ) , %Date(c.pay_end_dt ) , NVL((( SELECT SUM(e.reg_earns) FROM
sysadm.ps_pay_earnings e WHERE e.emplid = c.emplid AND e.pay_end_dt =
c.pay_end_dt) + NVL(( SELECT SUM(o2.oth_earns) FROM sysadm.ps_pay_oth_earns
o2 WHERE c.company = o2.company AND c.paygroup = o2.paygroup AND
c.pay_end_dt = o2.pay_end_dt AND c.off_cycle = o2.off_cycle AND c.page_num =
o2.page_num AND c.line_num = o2.line_num AND o2.erncd
IN('CRG','I01','I10','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0)), 0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_oth_earns o WHERE c.company =
o.company AND c.paygroup = o.paygroup AND c.pay_end_dt = o.pay_end_dt AND
c.off_cycle = o.off_cycle AND c.page_num = o.page_num AND c.line_num = o.line_num
AND o.erncd IN('R03','R04','R13','R30','R93','R94','R95')), 0), NVL(( SELECT
SUM(oo.oth_earns) FROM sysadm.ps_pay_oth_earns oo WHERE c.company =
oo.company AND c.paygroup = oo.paygroup AND c.pay_end_dt = oo.pay_end_dt AND
c.off_cycle = oo.off_cycle AND c.page_num = oo.page_num AND c.line_num =
oo.line_num AND oo.erncd IN('I02','I03','I04','I05','I06','I07','I08','I09','I13','N02','N03','R05'
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')), 0), NVL(( SELECT
SUM(fw.tax_cur) FROM sysadm.ps_pay_tax fw WHERE c.company = fw.company AND
c.paygroup = fw.paygroup AND c.pay_end_dt = fw.pay_end_dt AND c.off_cycle =
fw.off_cycle AND c.page_num = fw.page_num AND c.line_num = fw.line_num AND
fw.state = '$U' AND fw.tax_class = 'H'), 0), NVL(( SELECT SUM(sw.tax_cur) FROM
sysadm.ps_pay_tax sw WHERE c.company = sw.company AND c.paygroup =
sw.paygroup AND c.pay_end_dt = sw.pay_end_dt AND c.off_cycle = sw.off_cycle AND
c.page_num = sw.page_num AND c.line_num = sw.line_num AND sw.state <> '$U' AND
sw.tax_class = 'H'), 0), 0, NVL(( SELECT SUM(ss.tax_cur) FROM sysadm.ps_pay_tax ss
WHERE c.company = ss.company AND c.paygroup = ss.paygroup AND c.pay_end_dt =
ss.pay_end_dt AND c.off_cycle = ss.off_cycle AND c.page_num = ss.page_num AND
c.line_num = ss.line_num AND ss.state = '$U' AND ss.tax_class = 'D'), 0), NVL((
SELECT SUM(medl.ded_cur) FROM sysadm.ps_pay_deduction medl WHERE
c.company = medl.company AND c.paygroup = medl.paygroup AND c.pay_end_dt =
medl.pay_end_dt AND c.off_cycle = medl.off_cycle AND c.page_num = medl.page_num
AND c.line_num = medl.line_num AND medl.plan_type = '10' AND medl.ded_class = 'B'),
0), NVL(( SELECT SUM(denl.ded_cur) FROM sysadm.ps_pay_deduction denl WHERE
denl.paygroup AND c.pay_end_dt = denl.pay_end_dt AND c.off_cycle = denl.off_cycle
AND c.page_num = denl.page_num AND c.line_num = denl.line_num AND
denl.plan_type = '11' AND denl.ded_class = 'B'), 0), NVL(( SELECT SUM(med.tax_cur)
FROM sysadm.ps_pay_tax med WHERE c.company = med.company AND c.paygroup =
med.paygroup AND c.pay_end_dt = med.pay_end_dt AND c.off_cycle = med.off_cycle
AND c.page_num = med.page_num AND c.line_num = med.line_num AND med.state =
'$U' AND med.tax_class = 'Q'), 0), NVL(( SELECT SUM(ret.ded_cur) FROM
sysadm.ps_pay_deduction ret WHERE c.company = ret.company AND c.paygroup =
ret.paygroup AND c.pay_end_dt = ret.pay_end_dt AND c.off_cycle = ret.off_cycle AND
c.page_num = ret.page_num AND c.line_num = ret.line_num AND (ret.plan_type
IN('46','4X','4Y','4Z','7Y') OR (ret.plan_type = '00' AND ret.dedcd IN('BP1101','BP1701')))
AND ret.ded_class = 'B'), 0), NVL(( SELECT SUM(gar.ded_cur) FROM
sysadm.ps_pay_deduction gar WHERE c.company = gar.company AND c.paygroup =
gar.paygroup AND c.pay_end_dt = gar.pay_end_dt AND c.off_cycle = gar.off_cycle AND
c.page_num = gar.page_num AND c.line_num = gar.line_num AND gar.plan_type = '00'
AND gar.dedcd = 'G10000'), 0), NVL(( SELECT SUM(oth.ded_cur) FROM
sysadm.ps_pay_deduction oth WHERE c.company = oth.company AND c.paygroup =
oth.paygroup AND c.pay_end_dt = oth.pay_end_dt AND c.off_cycle = oth.off_cycle AND
c.page_num = oth.page_num AND c.line_num = oth.line_num AND oth.plan_type = '00'
AND oth.dedcd NOT IN('BP1101','BP1701','G10000')), 0) FROM sysadm.ps job j ,
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 7 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
sysadm.ps_pers_nid n , sysadm.ps_pay_check c WHERE j.emplid = n.emplid AND
j.emplid = c.emplid AND c.check_dt >= (%CurrentDateIn - 365) AND c.paycheck_status
= 'F' AND ((j.job_indicator = 'P' AND j.empl_class IN('1','3','6')) OR j.empl_class = '4')
AND n.national_id <> '999999999' AND NOT EXISTS ( SELECT * FROM sysadm.ps_job
j2 WHERE j.emplid = j2.emplid AND j2.empl_class IN('7','8') AND j2.effdt = ( SELECT
MAX(j2_ed.effdt) FROM sysadm.ps_job j2_ed WHERE j2.emplid = j2_ed.emplid AND
j2.empl_rcd = j2_ed.empl_rcd AND j2_ed.effdt <= %CurrentDateIn) AND j2.effseq = (
SELECT MAX(j2_es.effseq) FROM sysadm.ps_job j2_es WHERE j2.emplid =
j2_es.emplid AND j2.empl_rcd = j2_es.empl_rcd AND j2.effdt = j2_es.effdt)) AND j.effdt =
( SELECT MAX(j_ed.effdt) FROM sysadm.ps_job j_ed WHERE j.emplid = j_ed.emplid
AND j.empl_rcd = j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND j.effseq = (
SELECT MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid = j_es.emplid
AND j.empl_rcd = j_es.empl_rcd AND j.effdt = j_es.effdt) UNION SELECT n.national_id ,
%Date(c.check_dt ) , %Date(c.pay_end_dt ) , NVL((( SELECT SUM(e.reg_earns) FROM
sysadm.ps_pay_earnings e WHERE e.emplid = c.emplid AND e.pay_end_dt =
c.pay_end_dt) + NVL(( SELECT SUM(o2.oth_earns) FROM sysadm.ps_pay_oth_earns
o2 WHERE c.company = o2.company AND c.paygroup = o2.paygroup AND
c.pay_end_dt = o2.pay_end_dt AND c.off_cycle = o2.off_cycle AND c.page_num = o2.pa
IN('CRG','I01','I10','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0)), 0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_oth_earns o WHERE c.company =
o.company AND c.paygroup = o.paygroup AND c.pay_end_dt = o.pay_end_dt AND
c.off_cycle = o.off_cycle AND c.page_num = o.page_num AND c.line_num = o.line_num
AND o.erncd IN('R03','R04','R13','R30','R93','R94','R95')), 0), NVL(( SELECT
SUM(oo.oth_earns) FROM sysadm.ps_pay_oth_earns oo WHERE c.company =
oo.company AND c.paygroup = oo.paygroup AND c.pay_end_dt = oo.pay_end_dt AND
c.off_cycle = oo.off_cycle AND c.page_num = oo.page_num AND c.line_num =
oo.line_num AND oo.erncd
IN('I02','I03','I04','I05','I06','I07','I08','I09','I13','N02','N03','R05','R06','R07','R08','R66','R77'
,
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')), 0), NVL(( SELECT
SUM(fw.tax_cur) FROM sysadm.ps_pay_tax fw WHERE c.company = fw.company AND
c.paygroup = fw.paygroup AND c.pay_end_dt = fw.pay_end_dt AND c.off_cycle =
fw.off_cycle AND c.page_num = fw.page_num AND c.line_num = fw.line_num AND
fw.state = '$U' AND fw.tax_class = 'H'), 0), NVL(( SELECT SUM(sw.tax_cur) FROM
sysadm.ps_pay_tax sw WHERE c.company = sw.company AND c.paygroup =
sw.paygroup AND c.pay_end_dt = sw.pay_end_dt AND c.off_cycle = sw.off_cycle AND c
sw.tax_class = 'H'), 0), 0, NVL(( SELECT SUM(ss.tax_cur) FROM sysadm.ps_pay_tax
ss WHERE c.company = ss.company AND c.paygroup = ss.paygroup AND c.pay_end_dt
= ss.pay_end_dt AND c.off_cycle = ss.off_cycle AND c.page_num = ss.page_num AND
c.line_num = ss.line_num AND ss.state = '$U' AND ss.tax_class = 'D'), 0), NVL((
SELECT SUM(medl.ded_cur) FROM sysadm.ps_pay_deduction medl WHERE
c.company = medl.company AND c.paygroup = medl.paygroup AND c.pay_end_dt =
medl.pay_end_dt AND c.off_cycle = medl.off_cycle AND c.page_num = medl.page_num
AND c.line_num = medl.line_num AND medl.plan_type = '10' AND medl.ded_class = 'B'),
0), NVL(( SELECT SUM(denl.ded_cur) FROM sysadm.ps_pay_deduction denl WHERE
c.company = denl.company AND c.paygroup = denl.paygroup AND c.pay_end_dt =
denl.pay_end_dt AND c.off_cycle = denl.off_cycle AND c.page_num = denl.page_num
AND c.line_num = denl.line_num AND denl.plan_type = '11' AND denl.ded_class = 'B'),
0), NVL(( SELECT SUM(med.tax_cur) FROM sysadm.ps_pay_tax med WHERE
c.company = med.company AND c.paygroup = med.paygroup AND c.pay_end_dt =
med.pay_end_dt AND c.off_cycle = med.off_cycle AND c.page_num = med.page_num
AND c.line_num = med.line_num AND med.state = '$U' AND med.tax_class = 'Q'), 0),
NVL(( SELECT SUM(ret.ded_cur) FROM sysadm.ps_pay_deduction ret WHERE
c.company = ret.company AND c.paygroup = ret.paygroup AND c.pay_end_dt =
ret.pay_end_dt AND c.off_cycle = ret.off_cycle AND c.page_num = ret.page_num AND
c.line num = ret.line num AND (ret.plan type IN('46','4X','4Y','4Z','7Y') OR (ret.plan type
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 8 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
= '00' AND ret.dedcd IN('BP1101','BP1701'))) AND ret.ded_class = 'B'), 0), NVL((
SELECT SUM(gar.ded_cur) FROM sysadm.ps_pay_deduction gar WHERE c.company =
gar.company AND c.paygroup = gar.paygroup AND c.pay_end_dt = gar.pay_end_dt
AND c.off_cycle = gar.off_cycle AND c.page_num = gar.page_num AND c.line_num =
gar.line_num AND gar.plan_type IN('00') AND gar.dedcd = 'G10000'), 0), NVL(( SELECT
SUM(oth.ded_cur) FROM sysadm.ps_pay_deduction oth WHERE c.company =
oth.company AND c.paygroup = oth.paygroup AND c.pay_end_dt = oth.pay_end_dt AND
c.off_cycle = oth.off_cycle AND c.page_num = oth.page_num AND c.line_num =
oth.line_num AND oth.plan_type IN('00') AND oth.dedcd NOT
IN('BP1101','BP1701','G10000')), 0) FROM sysadm.ps_job j , sysadm.ps_pers_nid n ,
sysadm.ps_pay_check c WHERE j.emplid = n.emplid AND j.emplid = c.emplid AND
c.check_dt >= (%CurrentDateIn - 365) AND c.paycheck_status = 'F' AND j.empl_class
IN('7','8') AND n.national_id <> '999999999' AND NOT EXISTS ( SELECT * FROM
sysadm.ps_job j2 WHERE j.emplid = j2.emplid AND j2.job_indicator = 'P' AND
j2.empl_class = '1' AND j2.effdt = ( SELECT MAX(j2_ed.effdt) FROM sysadm.ps_job
j2_ed WHERE j2.emplid = j2_ed.emplid AND j2.empl_rcd = j2_ed.empl_rcd AND
j2_ed.effdt <= %CurrentDateIn) AND j2.effseq = ( SELECT MAX(j2_es.effseq) FROM
sysadm.ps_job j2_es WHERE j2.emplid = j2_es.emplid AND j2.empl_rcd =
j2_es.empl_rcd AND j2.effdt = j2_es.effdt)) AND j.effdt = ( SELECT MAX(j_ed.effdt)
FROM sysadm.ps_job j_ed WHERE j.emplid = j_ed.emplid AND j.empl_rcd = j_ed.empl_
j_ed.effdt <= %CurrentDateIn) AND j.effseq = ( SELECT MAX(j_es.effseq) FROM
sysadm.ps_job j_es WHERE j.emplid = j_es.emplid AND j.empl_rcd = j_es.empl_rcd
AND j.effdt = j_es.effdt) UNION SELECT n.national_id , %Date(c.check_dt ) ,
%Date(c.pay_end_dt ) , NVL((( SELECT SUM(e.reg_earns) FROM
sysadm.ps_pay_earnings e WHERE e.emplid = c.emplid AND e.pay_end_dt =
c.pay_end_dt) + NVL(( SELECT SUM(o2.oth_earns) FROM sysadm.ps_pay_oth_earns
o2 WHERE c.company = o2.company AND c.paygroup = o2.paygroup AND
c.pay_end_dt = o2.pay_end_dt AND c.off_cycle = o2.off_cycle AND c.page_num =
o2.page_num AND c.line_num = o2.line_num AND o2.erncd
IN('CRG','I01','I10','I11','R01','R02','R09','R11','R91','R92','S18','S20')),0)), 0), NVL((
SELECT SUM(o.oth_earns) FROM sysadm.ps_pay_oth_earns o WHERE c.company =
o.company AND c.paygroup = o.paygroup AND c.pay_end_dt = o.pay_end_dt AND
c.off_cycle = o.off_cycle AND c.page_num = o.page_num AND c.line_num = o.line_num
AND o.erncd IN('R03','R04','R13','R30','R93','R94','R95')), 0), NVL(( SELECT
SUM(oo.oth_earns) FROM sysadm.ps_pay_oth_earns oo WHERE c.company =
oo.company AND c.paygroup = oo.paygroup AND c.pay_end_dt = oo.pay_end_dt AND
c.off_cycle = oo.off_cycle AND c.page_num = oo.page_num AND c.line_num =
oo.line_num AND oo.erncd IN('I02','I03','I04','I05','I06','I07','I08','I09','I13','N02','N03','R05'
'S01','S02','S03','S04','S05','S06','S07','S08','S09','S10','S11','S12','S13','S14','S15','S16','
S17','S19','N05','R31','R32','R33','R34','R35','R36','R37','R38','R39','R40','R41','R42','R43'
,'R44','R45','R46','R47','R48','R49','R50','R51','R52','S25')), 0), NVL(( SELECT
SUM(fw.tax_cur) FROM sysadm.ps_pay_tax fw WHERE c.company = fw.company AND
c.paygroup = fw.paygroup AND c.pay_end_dt = fw.pay_end_dt AND c.off_cycle =
fw.off_cycle AND c.page_num = fw.page_num AND c.line_num = fw.line_num AND
fw.state = '$U' AND fw.tax_class = 'H'), 0), NVL(( SELECT SUM(sw.tax_cur) FROM
sysadm.ps_pay_tax sw WHERE c.company = sw.company AND c.paygroup =
sw.paygroup AND c.pay_end_dt = sw.pay_end_dt AND c.off_cycle = sw.off_cycle AND
c.page_num = sw.page_num AND c.line_num = sw.line_num AND sw.state <> '$U' AND
sw.tax_class = 'H'), 0), 0, NVL(( SELECT SUM(ss.tax_cur) FROM sysadm.ps_pay_tax ss
WHERE c.company = ss.company AND c.paygroup = ss.paygroup AND c.pay_end_dt =
ss.pay_end_dt AND c.off_cycle = ss.off_cycle AND c.page_num = ss.page_num AND
c.line_num = ss.line_num AND ss.state = '$U' AND ss.tax_class = 'D'), 0), NVL((
SELECT SUM(medl.ded_cur) FROM sysadm.ps_pay_deduction medl WHERE
c.company = medl.company AND c.paygroup = medl.paygroup AND c.pay_end_dt =
medl.pay_end_dt AND c.off_cycle = medl.off_cycle AND c.page_num = medl.page_num
AND c.line_num = medl.line_num AND medl.plan_type = '10' AND medl.ded_class = 'B'),
0), NVL(( SELECT SUM(denl.ded cur) FROM sysadm.ps pay deduction denl WHERE
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 9 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
denl.paygroup AND c.pay_end_dt = denl.pay_end_dt AND c.off_cycle = denl.off_cycle
AND c.page_num = denl.page_num AND c.line_num = denl.line_num AND
denl.plan_type = '11' AND denl.ded_class = 'B'), 0), NVL(( SELECT SUM(med.tax_cur)
FROM sysadm.ps_pay_tax med WHERE c.company = med.company AND c.paygroup =
med.paygroup AND c.pay_end_dt = med.pay_end_dt AND c.off_cycle = med.off_cycle
AND c.page_num = med.page_num AND c.line_num = med.line_num AND med.state =
'$U' AND med.tax_class = 'Q'), 0), NVL(( SELECT SUM(ret.ded_cur) FROM
sysadm.ps_pay_deduction ret WHERE c.company = ret.company AND c.paygroup =
ret.paygroup AND c.pay_end_dt = ret.pay_end_dt AND c.off_cycle = ret.off_cycle AND
c.page_num = ret.page_num AND c.line_num = ret.line_num AND (ret.plan_type
IN('46','4X','4Y','4Z','7Y') OR (ret.plan_type = '00' AND ret.dedcd IN('BP1101','BP1701')))
AND ret.ded_class = 'B'), 0), NVL(( SELECT SUM(gar.ded_cur) FROM
sysadm.ps_pay_deduction gar WHERE c.company = gar.company AND c.paygroup =
gar.paygroup AND c.pay_end_dt = gar.pay_end_dt AND c.off_cycle = gar.off_cycle AND
c.page_num = gar.page_num AND c.line_num = gar.line_num AND gar.plan_type
IN('00') AND gar.dedcd = 'G10000'), 0), NVL(( SELECT SUM(oth.ded_cur) FROM
sysadm.ps_pay_deduction oth WHERE c.company = oth.company AND c.paygroup =
oth.paygroup AND c.pay_end_dt = oth.pay_end_dt AND c.off_cycle = oth.off_cycle AND
c.page_num = oth.page_num AND c.line_num = oth.line_num AND oth.plan_type
IN('00') AND oth.dedcd NOT IN('BP1101','BP1701','G10000')), 0) FROM sysadm.ps_job j
sysadm.ps_pers_nid n , sysadm.ps_pay_check c WHERE j.emplid = n.emplid AND
j.emplid = c.emplid AND c.check_dt >= (%CurrentDateIn - 365) AND c.paycheck_status
= 'F' AND j.job_indicator = 'P' AND j.empl_class = '1' AND n.national_id <> '999999999'
AND EXISTS ( SELECT * FROM sysadm.ps_job j2 WHERE j.emplid = j2.emplid AND
j2.empl_class IN('7','8') AND j2.effdt = ( SELECT MAX(j2_ed.effdt) FROM sysadm.ps_job
j2_ed WHERE j2.emplid = j2_ed.emplid AND j2.empl_rcd = j2_ed.empl_rcd AND
j2_ed.effdt <= %CurrentDateIn) AND j2.effseq = ( SELECT MAX(j2_es.effseq) FROM
sysadm.ps_job j2_es WHERE j2.emplid = j2_es.emplid AND j2.empl_rcd =
j2_es.empl_rcd AND j2.effdt = j2_es.effdt)) AND j.effdt = ( SELECT MAX(j_ed.effdt)
FROM sysadm.ps_job j_ed WHERE j.emplid = j_ed.emplid AND j.empl_rcd =
j_ed.empl_rcd AND j_ed.effdt <= %CurrentDateIn) AND j.effseq = ( SELECT
MAX(j_es.effseq) FROM sysadm.ps_job j_es WHERE j.emplid = j_es.emplid AND j.empl

Step: WriteFL Write File


Active: Yes On Error: Abort

Action: PeopleCode PeopleCode description


On Return: Skip Step
PeopleCode text: import RU_APP_PACKAGE:*;

Component RU_APP_PACKAGE:InterfaceProcess &OBJ_InterfaceProcess;


Component RU_APP_PACKAGE:Data &OBJ_Data;

&OBJ_InterfaceProcess.STR_Ru_Interface_ID =
RU_INTFC_AET.RU_INTERFACE_ID.Value;
&OBJ_InterfaceProcess.STR_Runid = RU_INTFC_AET.RUN_ID.Value;
&OBJ_InterfaceProcess.STR_Oprid = %OperatorId;
&OBJ_InterfaceProcess.NBR_Process_Inst =
RU_INTFC_AET.PROCESS_INSTANCE.Value;
&OBJ_InterfaceProcess.STR_Interface_Name =
RU_INTFC_AET.RU_INTERFACE_NAME.Value;

rem: Retrieve multiple files and add sysdate;


For &i = 1 To 3
&STR_seqFileName =
&OBJ_InterfaceProcess.Get_SeqFileName(RU_INTFC_AET.RU_INTERFACE_ID.Value
, &i);
If &i = 1 Then
&STR_Date = DateTimeToLocalizedString(%Date, "MMddyyyy");
&STR_Emp_File_name = Substitute(&STR_seqFileName, "*", &STR_Date);
&str_Emp_FilePath =
&OBJ_InterfaceProcess.Get_OutputFilePath(&STR_Emp_File_name);
&FL_Emp_OutputFile = GetFile(&str_Emp_FilePath, "W", "A", %FilePath_Absolute);
Else
If &i = 2 Then
&STR_Date = DateTimeToLocalizedString(%Date, "MMddyyyy");
&STR_YTD_File_name = Substitute(&STR_seqFileName, "*", &STR_Date);
&str_YTD_FilePath =
&OBJ_InterfaceProcess.Get_OutputFilePath(&STR_YTD_File_name);
&FL_YTD_OutputFile = GetFile(&str_YTD_FilePath, "W", "A", %FilePath_Absolute)
Else
If &i = 3 Then
&STR_Date = DateTimeToLocalizedString(%Date, "MMddyyyy");
&STR_PYP_File_name = Substitute(&STR_seqFileName, "*", &STR_Date);
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 10 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
&str_PYP_FilePath =
&OBJ_InterfaceProcess.Get_OutputFilePath(&STR_PYP_File_name);
&FL_PYP_OutputFile = GetFile(&str_PYP_FilePath, "W", "A", %FilePath_Absolut
End-If;
End-If;
End-If;
End-For;

rem: Create Employee Data File;


&empDataRW = CreateRowset(Record.RU_I404_EMP_STG);
&empDataRWCount = &empDataRW.Fill();

If &FL_Emp_OutputFile.IsOpen Then
If &FL_Emp_OutputFile.SetFileLayout(FileLayout.RU_I404_EMP_FL) Then
rem: To resolve formatting issue while opened through notepad;
&STR_Emp_Header_Line =
"SSN|FNAME|LNAME|ADDRESS1|ADDRESS2|CITY|STATE|ZIP|PHONE|DOB|JOB_TIT
LE|EMPLOY_STATUS|WORK_STATUS|START_DATE|ORIG_START_DATE|ORIG_TE
RM_DATE|TERMINATION_DATE|BLOCATION|BADDRESS1|BADDRESS2|BCITY|BST
ATE|BZIP|BPHONE|FEIN";
&FL_Emp_OutputFile.WriteLine(&STR_Emp_Header_Line);
&TermString = Char(13) | Char(10);
&FL_Emp_OutputFile.SetRecTerminator(&TermString);
&FL_Emp_OutputFile.WriteRowset(&empDataRW, True);
Else;
&OBJ_InterfaceProcess.WriteLine(MsgGetText(30002, 5, "Unable to set Emp File
Layout"));
End-If;
Else
&OBJ_InterfaceProcess.WriteLine(MsgGetText(30002, 6, "Unable to open Emp file."));
End-If;
&FL_Emp_OutputFile.Close();

rem: Create YTD File;


&yearToDateRW = CreateRowset(Record.RU_I404_YTD_STG);
&yearToDateRWCount = &yearToDateRW.Fill();

If &FL_YTD_OutputFile.IsOpen Then
If &FL_YTD_OutputFile.SetFileLayout(FileLayout.RU_I404_YTD_FL) Then
rem: To resolve formatting issue while opened through notepad;
&STR_YTD_Header_Line =
"SSN|SALARY_YEAR|RECORD_DATE|PAY_RATE|PAY_RATE_TYPE|PAY_RATE_TY
PE_OTHER|AVG_HOURS_PER_WEEK|BASE|OVERTIME|OTHER";
&FL_YTD_OutputFile.WriteLine(&STR_YTD_Header_Line);
&TermString = Char(13) | Char(10);
&FL_YTD_OutputFile.SetRecTerminator(&TermString);
&FL_YTD_OutputFile.WriteRowset(&yearToDateRW, True);
Else;
&OBJ_InterfaceProcess.WriteLine(MsgGetText(30002, 5, "Unable to set YTD File
Layout"));
End-If;
Else
&OBJ_InterfaceProcess.WriteLine(MsgGetText(30002, 6, "Unable to open YTD file."));
End-If;
&FL_YTD_OutputFile.Close();

rem: Create Pay Period File;


&payPeriodRW = CreateRowset(Record.RU_I404_PYP_STG);
&payPeriodRWCount = &payPeriodRW.Fill();

If &FL_PYP_OutputFile.IsOpen Then
If &FL_PYP_OutputFile.SetFileLayout(FileLayout.RU_I404_PYP_FL) Then
rem: To resolve formatting issue while opened through notepad;
&STR_PYP_Header_Line =
"SSN|PAY_DATE|PERIOD_DATE|PP_BASE|PP_OVERTIME|PP_OTHER|FEDERAL_T
AX|STATE_TAX|LOCAL_TAX|SOCIAL_SECURITY|MEDICAL|DENTAL|MEDICARE|RE
TIREMENT|GARNISHMENTS|OTHER_WITHHELD";
&FL_PYP_OutputFile.WriteLine(&STR_PYP_Header_Line);
&TermString = Char(13) | Char(10);
&FL_PYP_OutputFile.SetRecTerminator(&TermString);
&FL_PYP_OutputFile.WriteRowset(&payPeriodRW, True);
Else;
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 11 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
&OBJ_InterfaceProcess.WriteLine(MsgGetText(30002, 5, "Unable to set PYP File
Layout"));
End-If;
Else
&OBJ_InterfaceProcess.WriteLine(MsgGetText(30002, 6, "Unable to open PYP file."));
End-If;
&FL_PYP_OutputFile.Close();

Step: SFTP SFTP File to Vendor


Active: No On Error: Abort

Action: PeopleCode PeopleCode description


On Return: Skip Step
PeopleCode text: /****************************************************************************************************
*************************
RUT HCM Implementation

Ref#Date Developer Description


-------------- -------------- -------------------------------------------------------------------------
I40405/22/2013 Jen Voorhees SFTP - Execute the SFTP script to transfer
the outbound file to stage directory.
The parameters to execute script are:
#0 - program_name
#2 - user_id
#3 - user_name
#4 - request_id
#5 - local_directory
#6 - remote_directory
#7 - action - GET/PUT
#8 - filename
#9 - pgp_flag
****************************************************************************************************
******************************/
/* Begin RUT I40405/22/2013 Jen Voorhees - Once the output file is generated, it
will be placed in the stage server */

import RU_APP_PACKAGE:*;

Local string &STR_runStatus;


Local number &NBR_Process;

Component RU_APP_PACKAGE:InterfaceProcess &OBJ_InterfaceProcess;

&OBJ_InterfaceProcess = create RU_APP_PACKAGE:InterfaceProcess();


&NBR_Process = RU_INTFC_AET.PROCESS_INSTANCE.Value;

rem: Call the SFTP process;


&OBJ_InterfaceProcess.Sftp_Process2(RU_INTFC_AET.RU_INTERFACE_ID);

/* Abort the program if SFTP process of transfering the file fails */


SQLExec("SELECT A.RUNSTATUS FROM PS_RU_INTFC_LOG A WHERE
A.PROCESS_INSTANCE=:1 AND A.RU_INTERFACE_ID=:2", &NBR_Process,
RU_INTFC_AET.RU_INTERFACE_ID.Value, &STR_runStatus);
rem: CommitWork();

If &STR_runStatus = "10" Then


Exit (1);
End-If;

/* End RUT I40405/22/2013 Jen Voorhees - Once the output file is generated, it will
be placed in the stage server */

Step: Archive Archive Process


Active: No On Error: Abort

Action: PeopleCode PeopleCode description


On Return: Skip Step
PeopleCode text: /*****************************************************************************************
RUT HCM Implementation

Ref#Date Developer Description


-------------- -------------- -------------------------------------------------
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 12 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
I40405/22/2013 Jen Voorhees SFTP - Archive File
******************************************************************************************/

/* Begin RUT I40405/22/2013 Jen Voorhees - Once the output file is generated, it
will be archived in the local server */
import RU_APP_PACKAGE:*;

Component RU_APP_PACKAGE:InterfaceProcess &OBJ_InterfaceProcess;


Local string &STR_runStatus;

rem: OBJ_InterfaceProcess.Sftp_Archive(RU_INTFC_AET.RU_INTERFACE_ID);

/* Begin Archive Class */


Local string &STR_Intfcname, &STR_LocalDir, &STR_RemoteDir, &STR_ArchiveDir,
&STR_FileName, &STR_UserID, &STR_PGPFlag, &STR_IntfcID, &STR_Action,
&STR_ScriptsPath, &STR_PS_HOME, &STR_arch_File_path;
Local string &STR_File_Name, &STR_DataFilePath, &STR_ArchFilePath,
&STR_ArchFileName;
Local number &NBR_Seqno1, &STR_RequestID, &ReturnCode, &NBR_Dot_pos;
Local SQL &SQL_GetSFTPCfg;
Local File &FIL_arch_File;

&STR_ScriptsPath = GetEnv("PS_HOME") | "/ruscripts/";


&STR_PS_HOME = GetEnv("PS_HOME") | "/";

/* Select all the files configured in SFTP configuration table. For each file, execute the
archival script */
&SQL_GetSFTPCfg = CreateSQL("SELECT SEQNO, RU_INTERFACE_NAME,
RU_FILENAME, RU_SFTP_ACTION, USERID, RU_LOCAL_DIR, RU_REMOTE_DIR,
RU_ARCHIVE_DIR, RU_PGP_FLAG FROM PS_RU_I030_SFTPCFG WHERE
RU_INTERFACE_ID = :1", RU_INTFC_AET.RU_INTERFACE_ID);

&STR_RequestID = RU_INTFC_AET.PROCESS_INSTANCE;
&ReturnCode = 0;
CommitWork();

&STR_arch_File_path = &STR_ScriptsPath | "b" |


RU_INTFC_AET.PROCESS_INSTANCE | ".prog";
&FIL_arch_File = GetFile(&STR_arch_File_path, "W", "A", %FilePath_Absolute);

While &SQL_GetSFTPCfg.Fetch(&NBR_Seqno1, &STR_Intfcname, &STR_File_Name,


&STR_Action, &STR_UserID, &STR_LocalDir, &STR_RemoteDir, &STR_ArchiveDir,
&STR_PGPFlag)
rem MessageBox(0, "", 0, 0, "ARVSequence No. :" | &NBR_Seqno1 | " ARVFileName
: " | &STR_File_Name);

&STR_DataFilePath = &STR_PS_HOME | &STR_LocalDir | "/";


&STR_ArchFilePath = &STR_PS_HOME | &STR_ArchiveDir | "/";

&NBR_Dot_pos = Find(".", &STR_File_Name);


&STR_ArchFileName = Substring(&STR_File_Name, 1, &NBR_Dot_pos - 1) |
%Datetime | Substring(&STR_File_Name, &NBR_Dot_pos, Len(&STR_File_Name));
&FIL_arch_File.WriteLine("echo '*****Start Archive Process******'");
&FIL_arch_File.WriteLine("echo ' '");
/*Archival Process - Action*/
/*PUT : Action PUT for outbounds , copies the output .dat files from local directory to
archive directory*/
If &STR_Action = "PUT" Then
&FIL_arch_File.WriteLine("if [ ! -f " | &STR_DataFilePath | &STR_File_Name | " ]; the
&FIL_arch_File.WriteLine("echo ERROR-- " | &STR_File_Name | " not found in
directory " | &STR_DataFilePath);
&FIL_arch_File.WriteLine("exit 1");
&FIL_arch_File.WriteLine("fi");
&FIL_arch_File.WriteLine("mv " | &STR_DataFilePath | &STR_File_Name | " " |
&STR_ArchFilePath | &STR_ArchFileName);
&FIL_arch_File.WriteLine("if [ $? -eq 0 ]; then");
&FIL_arch_File.WriteLine("echo SUCCESS-- " | &STR_File_Name | " Successfully
moved from " | &STR_DataFilePath | " to " | &STR_ArchFilePath);
&FIL_arch_File.WriteLine("else");
&FIL_arch_File.WriteLine("echo ERROR-- " | &STR_File_Name | " File not moved
from " | &STR_DataFilePath | " to " | &STR_ArchFilePath);
&FIL_arch_File.WriteLine("echo ' '");
&FIL_arch_File.WriteLine("exit 1");
Run Date : 06 May 2024 : 03 44 PM Database : MAGNUM Page 13 of 13

PeopleSoft
Application Engine Definition Report
Program ID: RU_I404_AE
Outbound Interface to uConfirm
&FIL_arch_File.WriteLine("fi");
&FIL_arch_File.WriteLine("echo ' '");
&FIL_arch_File.WriteLine("echo '*****End Archive Process******'");
End-If;
End-While;

&FIL_arch_File.Close();
&ReturnCode = Exec("chmod 777 " | &STR_ScriptsPath | "b" |
RU_INTFC_AET.PROCESS_INSTANCE | ".prog", %Exec_Synchronous +
%FilePath_Absolute);
&ReturnCode = Exec("ruscripts/" | "b" | RU_INTFC_AET.PROCESS_INSTANCE |
".prog", %Exec_Synchronous + %FilePath_Relative);
&ReturnCode = Exec("rm " | &STR_ScriptsPath | "b" |
RU_INTFC_AET.PROCESS_INSTANCE | ".prog", %Exec_Synchronous +
%FilePath_Absolute);

MessageBox(0, "", 0, 0, "Return code = " | &ReturnCode);


If &ReturnCode <> 0 Then
MessageBox(0, "", 30002, 56, "Archival process failed. Unable to archive file(s) ");
rem: %This.Update_LogRecord("10", "No Success", "Archival");
&STR_LogRunStatus = "10";
&STR_LogStatusDescr = "No Success";
&STR_LogPhase = "Archival";
Else
rem: %This.Update_LogRecord("9", "Success", "Archival");
&STR_LogRunStatus = "9";
&STR_LogStatusDescr = "Success";
&STR_LogPhase = "Archival";
End-If;
/* End Archive Class */

SQLExec("SELECT A.RUNSTATUS FROM PS_RU_INTFC_LOG A WHERE


A.PROCESS_INSTANCE=:1 AND A.RU_INTERFACE_ID=:2",
RU_INTFC_AET.PROCESS_INSTANCE.Value,
RU_INTFC_AET.RU_INTERFACE_ID.Value, &STR_runStatus);
CommitWork();

If &STR_runStatus = "10" Then


Exit (1);
End-If;

/* End RUT I40405/22/2013 Jen Voorhees - Once the output file is generated, it will
be archived in the local server */

You might also like