DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_WORK_STRUCTURE_OVERRIDE_SS

Source


1 PACKAGE BODY PER_WORK_STRUCTURE_OVERRIDE_SS AS
2 /* $Header: perwscor.pkb 115.0 2004/03/03 08:18:39 hpandya noship $ */
3 --
4 -- |--------------------------------------------------------------------------|
5 -- |--< VARIABLES >-----------------------------------------------------------|
6 -- |--------------------------------------------------------------------------|
7 --
8 --
9 -- |--------------------------------------------------------------------------|
10 -- |--< isOverrideEnabled >---------------------------------------------------|
11 -- |--------------------------------------------------------------------------|
12 --
13 -- Description:
14 --
15 FUNCTION isOverrideEnabled(
16             p_object    IN varchar2
17 	 )
18   return boolean
19 IS
20 BEGIN
21    IF p_object = 'JOB' THEN
22         RETURN g_job_override_flg;
23     ELSIF p_object = 'POSITION' THEN
24         RETURN g_position_override_flg;
25     ELSIF p_object = 'GRADE' THEN
26         RETURN g_grade_override_flg;
27     ELSIF p_object = 'ORGANIZATION' THEN
28         RETURN g_organization_override_flg;
29     ELSE
30         RETURN FALSE;
31     END IF;
32 
33 EXCEPTION WHEN OTHERS THEN
34         RETURN FALSE;
35 END isOverrideEnabled;
36 --
37 -- |--------------------------------------------------------------------------|
38 -- |--< getObjectName >-------------------------------------------------------|
39 -- |--------------------------------------------------------------------------|
40 --
41 -- Description:
42 --
43 --
44 FUNCTION getObjectName(
45             p_object    IN varchar2,
46             p_object_id IN number,
47             p_bg_id     IN number,
48             p_value     IN varchar2
49 	 )
50   return varchar2
51 IS
52 BEGIN
53    IF p_object = 'JOB' THEN
54         RETURN getJobName( p_job_id => p_object_id,
55 	                   p_bg_id  => p_bg_id,
56 			   p_value  => p_value
57 	                 );
58     ELSIF p_object = 'POSITION' THEN
59         RETURN getPositionName( p_pos_id => p_object_id,
60   	                        p_bg_id  => p_bg_id,
61 			        p_value  => p_value
62 	                      );
63     ELSIF p_object = 'GRADE' THEN
64         RETURN getGradeName( p_grade_id => p_object_id,
65 	                     p_bg_id  => p_bg_id,
66 			     p_value  => p_value
67 	                   );
68     ELSIF p_object = 'ORGANIZATION' THEN
69         RETURN getOrganizationName( p_org_id => p_object_id,
70 	                     p_bg_id  => p_bg_id,
71 			     p_value  => p_value
72 	                   );
73     ELSE
74         RETURN p_value;
75     END IF;
76 EXCEPTION WHEN OTHERS THEN
77    return FND_MESSAGE.GET_STRING('PER', 'HR_ERR_RESOLVING_NAME_SS');
78 END getObjectName;
79 
80 --
81 -- |--------------------------------------------------------------------------|
82 -- |--< getJobName >----------------------------------------------------------|
83 -- |--------------------------------------------------------------------------|
84 --
85 -- Description:
86 --
87 --
88 FUNCTION getJobName(
89             p_job_id    IN number,
90             p_bg_id     IN number,
91             p_value     IN varchar2
92 	 )
93   return varchar2
94 IS
95     l_job_name per_jobs_tl.name%TYPE;
96     jobStr varchar2(500);
97     segList varchar2(400);
98 
99     TYPE cur_typ IS REF CURSOR;
100     job_cursor cur_typ;
101 
102     CURSOR c_organizations IS
103       SELECT nvl(upper(replace(oi.org_information1,'|','||''.''||')),'j.name') slist
104       FROM hr_all_organization_units o, hr_organization_information oi
105       WHERE o.organization_id = p_bg_id
106       AND   o.organization_id = oi.organization_id(+)
107       AND oi.org_information_context(+) = 'SSHR Information';
108 BEGIN
109    IF p_bg_id IS NULL OR p_job_id IS NULL THEN
110         RETURN p_value;
111     END IF;
112 
113     -- Get Segments based on Org ID
114     open c_organizations;
115     FETCH c_organizations INTO segList;
116     CLOSE c_organizations;
117 
118     jobStr := ' SELECT ' || segList || ' FROM PER_JOBS j, PER_JOB_DEFINITIONS pjd ' ||
119               ' WHERE j.JOB_ID = :1 AND j.job_definition_id = pjd.job_definition_id' ;
120 
121     EXECUTE IMMEDIATE jobStr INTO l_job_name USING p_job_id;
122 
123     RETURN l_job_name;
124 END getJobName;
125 
126 
127 --
128 -- |--------------------------------------------------------------------------|
129 -- |--< getPositionName >-----------------------------------------------------|
130 -- |--------------------------------------------------------------------------|
131 --
132 -- Description:
133 --
134 --
135 FUNCTION getPositionName(
136             p_pos_id    IN number,
137             p_bg_id     IN number,
138             p_value     IN varchar2
139 	 )
140   return varchar2
141 IS
142 BEGIN
143    return p_value;
144 END getPositionName;
145 
146 --
147 -- |--------------------------------------------------------------------------|
148 -- |--< getGradeName >--------------------------------------------------------|
149 -- |--------------------------------------------------------------------------|
150 --
151 -- Description:
152 --
153 --
154 FUNCTION getGradeName(
155             p_grade_id  IN number,
156             p_bg_id     IN number,
157             p_value     IN varchar2
158 	 )
159   return varchar2
160 IS
161 BEGIN
162    return p_value;
163 END getGradeName;
164 
165 --
166 -- |--------------------------------------------------------------------------|
167 -- |--< getOrganizationName >-------------------------------------------------|
168 -- |--------------------------------------------------------------------------|
169 --
170 -- Description:
171 --
172 --
173 FUNCTION getOrganizationName(
174             p_org_id    IN number,
175             p_bg_id     IN number,
176             p_value     IN varchar2
177 	 )
178   return varchar2
179 IS
180 BEGIN
181    return p_value;
182 END getOrganizationName;
183 
184 END PER_WORK_STRUCTURE_OVERRIDE_SS;