Hi
could someone explain me what kind of a code is this.
vamsi
could someone explain me what kind of a code is this.
Code:
CREATE OR REPLACE PACKAGE BODY APPS.FFP3613_01011951 AS
/*
Code generated by Oracle FastFormula - do not edit. Formula Name:
BG_ABSENCE_DURATION
*/
PROCEDURE DD(V IN OUT NOCOPY DATE,I IN NUMBER,D IN DATE) IS
BEGIN IF I=-2 OR I=0 THEN V:=D; END IF; END DD;
PROCEDURE DN(V IN OUT NOCOPY NUMBER,I IN NUMBER,D IN NUMBER) IS
BEGIN IF I=-2 OR I=0 THEN V:=D; END IF; END DN;
PROCEDURE DT(V IN OUT NOCOPY VARCHAR2,I IN NUMBER,D IN VARCHAR2) IS
BEGIN IF I=-2 OR I=0 THEN V:=D; END IF; END DT;
PROCEDURE FORMULA IS
L_D FF_WRAPPER_PKG.T_DATE:=FF_WRAPPER_PKG.G_D;
L_T FF_WRAPPER_PKG.T_TEXT:=FF_WRAPPER_PKG.G_T;
L_N FF_WRAPPER_PKG.T_NUMBER:=FF_WRAPPER_PKG.G_N;
L_I FF_WRAPPER_PKG.T_NUMBER:=FF_WRAPPER_PKG.G_I;
L_ERCD NUMBER;
L_ERLN NUMBER;
L_ERMT VARCHAR2(255);
BEGIN
FORMULA(L_D,L_N,L_T,L_I,L_ERLN,L_ERCD,L_ERMT);
FF_WRAPPER_PKG.G_D:=L_D;
FF_WRAPPER_PKG.G_I:=L_I;
FF_WRAPPER_PKG.G_N:=L_N;
FF_WRAPPER_PKG.G_T:=L_T;
FF_WRAPPER_PKG.G_FFERLN:=L_ERLN;
FF_WRAPPER_PKG.G_FFERCD:=L_ERCD;
FF_WRAPPER_PKG.G_FFERMT:=L_ERMT;
END FORMULA;
PROCEDURE FORMULA(D IN OUT NOCOPY FF_WRAPPER_PKG.T_DATE,
N IN OUT NOCOPY FF_WRAPPER_PKG.T_NUMBER,
T IN OUT NOCOPY FF_WRAPPER_PKG.T_TEXT,
I IN OUT NOCOPY FF_WRAPPER_PKG.T_NUMBER,
FFERLN OUT NOCOPY NUMBER,FFERCD IN OUT NOCOPY NUMBER,FFERMT OUT NOCOPY VARCHAR2) IS
BEGIN
FORMULA
(
D(1),
I(3),
D(3),
T(4),
I(6),
T(3),
I(4),
T(1),
I(1),
D(2),
I(5),
T(2),
I(2),
T(5),
I(7),
N(1),
D(4),
I(8),
FFERLN,
FFERCD,
FFERMT
);
END FORMULA;
PROCEDURE FORMULA (
D1 IN OUT NOCOPY DATE,
I3 IN OUT NOCOPY NUMBER,
D3 IN OUT NOCOPY DATE,
T4 IN OUT NOCOPY VARCHAR2,
I6 IN OUT NOCOPY NUMBER,
T3 IN OUT NOCOPY VARCHAR2,
I4 IN OUT NOCOPY NUMBER,
T1 IN OUT NOCOPY VARCHAR2,
I1 IN OUT NOCOPY NUMBER,
D2 IN OUT NOCOPY DATE,
I5 IN OUT NOCOPY NUMBER,
T2 IN OUT NOCOPY VARCHAR2,
I2 IN OUT NOCOPY NUMBER,
T5 IN OUT NOCOPY VARCHAR2,
I7 IN OUT NOCOPY NUMBER,
N1 IN OUT NOCOPY NUMBER,
D4 IN OUT NOCOPY DATE,
I8 IN OUT NOCOPY NUMBER,
FFERLN OUT NOCOPY NUMBER,
FFERCD IN OUT NOCOPY NUMBER,
FFERMT OUT NOCOPY VARCHAR2) IS
/* BG_ABSENCE_DURATION*/
LEMT VARCHAR2(255);
L_ERCD NUMBER(15,0);
L_ PLS_INTEGER;
R_ VARCHAR2(255);
BEGIN
DECLARE
EX1 EXCEPTION;
NULL_FOUND EXCEPTION;
V0 NUMBER;
V1 NUMBER;
V2 NUMBER;
V3 NUMBER;
V4 NUMBER;
V5 NUMBER;
V6 VARCHAR2(255);
V7 NUMBER;
V8 NUMBER;
V9 NUMBER;
V10 NUMBER;
V11 VARCHAR2(255);
V12 NUMBER;
V13 NUMBER;
V14 NUMBER;
V15 NUMBER;
V16 VARCHAR2(255);
V17 NUMBER;
V18 NUMBER;
V19 NUMBER;
V20 VARCHAR2(255);
V21 VARCHAR2(255);
V22 DATE;
V23 DATE;
V24 VARCHAR2(255);
tv0 VARCHAR2(255);
CURSOR C1 IS
SELECT
hr_general.decode_lookup('SEX',PEOPLE.sex),
'FF ROUTE:SEH_PER_PERSON_DETAILS_PERF'
FROM
per_all_people_f PEOPLE
, per_person_types PTYPE
, per_phones PHONE
, fnd_sessions SES
, hr_lookups a
, hr_lookups b
, hr_lookups c
, hr_lookups d
, per_all_assignments_f ASSIGN
where D3 BETWEEN ASSIGN.effective_start_date
AND ASSIGN.effective_end_date
and ASSIGN.assignment_id = N1
and PEOPLE.person_id = ASSIGN.person_id
and D3 BETWEEN PEOPLE.effective_start_date
AND PEOPLE.effective_end_date
and PTYPE.person_type_id = PEOPLE.person_type_id
and PHONE.parent_id (+) = PEOPLE.person_id
AND PHONE.parent_table (+)= 'PER_PEOPLE_F'
and PHONE.phone_type (+)= 'W1'
AND D3 BETWEEN NVL(PHONE.date_from(+),D3)
AND NVL(PHONE.date_to(+),D3)
and a.lookup_type = 'YES_NO'
and a.lookup_code = nvl(PEOPLE.current_applicant_flag,'N')
and a.application_id = 800
and b.lookup_type = 'YES_NO'
and b.lookup_code = nvl(PEOPLE.current_npw_flag,'N')
and b.application_id = 800
and c.lookup_type = 'YES_NO'
and c.lookup_code = nvl(PEOPLE.current_employee_flag,'N')
and c.application_id = 800
and d.lookup_type = 'REGISTERED_DISABLED'
and d.lookup_code = nvl(PEOPLE.registered_disabled_flag,'N')
and d.application_id = 800
and SES.session_id = USERENV('SESSIONID');
V25 DATE;
V26 DATE;
V27 DATE;
V28 DATE;
V29 NUMBER;
CURSOR C2 IS
SELECT
PGROUP.SEGMENT1,
'FF ROUTE:KEY_FLEXFIELD_ROUTE'
FROM
per_all_assignments_f ASSIGN,
hr_all_positions_f POS,
hr_all_positions_f_tl POSTL,
per_position_definitions POSDEF,
per_grades GRA,
per_grades_tl GRATL,
per_grade_definitions GRADEF,
per_jobs JOB,
per_jobs_tl JOBTL,
per_job_definitions JOBDEF,
pay_people_groups PGROUP
WHERE D3 BETWEEN ASSIGN.effective_start_date
AND ASSIGN.effective_end_date
AND D3 BETWEEN POS.effective_start_date(+)
AND POS.effective_end_date(+)
AND ASSIGN.assignment_id = N1
AND POS.position_id (+)= ASSIGN.position_id
AND POSTL.position_id (+)= ASSIGN.position_id
AND POSTL.language (+)= userenv('LANG')
AND POSDEF.position_definition_id (+)= POS.position_definition_id
AND GRA.grade_id (+)= ASSIGN.grade_id
AND GRATL.grade_id (+)= ASSIGN.grade_id
AND GRATL.language (+)= userenv('LANG')
AND GRADEF.grade_definition_id (+)= GRA.grade_definition_id
AND JOB.job_id (+)= ASSIGN.job_id
AND JOBTL.job_id (+)= ASSIGN.job_id
AND JOBTL.language (+)= userenv('LANG')
AND JOBDEF.job_definition_id (+)= JOB.job_definition_id
AND PGROUP.people_group_id (+)= ASSIGN.people_group_id;
dv0 DATE;
CURSOR C0 IS
SELECT
SERVICE.date_start,
'FF ROUTE:SEH_EMP_PERSON_SERVICE_1'
FROM
per_all_assignments_f ASSIGN
, per_periods_of_service SERVICE
where D3 BETWEEN ASSIGN.effective_start_date
AND ASSIGN.effective_end_date
and ASSIGN.assignment_id = N1
and SERVICE.period_of_Service_id (+)= ASSIGN.period_of_service_id;
V30 DATE;
V31 DATE;
BEGIN
L_ERCD:=0;
LEMT:='OB';
L_:=50;
V0:=5;
L_:=51;
V1:=3;
L_:=52;
V2:=15;
L_:=53;
V3:=5;
L_:=82;
LEMT:='TO_DATE';
LEMT:='SUBSTR';
LEMT:='TO_CHAR';
IF I3=0 THEN
D1:=TO_DATE('0001/01/01 00:00:00','FXYYYY/MM/DD HH24:MI:SS');
I3:=-2;
END IF;
V22:=fffunc.td(('01-JAN-' || SUBSTR(fffunc.dc(D1),1,4)));
L_:=83;
LEMT:='TO_DATE';
LEMT:='SUBSTR';
LEMT:='TO_CHAR';
V23:=fffunc.td(('31-DEC-' || SUBSTR(fffunc.dc(D1),1,4)));
L_:=85;
LEMT:='CBTT_GET_ABSENCE_TYPE';
IF I4=0 THEN
T3:=T3;
LEMT:='ABSENCE_ATTENDANCE_TYPE_ID';
RAISE EX1;
END IF;
V24:=CBTT_UDFS_PKG.CBTT_GET_ABSENCE_TYPE(T3);
L_:=103;
IF I5=0 THEN
D2:=TO_DATE('4712/12/31 00:00:00','FXYYYY/MM/DD HH24:MI:SS');
I5:=-2;
END IF;
IF (((I3=-2 )
OR (I5=-2 ))) THEN
L_:=89;
T2:='0';
ELSE
L_:=93;
LEMT:='CBTT_GET_GRADE';
V11:=CBTT_UDFS_PKG.CBTT_GET_GRADE(N1,D1);
L_:=102;
IF ((V11 = 'Security Staff')) THEN
L_:=97;
LEMT:='TO_CHAR';
LEMT:='DAYS_BETWEEN';
vamsi
Comment