DBA Data[Home] [Help]

PACKAGE: APPS.BSC_IM_INT_MD

Source


1 package BSC_IM_INT_MD AUTHID CURRENT_USER AS
2 /*$Header: BSCIMDUS.pls 115.0 2003/12/09 00:50:27 vsurendr ship $*/
3 
4 g_debug boolean;
5 g_stmt varchar2(20000);
6 g_status_message varchar2(4000);
7 --==========RECORD TYPES of METADATA TABLES==========================
8 type im_md_dimensions_r is record(
9 dim_name varchar2(200),
10 apps_origin varchar2(80),--BSC or DBI or EDW
11 description varchar2(800),
12 property varchar2(10000)
13 );
14 type im_md_dimensions_t is table of im_md_dimensions_r;
15 type im_md_levels_r is record(
16 level_name varchar2(200),
17 apps_origin varchar2(80),
18 dim_name varchar2(80),--fk
19 number_children number,
20 description varchar2(800),
21 property varchar2(10000)
22 );
23 type im_md_levels_t is table of im_md_levels_r;
24 type im_md_columns_r is record(
25 column_name varchar2(200),
26 column_type varchar2(80),--pk, uk etc
27 column_data_type varchar2(200),
28 apps_origin varchar2(80),
29 column_origin varchar2(200),--BASE or SUMMARY
30 aggregation_type varchar2(200),
31 description varchar2(800),
32 parent_name varchar2(200),
33 property varchar2(10000)
34 );
35 type im_md_columns_t is table of im_md_columns_r;
36 type im_md_level_relations_r is record(
37 child_level varchar2(200),
38 parent_level varchar2(200),
39 child_fk  varchar2(200),
40 parent_pk  varchar2(200),
41 hier_name varchar2(200),
42 dim_name varchar2(200),
43 apps_origin varchar2(80),
44 property varchar2(10000)
45 );
46 type im_md_level_relations_t is table of im_md_level_relations_r;
47 type im_md_hierarchies_r is record(
48 hier_name varchar2(200),
49 dim_name varchar2(200),
50 apps_origin varchar2(80),
51 description varchar2(800),
52 property varchar2(10000)
53 );
54 type im_md_hierarchies_t is table of im_md_hierarchies_r;
55 type im_md_mapping_r is record(
56 map_name varchar2(200),
57 apps_origin varchar2(80),
58 map_type varchar2(200),--BASE OR SUMMARY
59 object_name varchar2(200),--summary mv name
60 property varchar2(32000)
61 );
62 type im_md_mapping_t is table of im_md_mapping_r;
63 type im_md_mapping_details_r is record(
64 map_name varchar2(200),
65 apps_origin varchar2(80),
66 line varchar2(32000),
67 line_type varchar2(80),
68 property varchar2(32000)
69 );
70 type im_md_mapping_details_t is table of im_md_mapping_details_r;
71 type im_md_cube_r is record(
72 cube_name varchar2(200),
73 cube_id number,
74 cube_periodicity varchar2(400),
75 apps_origin varchar2(80),
76 description varchar2(800),
77 property varchar2(10000)
78 );
79 type im_md_cube_t is table of im_md_cube_r;
80 type im_md_fk_r is record(
81 fk_name varchar2(200),
82 fk_type varchar2(40),
83 owner_name varchar2(200),
84 uk_name varchar2(200),
85 uk_parent_name varchar2(200),
86 description varchar2(800),
87 apps_origin varchar2(80),
88 property varchar2(10000)
89 );
90 type im_md_fk_t is table of im_md_fk_r;
91 type im_md_uk_r is record(
92 uk_name varchar2(200),
93 uk_type varchar2(40),
94 description varchar2(800),
95 owner_name varchar2(200),
96 apps_origin varchar2(80),
97 property varchar2(10000)
98 );
99 type im_md_uk_t is table of im_md_uk_r;
100 type im_md_object_r is record(
101 object_name varchar2(200),
102 object_type varchar2(200),
103 apps_origin varchar2(80),
104 parent_name varchar2(200),--fk
105 description varchar2(800),
106 property varchar2(32000)
107 );
108 type im_md_object_t is table of im_md_object_r;
109 --===================================================================
110 
111 --============logical variable dfns==================================
112 ---init variables-------
113 im_md_dimensions_i im_md_dimensions_r;
114 im_md_levels_i im_md_levels_r;
115 im_md_columns_i im_md_columns_r;
116 im_md_level_relations_i im_md_level_relations_r;
117 im_md_hierarchies_i im_md_hierarchies_r;
118 im_md_mapping_i im_md_mapping_r;
119 im_md_mapping_details_i im_md_mapping_details_r;
120 im_md_cube_i im_md_cube_r;
121 im_md_fk_i im_md_fk_r;
122 im_md_uk_i im_md_uk_r;
123 im_md_object_i im_md_object_r;
124 ------------------------
125 im_md_dimensions im_md_dimensions_t;
126 number_im_md_dimensions number;
127 im_md_levels im_md_levels_t;
128 number_im_md_levels number;
129 im_md_columns im_md_columns_t;
130 number_im_md_columns number;
131 im_md_level_relations im_md_level_relations_t;
132 number_im_md_level_relations number;
133 im_md_hierarchies im_md_hierarchies_t;
134 number_im_md_hierarchies number;
135 im_md_mapping im_md_mapping_t;
136 number_im_md_mapping number;
137 im_md_mapping_details im_md_mapping_details_t;
138 number_im_md_mapping_details number;
139 im_md_cube im_md_cube_t;
140 number_im_md_cube number;
141 im_md_fk im_md_fk_t;
142 number_im_md_fk number;
143 im_md_uk im_md_uk_t;
144 number_im_md_uk number;
145 im_md_object im_md_object_t;
146 number_im_md_object number;
147 --===================================================================
148 
149 --functions--------------------------------------------------------
150 function get_time return varchar2 ;
151 -------------------------------------------------------------------
152 --==============================================================================
153 --**************** PUBLIC CREATE API  ******************************************
154 function create_dimension(
155 p_dim_name varchar2,
156 p_apps_origin varchar2,
157 p_description varchar2,
158 p_property varchar2
159 )return boolean;
160 function create_level(
161 p_level_name varchar2,
162 p_apps_origin varchar2,
163 p_dim_name varchar2,
164 p_number_children number,
165 p_description varchar2,
166 p_property varchar2
167 )return boolean;
168 function create_column(
169 p_column_name varchar2,
170 p_column_type varchar2,
171 p_column_data_type varchar2,
172 p_apps_origin varchar2,
173 p_column_origin varchar2,
174 p_aggregation_type varchar2,
175 p_description varchar2,
176 p_parent_name varchar2,
177 p_property varchar2
178 )return boolean;
179 function create_level_relation(
180 p_child_level varchar2,
181 p_parent_level varchar2,
182 p_child_fk  varchar2,
183 p_parent_pk  varchar2,
184 p_hier_name varchar2,
185 p_dim_name varchar2,
186 p_apps_origin varchar2,
187 p_property varchar2
188 )return boolean;
189 function create_hierarchy(
190 p_hier_name varchar2,
191 p_dim_name varchar2,
192 p_apps_origin varchar2,
193 p_description varchar2,
194 p_property varchar2
195 )return boolean;
196 function create_mapping(
197 p_map_name varchar2,
198 p_apps_origin varchar2,
199 p_map_type varchar2,
200 p_object_name varchar2,
201 p_property varchar2
202 )return boolean;
203 function create_mapping_detail(
204 p_map_name varchar2,
205 p_apps_origin varchar2,
206 p_line varchar2,
207 p_line_type varchar2,
208 p_property varchar2
209 )return boolean;
210 function create_cube(
211 p_cube_name varchar2,
212 p_cube_id number,
213 p_cube_periodicity varchar2,
214 p_apps_origin varchar2,
215 p_description varchar2,
216 p_property varchar2
217 )return boolean;
218 function create_fk(
219 p_fk_name varchar2,
220 p_fk_type varchar2,
221 p_owner_name varchar2,
222 p_uk_name varchar2,
223 p_uk_parent_name varchar2,
224 p_description varchar2,
225 p_apps_origin varchar2,
226 p_property varchar2
227 )return boolean;
228 function create_uk(
229 p_uk_name varchar2,
230 p_uk_type varchar2,
231 p_description varchar2,
232 p_owner_name varchar2,
233 p_apps_origin varchar2,
234 p_property varchar2
235 )return boolean;
236 function create_object(
237 p_object_name varchar2,
238 p_object_type varchar2,
239 p_apps_origin varchar2,
240 p_parent_name varchar2,
241 p_description varchar2,
242 p_property varchar2
243 )return boolean;
244 --==============================================================================
245 
246 --============================PUBLIC DELETE API====================================
247 procedure reset_int_metadata;
248 --==============================================================================
249 --**************** PUBLIC GET API  *********************************************
250 function get_dimension(
251 p_dim_name varchar2,
252 p_apps_origin varchar2,
253 p_description out nocopy varchar2,
254 p_property out nocopy varchar2
255 )return boolean;
256 function get_level(
257 p_dim_name varchar2,
258 p_apps_origin varchar2,
259 p_level_name out nocopy BSC_IM_UTILS.varchar_tabletype,
260 p_number_children out nocopy BSC_IM_UTILS.number_tabletype,
261 p_description out nocopy BSC_IM_UTILS.varchar_tabletype,
262 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
263 p_number_levels out nocopy number
264 )return boolean;
265 function get_dim_for_level(
266 p_level varchar2,
267 p_apps_origin varchar2,
268 p_dim_name out nocopy varchar2) return boolean;
269 function get_column(
270 p_parent_name varchar2,
271 p_apps_origin varchar2,
272 p_column_name out nocopy BSC_IM_UTILS.varchar_tabletype,
273 p_column_type out nocopy BSC_IM_UTILS.varchar_tabletype,
274 p_column_data_type out nocopy BSC_IM_UTILS.varchar_tabletype,
275 p_column_origin out nocopy BSC_IM_UTILS.varchar_tabletype,
276 p_aggregation_type out nocopy BSC_IM_UTILS.varchar_tabletype,
277 p_description out nocopy BSC_IM_UTILS.varchar_tabletype,
278 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
279 p_number_columns out nocopy number
280 )return boolean;
281 function get_level_relation(
282 p_dim_name varchar2,
283 p_apps_origin varchar2,
284 p_child_level out nocopy BSC_IM_UTILS.varchar_tabletype,
285 p_parent_level out nocopy BSC_IM_UTILS.varchar_tabletype,
286 p_child_fk  out nocopy BSC_IM_UTILS.varchar_tabletype,
287 p_parent_pk  out nocopy BSC_IM_UTILS.varchar_tabletype,
288 p_hier_name out nocopy BSC_IM_UTILS.varchar_tabletype,
289 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
290 p_number_level_relations out nocopy number
291 )return boolean;
292 function get_hierarchy(
293 p_dim_name varchar2,
294 p_apps_origin varchar2,
295 p_hier_name out nocopy BSC_IM_UTILS.varchar_tabletype,
296 p_description out nocopy BSC_im_UTILS.varchar_tabletype,
297 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
298 p_number_hierarchy out nocopy number
299 )return boolean;
300 function get_mapping(
301 p_owner_name varchar2,
302 p_apps_origin varchar2,
303 p_map_name out nocopy BSC_IM_UTILS.varchar_tabletype,
304 p_map_type out nocopy BSC_IM_UTILS.varchar_tabletype,
305 p_object_name out nocopy BSC_IM_UTILS.varchar_tabletype,
306 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
307 p_number_mapping out nocopy number
308 )return boolean;
309 function get_mapping_detail(
310 p_map_name varchar2,
311 p_apps_origin varchar2,
312 p_line out nocopy BSC_IM_UTILS.varchar_tabletype,
313 p_line_type out nocopy BSC_IM_UTILS.varchar_tabletype,
314 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
315 p_number_map_detail out nocopy number
316 )return boolean;
317 function get_cube(
318 p_cube_name varchar2,
319 p_apps_origin varchar2,
320 p_cube_id out nocopy number,
321 p_cube_periodicity out nocopy varchar2,
322 p_description out nocopy varchar2,
323 p_property out nocopy varchar2
324 )return boolean;
325 function get_fk(
326 p_owner_name varchar2,
327 p_apps_origin varchar2,
328 p_fk_name out nocopy BSC_IM_UTILS.varchar_tabletype,
329 p_fk_type out nocopy BSC_IM_UTILS.varchar_tabletype,
330 p_uk_name out nocopy BSC_IM_UTILS.varchar_tabletype,
331 p_uk_parent_name out nocopy BSC_IM_UTILS.varchar_tabletype,
332 p_description out nocopy BSC_IM_UTILS.varchar_tabletype,
333 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
334 p_number_fk out nocopy number
335 )return boolean;
336 function get_uk(
337 p_owner_name varchar2,
338 p_apps_origin varchar2,
339 p_uk_name out nocopy BSC_IM_UTILS.varchar_tabletype,
340 p_uk_type out nocopy BSC_IM_UTILS.varchar_tabletype,
341 p_description out nocopy BSC_IM_UTILS.varchar_tabletype,
342 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
343 p_number_uk out nocopy number
344 )return boolean;
345 function get_object(
346 p_parent_name varchar2,
347 p_apps_origin varchar2,
348 p_object_name out nocopy BSC_IM_UTILS.varchar_tabletype,
349 p_object_type out nocopy BSC_IM_UTILS.varchar_tabletype,
350 p_description out nocopy BSC_IM_UTILS.varchar_tabletype,
351 p_property out nocopy BSC_IM_UTILS.varchar_tabletype,
352 p_number_object out nocopy number
353 )return boolean;
354 function get_object(
355 p_parent_name varchar2,
356 p_apps_origin varchar2,
357 p_property varchar2,
358 p_object_name out nocopy BSC_IM_UTILS.varchar_tabletype,
359 p_object_type out nocopy BSC_IM_UTILS.varchar_tabletype,
360 p_description out nocopy BSC_IM_UTILS.varchar_tabletype,
361 p_number_object out nocopy number
362 )return boolean;
363 function get_object(
364 p_object_name varchar2,
365 p_apps_origin varchar2,
366 p_parent_name out nocopy varchar2,
367 p_object_type out nocopy varchar2,
368 p_description out nocopy varchar2,
369 p_property out nocopy varchar2
370 )return boolean;
371 --==============================================================================
372 --==============================================================================
373 --****************** GET COUNTS ***********************************************
374 function get_cube_count return number;
375 --==============================================================================
376 --==============================================================================
377 --****************** DEBUG DUMPS ***********************************************
378 procedure dump_dimension;
379 procedure dump_level;
380 procedure dump_column;
381 procedure dump_level_relation;
382 procedure dump_hierarchy;
383 procedure dump_mapping;
384 procedure dump_mapping_detail;
385 procedure dump_cube;
386 procedure dump_fk;
387 procedure dump_uk;
388 procedure dump_object;
389 procedure dump_all;
390 --==============================================================================
391 --GENERAL PURPOSE-------------------------------------------------------
392 procedure write_to_log_file(p_message varchar2);
393 procedure write_to_log_file_n(p_message varchar2);
394 procedure write_to_log_file_s(p_message varchar2);
395 procedure write_to_debug_n(p_message varchar2);
396 procedure write_to_debug(p_message varchar2);
397 procedure set_globals(p_debug boolean);
398 -------------------------------------------------------------------
399 
400 END BSC_IM_INT_MD;