1 PACKAGE BODY hri_edw_dim_sizing AS
2 /* $Header: hriezdmn.pkb 120.0 2005/05/29 07:20:41 appldev noship $ */
3
4 /******************************************************************************/
5 /* Returns average size of dimension pk */
6 /******************************************************************************/
7 FUNCTION get_size_agb_pk
8 RETURN NUMBER IS
9
10 l_pk_length NUMBER;
11
12 CURSOR pk_cur IS
13 SELECT avg(nvl(vsize(age_band_pk),0))
14 FROM edw_hr_age_age_band_lcv;
15
16 BEGIN
17
18 OPEN pk_cur;
19 FETCH pk_cur INTO l_pk_length;
20 CLOSE pk_cur;
21
22 RETURN l_pk_length;
23
24 END get_size_agb_pk;
25
26 /******************************************************************************/
27 /* Returns average size of dimension pk */
28 /******************************************************************************/
29 FUNCTION get_size_acg_pk
30 RETURN NUMBER IS
31
32 l_pk_length NUMBER;
33
34 CURSOR pk_cur IS
35 SELECT avg(nvl(vsize(asg_change_pk),0))
36 FROM edw_hr_asch_asg_chng_lcv;
37
38 BEGIN
39
40 OPEN pk_cur;
41 FETCH pk_cur INTO l_pk_length;
42 CLOSE pk_cur;
43
44 RETURN l_pk_length;
45
46 END get_size_acg_pk;
47
48 /******************************************************************************/
49 /* Returns average size of dimension pk */
50 /******************************************************************************/
51 FUNCTION get_size_asg_pk
52 RETURN NUMBER IS
53
54 l_pk_length NUMBER;
55
56 CURSOR pk_cur IS
57 SELECT avg(nvl(vsize(assignment_pk),0))
58 FROM edw_hr_asgn_assgnmnt_lcv;
59
60 BEGIN
61
62 OPEN pk_cur;
63 FETCH pk_cur INTO l_pk_length;
64 CLOSE pk_cur;
65
66 RETURN l_pk_length;
67
68 END get_size_asg_pk;
69
70 /******************************************************************************/
71 /* Returns average size of dimension pk */
72 /******************************************************************************/
73 FUNCTION get_size_grd_pk
74 RETURN NUMBER IS
75
76 l_pk_length NUMBER;
77
78 CURSOR pk_cur IS
79 SELECT avg(nvl(vsize(grade_pk),0))
80 FROM edw_hr_grd_grades_lcv;
81
82 BEGIN
83
84 OPEN pk_cur;
85 FETCH pk_cur INTO l_pk_length;
86 CLOSE pk_cur;
87
88 RETURN l_pk_length;
89
90 END get_size_grd_pk;
91
92 /******************************************************************************/
93 /* Returns average size of dimension pk */
94 /******************************************************************************/
95 FUNCTION get_size_job_pk
96 RETURN NUMBER IS
97
98 l_pk_length NUMBER;
99
100 CURSOR pk_cur IS
101 SELECT avg(nvl(vsize(job_pk),0))
102 FROM edw_hr_job_jobs_lcv;
103
104 BEGIN
105
106 OPEN pk_cur;
107 FETCH pk_cur INTO l_pk_length;
108 CLOSE pk_cur;
109
110 RETURN l_pk_length;
111
112 END get_size_job_pk;
113
114 /******************************************************************************/
115 /* Returns average size of dimension pk */
116 /******************************************************************************/
117 FUNCTION get_size_lwb_pk
118 RETURN NUMBER IS
119
120 l_pk_length NUMBER;
121
122 CURSOR pk_cur IS
123 SELECT avg(nvl(vsize(service_band_pk),0))
124 FROM edw_hr_srvc_srv_band_lcv;
125
126 BEGIN
127
128 OPEN pk_cur;
129 FETCH pk_cur INTO l_pk_length;
130 CLOSE pk_cur;
131
132 RETURN l_pk_length;
133
134 END get_size_lwb_pk;
135
136 /******************************************************************************/
137 /* Returns average size of dimension pk */
138 /******************************************************************************/
139 FUNCTION get_size_mvt_pk
140 RETURN NUMBER IS
141
142 l_pk_length NUMBER;
143
144 CURSOR pk_cur IS
145 SELECT avg(nvl(vsize(movement_pk),0))
146 FROM edw_hr_mvmt_mvmnts_lcv;
147
148 BEGIN
149
150 OPEN pk_cur;
151 FETCH pk_cur INTO l_pk_length;
152 CLOSE pk_cur;
153
154 RETURN l_pk_length;
155
156 END get_size_mvt_pk;
157
158 /******************************************************************************/
159 /* Returns average size of dimension pk */
160 /******************************************************************************/
161 FUNCTION get_size_pty_pk
162 RETURN NUMBER IS
163
164 l_pk_length NUMBER;
165
166 CURSOR pk_cur IS
167 SELECT avg(nvl(vsize(person_type_pk),0))
168 FROM edw_hr_ptyp_prsn_typ_lcv;
169
170 BEGIN
171
172 OPEN pk_cur;
173 FETCH pk_cur INTO l_pk_length;
174 CLOSE pk_cur;
175
176 RETURN l_pk_length;
177
178 END get_size_pty_pk;
179
180 /******************************************************************************/
181 /* Returns average size of dimension pk */
182 /******************************************************************************/
183 FUNCTION get_size_pos_pk
184 RETURN NUMBER IS
185
186 l_pk_length NUMBER;
187
188 CURSOR pk_cur IS
189 SELECT avg(nvl(vsize(position_pk),0))
190 FROM edw_hr_pstn_position_lcv;
191
192 BEGIN
193
194 OPEN pk_cur;
195 FETCH pk_cur INTO l_pk_length;
196 CLOSE pk_cur;
197
198 RETURN l_pk_length;
199
200 END get_size_pos_pk;
201
202 /******************************************************************************/
203 /* Returns average size of dimension pk */
204 /******************************************************************************/
205 FUNCTION get_size_psn_pk
206 RETURN NUMBER IS
207
208 l_pk_length NUMBER;
209
210 CURSOR pk_cur IS
211 SELECT avg(nvl(vsize(assignment_pk),0))
212 FROM edw_hr_perm_assign_lcv;
213
214 BEGIN
215
216 OPEN pk_cur;
217 FETCH pk_cur INTO l_pk_length;
218 CLOSE pk_cur;
219
220 RETURN l_pk_length;
221
222 END get_size_psn_pk;
223
224 /******************************************************************************/
225 /* Returns average size of dimension pk */
226 /******************************************************************************/
227 FUNCTION get_size_org_pk
228 RETURN NUMBER IS
229
230 l_pk_length NUMBER;
231
232 CURSOR pk_cur IS
233 SELECT avg(nvl(vsize(organization_pk),0))
234 FROM edw_orga_org_lcv;
235
236 BEGIN
237
238 OPEN pk_cur;
239 FETCH pk_cur INTO l_pk_length;
240 CLOSE pk_cur;
241
242 RETURN l_pk_length;
243
244 END get_size_org_pk;
245
246 /******************************************************************************/
247 /* Returns average size of dimension pk */
248 /******************************************************************************/
249 FUNCTION get_size_rsn_pk
250 RETURN NUMBER IS
251
252 l_pk_length NUMBER;
253
254 CURSOR pk_cur IS
255 SELECT avg(nvl(vsize(reason_pk),0))
256 FROM edw_hr_rson_reasons_lcv;
257
258 BEGIN
259
260 OPEN pk_cur;
261 FETCH pk_cur INTO l_pk_length;
262 CLOSE pk_cur;
263
264 RETURN l_pk_length;
265
266 END get_size_rsn_pk;
267
268 /******************************************************************************/
269 /* Returns average size of dimension pk */
270 /******************************************************************************/
271 FUNCTION get_size_vac_pk
272 RETURN NUMBER IS
273
274 l_pk_length NUMBER;
275
276 CURSOR pk_cur IS
277 SELECT avg(nvl(vsize(vacancy_pk),0))
278 FROM edw_hr_rqvc_vacancy_lcv;
279
280 BEGIN
281
282 OPEN pk_cur;
283 FETCH pk_cur INTO l_pk_length;
284 CLOSE pk_cur;
285
286 RETURN l_pk_length;
287
288 END get_size_vac_pk;
289
290 /******************************************************************************/
291 /* Returns average size of dimension pk */
292 /******************************************************************************/
293 FUNCTION get_size_rec_pk
294 RETURN NUMBER IS
295
296 l_pk_length NUMBER;
297
298 CURSOR pk_cur IS
299 SELECT avg(nvl(vsize(rec_activity_pk),0))
300 FROM edw_hr_ract_activity_lcv;
301
302 BEGIN
303
304 OPEN pk_cur;
305 FETCH pk_cur INTO l_pk_length;
306 CLOSE pk_cur;
307
308 RETURN l_pk_length;
309
310 END get_size_rec_pk;
311
312 /******************************************************************************/
313 /* Returns average size of dimension pk */
314 /******************************************************************************/
315 FUNCTION get_size_geog_pk
316 RETURN NUMBER IS
317
318 l_pk_length NUMBER;
319
320 CURSOR pk_cur IS
321 SELECT avg(nvl(vsize(location_pk),0))
322 FROM edw_geog_location_lcv;
323
324 BEGIN
325
326 OPEN pk_cur;
327 FETCH pk_cur INTO l_pk_length;
328 CLOSE pk_cur;
329
330 RETURN l_pk_length;
331
332 END get_size_geog_pk;
333
334 /******************************************************************************/
335 /* Returns average size of dimension pk */
336 /******************************************************************************/
337 FUNCTION get_size_time_pk
338 RETURN NUMBER IS
339
340 l_pk_length NUMBER := 7;
341
342 BEGIN
343
344 /* Time pk is date plus constant */
345 RETURN l_pk_length;
346
347 END get_size_time_pk;
348
349 END hri_edw_dim_sizing;