1 package body pa_admin_ext as
2 /* $Header: PAXTRX1B.pls 120.0 2005/05/30 20:15:27 appldev noship $ */
3
4
5 FUNCTION allowed_all (X_person_id IN NUMBER) return varchar2 is
6 -- This function works with view pa_employees_admin_v
7
8 X_dummy NUMBER DEFAULT 0;
9
10 BEGIN
11 SELECT COUNT(*)
12 INTO X_dummy
13 FROM PER_ASSIGNMENTS_F A
14 , PER_ASSIGNMENT_STATUS_TYPES AST
15 WHERE SUPERVISOR_ID = pa_online_exp.GetAdminPersonId
16 AND A.PRIMARY_FLAG = 'Y'
17 AND A.ASSIGNMENT_TYPE IN ('E','C')
18 AND A.JOB_ID IS NOT NULL
19 AND A.ORGANIZATION_ID IS NOT NULL
20 AND AST.ASSIGNMENT_STATUS_TYPE_ID = A.ASSIGNMENT_STATUS_TYPE_ID
21 AND AST.PER_SYSTEM_STATUS IN ('ACTIVE_ASSIGN','ACTIVE_CWK')
22 AND A.PERSON_ID = X_person_id;
23
24 IF X_dummy > 0 THEN
25 RETURN ( 'TRUE' );
26 ELSE
27 RETURN ( 'FALSE' );
28 END IF;
29
30 EXCEPTION
31 WHEN NO_DATA_FOUND THEN
32 RETURN ( 'FALSE');
33 END allowed_all;
34
35 FUNCTION allowed_current (X_person_id IN NUMBER,X_ending_date IN DATE) return varchar2 is
36 -- This function works with view pa_cur_emp_v and the PAXTRONE form LOVs
37 -- in the New Expenditure Window employee name and employee number fields.
38
39 X_dummy NUMBER DEFAULT 0;
40 X_date DATE;
41
42 BEGIN
43
44 X_date := x_ending_date - 6;
45
46 SELECT COUNT(*)
47 INTO X_dummy
48 FROM PER_ASSIGNMENTS_F A
49 , PER_ASSIGNMENT_STATUS_TYPES AST
50 WHERE SUPERVISOR_ID = pa_online_exp.GetAdminPersonId
51 AND (trunc(effective_start_date) between x_date and X_ending_date or
52 trunc(effective_end_date) between X_date and X_ending_date or
53 trunc(sysdate) between effective_start_date and effective_end_date)
54 AND A.PRIMARY_FLAG = 'Y'
55 AND A.ASSIGNMENT_TYPE IN ('E','C')
56 AND A.JOB_ID IS NOT NULL
57 AND A.ORGANIZATION_ID IS NOT NULL
58 AND AST.ASSIGNMENT_STATUS_TYPE_ID = A.ASSIGNMENT_STATUS_TYPE_ID
59 AND AST.PER_SYSTEM_STATUS IN ('ACTIVE_ASSIGN','ACTIVE_CWK')
60 AND A.PERSON_ID = x_person_id;
61
62 IF x_dummy > 0 THEN
63 RETURN ( 'TRUE' );
64 ELSE
65 RETURN ( 'FALSE' );
66 END IF;
67
68 EXCEPTION
69 WHEN NO_DATA_FOUND THEN
70 RETURN ( 'FALSE');
71 END allowed_current;
72
73
74 end pa_admin_ext;