DBA Data[Home] [Help]

PACKAGE: APPS.BSC_BIS_DIM_OBJ_PUB

Source


1 PACKAGE BSC_BIS_DIM_OBJ_PUB AS
2 /* $Header: BSCDPMDS.pls 120.8 2006/02/10 00:27:23 akoduri noship $ */
3 /*
4 REM +=======================================================================+
5 REM |    Copyright (c) 2002 Oracle Corporation, Redwood Shores, CA, USA     |
6 REM |                         All rights reserved.                          |
7 REM +=======================================================================+
8 REM | FILENAME                                                              |
9 REM |     BSCDPMDS.pls                                                      |
10 REM |                                                                       |
11 REM | DESCRIPTION                                                           |
12 REM |     Module: Wrapper for Dimensions, part of PMD APIs                  |
13 REM |                                                                       |
14 REM | NOTES                                                                 |
15 REM | 14-FEB-2003 PAJOHRI  Created.                                         |
16 REM | 20-OCT-2003 PAJOHRI  Bug#3179995                                      |
17 REM | 04-NOV-2003 PAJOHRI  Bug #3152258                                     |
18 REM | 04-NOV-2003 PAJOHRI  Bug #3220613                                     |
19 REM | 04-NOV-2003 PAJOHRI  Bug #3262631                                     |
20 REM | 08-DEC-2003 KYADAMAK Bug #3225685                                     |
21 REM | 12-APR-2004 PAJOHRI  Bug #3426566, created the following new functions|
22 REM |                      Get_Bis_Dim_Obj_ID()                             |
23 REM |                      Get_Bsc_Dim_Obj_ID()                             |
24 REM | 09-AUG-2004 sawu     Added constant c_BSC_DIM_OBJ                     |
25 REM | 11-AUG-2004 sawu     Added create_dim_obj() for bug#3819855 with      |
26 REM |                      p_is_default_short_name                          |
27 REM | 08-Feb-04   skchoudh  Enh#3873195 drill_to_form_function column       |
28 REM |                  is added                                             |
29 REM | 15-FEB-05   ppandey   Enh #4016669, support ID, Value for Autogen DO  |
30 REM | 11-Mar-05   ankgoel   Enh#2690720 - AG Report enh                     |
31 REM | 29-Mar-05   ankgoel   Bug#4257022 - Increased the length of constants |
32 REM | 05-APR-05   adrao     Bug#4284875 - Modified constant C_WHERE_CLAUSE  |
33 REM | 05-APR-05   ppandey   Bug#4305437 - C_WHERE_CLAUSE to use TO_CHAR(ID) |
34 REM |  18-Jul-2005 ppandey  Enh #4417483, Restrict Internal/Calendar Dims   |
35 REM | 27-Sep-05   ankgoel   Bug#4625598,4626579 Uptake common API to get dim|
36 REM |                       level values                                    |
37 REM | 06-Jan-06   akoduri   Enh#4739401 - Hide Dimensions/Dim Objects       |
38 REM | 31-JAN-06   adrao     Added API Get_Unique_Level_Pk_Col for           |
39 REM |                       Bug#4758995                                     |
40 REM | 10-FEB-06   akoduri   Bug#4997042 Cascade 'All' property from dim     |
41 REM |                       designer to dim groups of Reports               |
42 REM +=======================================================================+
43 */
44 DIM_OBJ_CODE_MAX_SIZE       CONSTANT NUMBER := 999;
45 DIM_OBJ_CODE_MIN_SIZE       CONSTANT NUMBER := 5;
46 DIM_OBJ_CODE_DEFAULT_SIZE   CONSTANT NUMBER := 5;
47 
48 DIM_OBJ_NAME_MAX_SIZE       CONSTANT NUMBER := 999;
49 DIM_OBJ_NAME_MIN_SIZE       CONSTANT NUMBER := 5;
50 DIM_OBJ_NAME_DEFAULT_SIZE   CONSTANT NUMBER := 15;
51 
52 c_BSC_DIM_OBJ               CONSTANT VARCHAR(12) := 'BSC_DIM_OBJ_';
53 
54 -- Added for ZERO Code issue in Dim Obj Views Bug#3739872
55 DIM_OBJ_VIEW_ZCODE          CONSTANT NUMBER := 0;
56 DIM_OBJ_VIEW_ZCODE_ALIAS    CONSTANT NUMBER := -99999999;
57 
58 C_SELECT                    CONSTANT VARCHAR2(8) := ' SELECT ';
59 C_WHERE                     CONSTANT VARCHAR2(7) := ' WHERE ';
60 C_FROM                      CONSTANT VARCHAR2(6) := ' FROM ';
61 
62 C_SELECT_CLAUSE             CONSTANT VARCHAR2(30) := ' ID, VALUE ';
63 C_SELECT_PARENT_CLAUSE      CONSTANT VARCHAR2(30) := ' ID, VALUE, PARENT_ID ';
64 
65 C_WHERE_CLAUSE              CONSTANT VARCHAR2(40) := ' TO_CHAR(ID) = ''0'' AND ROWNUM < 2 ';
66 
67 C_ORA_ERR_TAB_NOT_EXIST     CONSTANT NUMBER := -942;
68 C_ORA_ERR_COL_NOT_EXIST     CONSTANT NUMBER := -904;
69 C_ORA_ERR_COL_NOT_EXIST1    CONSTANT NUMBER := -6553;
70 C_ORA_ERR_NO_DATA_FOUND     CONSTANT NUMBER := 100;
71 
72 C_SUCCESS_NO_ERROR          CONSTANT NUMBER := 0;
73 C_TABLE_NOT_EXIST           CONSTANT NUMBER := 1;
74 C_COLUMN_NOT_EXIST          CONSTANT NUMBER := 2;
75 C_UNKNOWN_ERROR             CONSTANT NUMBER := -1;
76 
77 -- record type for BSC_SYS_DIM_LEVEL_COLS table
78 TYPE Proj_Dim_Cols_Rec_Type IS Record
79 (       Dim_level_id        BSC_SYS_DIM_LEVEL_COLS.dim_level_id%TYPE
80     ,   Column_Name         BSC_SYS_DIM_LEVEL_COLS.column_name%TYPE
81     ,   Column_Type         BSC_SYS_DIM_LEVEL_COLS.column_type%TYPE
82 );
83 
84 TYPE Proj_Dim_Cols_Tbl_Type IS TABLE OF Proj_Dim_Cols_Rec_Type INDEX BY BINARY_INTEGER;
85 
86 TYPE Acct_Type_Rec_Type IS Record
87 (       Code        NUMBER
88     ,   Name        VARCHAR2(15)
89 );
90 
91 TYPE Acct_Type_Tbl_Type IS TABLE OF Acct_Type_Rec_Type INDEX BY BINARY_INTEGER;
92 
93 Type Acct_Rec_Type IS Record
94 (       Code        NUMBER
95     ,   Name        VARCHAR2(15)
96     ,   Acct_Type   NUMBER(5)
97     ,   Position    NUMBER(2)
98 );
99 
100 TYPE Acct_Tbl_Type IS TABLE OF Acct_Rec_Type INDEX BY BINARY_INTEGER;
101 
102 /*********************************************************************************
103                             CREATE DIMENSION-LEVEL
104 *********************************************************************************/
105 PROCEDURE Create_Dim_Object
106 (       p_commit                    IN          VARCHAR2   := FND_API.G_TRUE
107     ,   p_dim_obj_short_name        IN          VARCHAR2
108     ,   p_display_name              IN          VARCHAR2
109     ,   p_application_id            IN          NUMBER
110     ,   p_description               IN          VARCHAR2
111     ,   p_data_source               IN          VARCHAR2
112     ,   p_source_table              IN          VARCHAR2
113     ,   p_where_clause              IN          VARCHAR2   := NULL
114     ,   p_comparison_label_code     IN          VARCHAR2
115     ,   p_table_column              IN          VARCHAR2
116     ,   p_source_type               IN          VARCHAR2
117     ,   p_maximum_code_size         IN          NUMBER
118     ,   p_maximum_name_size         IN          NUMBER
119     ,   p_all_item_text             IN          VARCHAR2
120     ,   p_comparison_item_text      IN          VARCHAR2
121     ,   p_prototype_default_value   IN          VARCHAR2
122     ,   p_dimension_values_order    IN          NUMBER
123     ,   p_comparison_order          IN          NUMBER
124     ,   p_dim_short_names           IN          VARCHAR2
125     ,   p_Master_Level              IN          VARCHAR2   :=  NULL
126     ,   p_Long_Lov                  IN          VARCHAR2   :=  FND_API.G_FALSE
127     ,   p_Search_Function           IN          VARCHAR2   :=  NULL
128     ,   p_Dim_Obj_Enabled           IN          VARCHAR2   :=  FND_API.G_FALSE
129     ,   p_View_Object_Name          IN          VARCHAR2   :=  NULL
130     ,   p_Default_Values_Api        IN          VARCHAR2   :=  NULL
131     ,   p_All_Enabled               IN          NUMBER     :=  NULL
132     ,   p_Drill_To_Form_Function    IN          VARCHAR2   :=  NULL
133     ,   x_return_status             OUT NOCOPY  VARCHAR2
134     ,   x_msg_count                 OUT NOCOPY  NUMBER
135     ,   x_msg_data                  OUT NOCOPY  VARCHAR2
136 );
137 
138 PROCEDURE Create_Dim_Object
139 (       p_commit                    IN          VARCHAR2   := FND_API.G_TRUE
140     ,   p_dim_obj_short_name        IN          VARCHAR2
141     ,   p_display_name              IN          VARCHAR2
142     ,   p_application_id            IN          NUMBER
143     ,   p_description               IN          VARCHAR2
144     ,   p_data_source               IN          VARCHAR2
145     ,   p_source_table              IN          VARCHAR2
146     ,   p_where_clause              IN          VARCHAR2   := NULL
147     ,   p_comparison_label_code     IN          VARCHAR2
148     ,   p_table_column              IN          VARCHAR2
149     ,   p_source_type               IN          VARCHAR2
150     ,   p_maximum_code_size         IN          NUMBER
151     ,   p_maximum_name_size         IN          NUMBER
152     ,   p_all_item_text             IN          VARCHAR2
153     ,   p_comparison_item_text      IN          VARCHAR2
154     ,   p_prototype_default_value   IN          VARCHAR2
155     ,   p_dimension_values_order    IN          NUMBER
156     ,   p_comparison_order          IN          NUMBER
157     ,   p_dim_short_names           IN          VARCHAR2
158     ,   p_Master_Level              IN          VARCHAR2   :=  NULL
159     ,   p_Long_Lov                  IN          VARCHAR2   :=  FND_API.G_FALSE
160     ,   p_Search_Function           IN          VARCHAR2   :=  NULL
161     ,   p_Dim_Obj_Enabled           IN          VARCHAR2   :=  FND_API.G_FALSE
162     ,   p_View_Object_Name          IN          VARCHAR2   :=  NULL
163     ,   p_Default_Values_Api        IN          VARCHAR2   :=  NULL
164     ,   p_All_Enabled               IN          NUMBER     :=  NULL
165     ,   p_is_default_short_name     IN          VARCHAR2
166     ,   p_Drill_To_Form_Function    IN          VARCHAR2   :=  NULL
167     ,   p_Restrict_Dim_Validate     IN          VARCHAR2   := NULL
168     ,   x_return_status             OUT NOCOPY  VARCHAR2
169     ,   x_msg_count                 OUT NOCOPY  NUMBER
170     ,   x_msg_data                  OUT NOCOPY  VARCHAR2
171 );
172 
173 PROCEDURE Create_Dim_Object
174 (       p_commit                    IN          VARCHAR2   := FND_API.G_FALSE
175     ,   p_dim_obj_short_name        IN          VARCHAR2
176     ,   p_display_name              IN          VARCHAR2
177     ,   p_application_id            IN          NUMBER
178     ,   p_description               IN          VARCHAR2
179     ,   p_data_source               IN          VARCHAR2
180     ,   p_source_table              IN          VARCHAR2
181     ,   p_where_clause              IN          VARCHAR2   := NULL
182     ,   p_comparison_label_code     IN          VARCHAR2
183     ,   p_table_column              IN          VARCHAR2
184     ,   p_source_type               IN          VARCHAR2
185     ,   p_maximum_code_size         IN          NUMBER
186     ,   p_maximum_name_size         IN          NUMBER
187     ,   p_all_item_text             IN          VARCHAR2
188     ,   p_comparison_item_text      IN          VARCHAR2
189     ,   p_prototype_default_value   IN          VARCHAR2
190     ,   p_dimension_values_order    IN          NUMBER
191     ,   p_comparison_order          IN          NUMBER
192     ,   p_dim_short_names           IN          VARCHAR2
193     ,   p_Master_Level              IN          VARCHAR2   :=  NULL
194     ,   p_Long_Lov                  IN          VARCHAR2   :=  FND_API.G_FALSE
195     ,   p_Search_Function           IN          VARCHAR2   :=  NULL
196     ,   p_Dim_Obj_Enabled           IN          VARCHAR2   :=  FND_API.G_FALSE
197     ,   p_View_Object_Name          IN          VARCHAR2   :=  NULL
198     ,   p_Default_Values_Api        IN          VARCHAR2   :=  NULL
199     ,   p_All_Enabled               IN          NUMBER     :=  NULL
200     ,   p_is_default_short_name     IN          VARCHAR2
201     ,   p_Drill_To_Form_Function    IN          VARCHAR2   :=  NULL
202     ,   p_Prototype_Values          IN          BIS_STRING_ARRAY
203     ,   p_Force_Dimension_Create    IN          VARCHAR2
204     ,   p_Restrict_Dim_Validate     IN          VARCHAR2   := NULL
205     ,   x_return_status             OUT NOCOPY  VARCHAR2
206     ,   x_msg_count                 OUT NOCOPY  NUMBER
207     ,   x_msg_data                  OUT NOCOPY  VARCHAR2
208 );
209 
210 /*********************************************************************************
211                           UPDATE DIMENSION-LEVEL
212 *********************************************************************************/
213 PROCEDURE Update_Dim_Object
214 (       p_commit                    IN          VARCHAR2   := FND_API.G_TRUE
215     ,   p_dim_obj_short_name        IN          VARCHAR2
216     ,   p_display_name              IN          VARCHAR2
217     ,   p_application_id            IN          NUMBER
218     ,   p_description               IN          VARCHAR2
219     ,   p_data_source               IN          VARCHAR2
220     ,   p_source_table              IN          VARCHAR2
221     ,   p_where_clause              IN          VARCHAR2   :=   NULL
222     ,   p_comparison_label_code     IN          VARCHAR2
223     ,   p_table_column              IN          VARCHAR2
224     ,   p_source_type               IN          VARCHAR2
225     ,   p_maximum_code_size         IN          NUMBER
226     ,   p_maximum_name_size         IN          NUMBER
227     ,   p_all_item_text             IN          VARCHAR2
228     ,   p_comparison_item_text      IN          VARCHAR2
229     ,   p_prototype_default_value   IN          VARCHAR2
230     ,   p_dimension_values_order    IN          NUMBER
231     ,   p_comparison_order          IN          NUMBER
232     ,   p_assign_dim_short_names    IN          VARCHAR2
233     ,   p_unassign_dim_short_names  IN          VARCHAR2
234     ,   p_time_stamp                IN          VARCHAR2   :=  NULL    -- Granular Locking
235     ,   p_Master_Level              IN          VARCHAR2   :=  NULL
236     ,   p_Long_Lov                  IN          VARCHAR2   :=  FND_API.G_FALSE
237     ,   p_Search_Function           IN          VARCHAR2   :=  NULL
238     ,   p_Dim_Obj_Enabled           IN          VARCHAR2   :=  FND_API.G_FALSE
239     ,   p_View_Object_Name          IN          VARCHAR2   :=  NULL
240     ,   p_Default_Values_Api        IN          VARCHAR2   :=  NULL
241     ,   p_All_Enabled               IN          NUMBER     :=  NULL
242     ,   p_Drill_To_Form_Function    IN          VARCHAR2   :=  NULL
243     ,   p_Restrict_Dim_Validate     IN          VARCHAR2   := NULL
244     ,   p_Hide                      IN          VARCHAR2   :=  FND_API.G_FALSE
245     ,   x_return_status             OUT NOCOPY  VARCHAR2
246     ,   x_msg_count                 OUT NOCOPY  NUMBER
247     ,   x_msg_data                  OUT NOCOPY  VARCHAR2
248 );
249 
250 /*********************************************************************************
251                             UPDATE DIMENSION
252 *********************************************************************************/
253 PROCEDURE Update_Dim_Object
254 (       p_commit                    IN          VARCHAR2   := FND_API.G_TRUE
255     ,   p_dim_obj_short_name        IN          VARCHAR2
256     ,   p_display_name              IN          VARCHAR2
257     ,   p_application_id            IN          NUMBER
258     ,   p_description               IN          VARCHAR2
259     ,   p_data_source               IN          VARCHAR2
260     ,   p_source_table              IN          VARCHAR2
261     ,   p_where_clause              IN          VARCHAR2   :=   NULL
262     ,   p_comparison_label_code     IN          VARCHAR2
263     ,   p_table_column              IN          VARCHAR2
264     ,   p_source_type               IN          VARCHAR2
265     ,   p_maximum_code_size         IN          NUMBER
266     ,   p_maximum_name_size         IN          NUMBER
267     ,   p_all_item_text             IN          VARCHAR2
268     ,   p_comparison_item_text      IN          VARCHAR2
269     ,   p_prototype_default_value   IN          VARCHAR2
270     ,   p_dimension_values_order    IN          NUMBER
271     ,   p_comparison_order          IN          NUMBER
272     ,   p_time_stamp                IN          VARCHAR2   :=  NULL    -- Granular Locking
273     ,   p_Master_Level              IN          VARCHAR2   :=  NULL
274     ,   p_Long_Lov                  IN          VARCHAR2   :=  FND_API.G_FALSE
275     ,   p_Search_Function           IN          VARCHAR2   :=  NULL
276     ,   p_Dim_Obj_Enabled           IN          VARCHAR2   :=  FND_API.G_FALSE
277     ,   p_View_Object_Name          IN          VARCHAR2   :=  NULL
278     ,   p_Default_Values_Api        IN          VARCHAR2   :=  NULL
279     ,   p_All_Enabled               IN          NUMBER     :=  NULL
280     ,   p_Drill_To_Form_Function    IN          VARCHAR2   :=  NULL
281     ,   p_Hide                      IN          VARCHAR2   :=  FND_API.G_FALSE
282     ,   x_return_status             OUT NOCOPY  VARCHAR2
283     ,   x_msg_count                 OUT NOCOPY  NUMBER
284     ,   x_msg_data                  OUT NOCOPY  VARCHAR2
285 );
286 
287 /*********************************************************************************
288                             UPDATE DIMENSION
289 *********************************************************************************/
290 PROCEDURE Update_Dim_Object
291 (       p_commit                    IN          VARCHAR2   := FND_API.G_TRUE
292     ,   p_dim_obj_short_name        IN          VARCHAR2
293     ,   p_display_name              IN          VARCHAR2
294     ,   p_application_id            IN          NUMBER
295     ,   p_description               IN          VARCHAR2
296     ,   p_data_source               IN          VARCHAR2
297     ,   p_source_table              IN          VARCHAR2
298     ,   p_where_clause              IN          VARCHAR2   := NULL
299     ,   p_comparison_label_code     IN          VARCHAR2
300     ,   p_table_column              IN          VARCHAR2
301     ,   p_source_type               IN          VARCHAR2
302     ,   p_maximum_code_size         IN          NUMBER
303     ,   p_maximum_name_size         IN          NUMBER
304     ,   p_all_item_text             IN          VARCHAR2
305     ,   p_comparison_item_text      IN          VARCHAR2
306     ,   p_prototype_default_value   IN          VARCHAR2
307     ,   p_dimension_values_order    IN          NUMBER
308     ,   p_comparison_order          IN          NUMBER
309     ,   p_assign_dim_short_names    IN          VARCHAR2
310     ,   p_time_stamp                IN          VARCHAR2   :=  NULL    -- Granular Locking
311     ,   p_Master_Level              IN          VARCHAR2   :=  NULL
312     ,   p_Long_Lov                  IN          VARCHAR2   :=  FND_API.G_FALSE
313     ,   p_Search_Function           IN          VARCHAR2   :=  NULL
314     ,   p_Dim_Obj_Enabled           IN          VARCHAR2   :=  FND_API.G_FALSE
315     ,   p_View_Object_Name          IN          VARCHAR2   :=  NULL
316     ,   p_Default_Values_Api        IN          VARCHAR2   :=  NULL
317     ,   p_All_Enabled               IN          NUMBER     :=  NULL
318     ,   p_Drill_To_Form_Function    IN          VARCHAR2   :=  NULL
319     ,   p_Restrict_Dim_Validate     IN          VARCHAR2   := NULL
320     ,   p_Hide                      IN          VARCHAR2   :=  FND_API.G_FALSE
321     ,   x_return_status             OUT NOCOPY  VARCHAR2
322     ,   x_msg_count                 OUT NOCOPY  NUMBER
323     ,   x_msg_data                  OUT NOCOPY  VARCHAR2
324 );
325 /*********************************************************************************
326                            DELETE DIMENSION-LEVEL
327 *********************************************************************************/
328 PROCEDURE Delete_Dim_Object
329 (       p_commit                IN              VARCHAR2   := FND_API.G_TRUE
330     ,   p_dim_obj_short_name    IN              VARCHAR2
331     ,   x_return_status         OUT    NOCOPY   VARCHAR2
332     ,   x_msg_count             OUT    NOCOPY   NUMBER
333     ,   x_msg_data              OUT    NOCOPY   VARCHAR2
334 );
335 /*********************************************************************************
336                           ASSIGN DIMENSIONS TO DIMENSION OBJECT
337 *********************************************************************************/
338 
339 PROCEDURE Assign_Dimensions
340 (       p_commit                IN              VARCHAR2   := FND_API.G_TRUE
341     ,   p_dim_obj_short_name    IN              VARCHAR2
342     ,   p_dim_short_names       IN              VARCHAR2
343     ,   x_return_status         OUT    NOCOPY   VARCHAR2
344     ,   x_msg_count             OUT    NOCOPY   NUMBER
345     ,   x_msg_data              OUT    NOCOPY   VARCHAR2
346 );
347 /*********************************************************************************
348                     ASSIGN & UNASSIGN DIMENSIONS TO DIMENSION OBJECT
349 *********************************************************************************/
350 
351 PROCEDURE Assign_Unassign_Dimensions
352 (       p_commit                        IN              VARCHAR2   := FND_API.G_TRUE
353     ,   p_dim_obj_short_name            IN              VARCHAR2
354     ,   p_assign_dim_short_names        IN              VARCHAR2
355     ,   p_unassign_dim_short_names      IN              VARCHAR2
356     ,   p_Restrict_Dim_Validate         IN              VARCHAR2   := NULL
357     ,   x_return_status                 OUT    NOCOPY   VARCHAR2
358     ,   x_msg_count                     OUT    NOCOPY   NUMBER
359     ,   x_msg_data                      OUT    NOCOPY   VARCHAR2
360 );
361 /*********************************************************************************
362                        UNASSIGN DIMENSIONS FROM DIMENSION OBJECT
363 *********************************************************************************/
364 PROCEDURE Unassign_Dimensions
365 (       p_commit                IN              VARCHAR2   := FND_API.G_TRUE
366     ,   p_dim_obj_short_name    IN              VARCHAR2
367     ,   p_dim_short_names       IN              VARCHAR2
368     ,   x_return_status         OUT    NOCOPY   VARCHAR2
369     ,   x_msg_count             OUT    NOCOPY   NUMBER
370     ,   x_msg_data              OUT    NOCOPY   VARCHAR2
371 );
372 
373 PROCEDURE validateBscDimensionToDelete
374 (       p_commit                IN              VARCHAR2   := FND_API.G_TRUE
375     ,   p_dim_obj_short_name    IN              VARCHAR2
376     ,   x_return_status         OUT     NOCOPY  VARCHAR2
377     ,   x_msg_count             OUT     NOCOPY  NUMBER
378     ,   x_msg_data              OUT     NOCOPY  VARCHAR2
379 );
380 
381 FUNCTION get_Dimensions
382 (
383     p_group_id  IN  NUMBER
384 
385 )RETURN VARCHAR2;
386 
387 FUNCTION get_Dimension_Objects
388 (
389    p_dim_short_name  IN  VARCHAR2
390 ) RETURN VARCHAR2;
391 
392 
393 FUNCTION get_bis_dimension_id
394 (
395    p_dim_short_name  IN  VARCHAR2
396 ) RETURN NUMBER;
397 
398 
399 /*******************************************************************************
400                    FUNCTION TO INTIALIZE PMF DIMENSION RECORDS
401 ********************************************************************************/
402 FUNCTION Initialize_Pmf_Recs
403 (       p_Dim_Level_Rec     IN  OUT   NOCOPY    BSC_DIMENSION_LEVELS_PUB.Bsc_Dim_Level_Rec_Type
404     ,   x_return_status         OUT   NOCOPY    VARCHAR2
405     ,   x_msg_count             OUT   NOCOPY    NUMBER
406     ,   x_msg_data              OUT   NOCOPY    VARCHAR2
407 )
408 RETURN BOOLEAN;
409 
410 /*******************************************************************************/
411 FUNCTION is_KPI_Flag_For_DimObject
412 (       p_dim_obj_short_name        IN          VARCHAR2
413     ,   p_Source                    IN          VARCHAR2
414     ,   p_source_table              IN          VARCHAR2
415     ,   p_table_column              IN          VARCHAR2
416     ,   p_prototype_default_value   IN          VARCHAR2
417     ,   p_maximum_code_size         IN          NUMBER
418     ,   p_maximum_name_size         IN          NUMBER
419     ,   p_dim_short_names           IN          VARCHAR2
420 ) RETURN VARCHAR2;
421 --*********** Checking configuration impacting adding dimension objects*****************
422 FUNCTION is_config_impact_dim_obj
423 (       p_Dim_Obj_Short_Name        IN          VARCHAR2
424     ,   p_Dim_Short_Names           IN          VARCHAR2
425 ) RETURN VARCHAR2;
426 /*******************************************************************************
427 ********************************************************************************/
428 FUNCTION Get_Dim_Obj_Source
429 (   p_dim_obj_id IN NUMBER   := NULL
430   , p_short_Name IN VARCHAR2 := NULL
431 ) RETURN VARCHAR2;
432 /*********************************************************************************************
433                          Returns the Dimension Object ID of BIS
434 *********************************************************************************************/
435 FUNCTION Get_Bis_Dim_Obj_ID
436 (  p_Short_Name  IN BIS_LEVELS.Short_Name%TYPE
437 ) RETURN NUMBER;
438 
439 /*********************************************************************************************
440                          Returns the Dimension Object ID of BSC
441 *********************************************************************************************/
442 FUNCTION Get_Bsc_Dim_Obj_ID
443 (  p_Short_Name  IN BSC_SYS_DIM_LEVELS_B.Short_Name%TYPE
444 ) RETURN NUMBER;
445 /********************************************************************
446       Check no of independent dimension objects in dimension set
447 *********************************************************************/
448 
449 PROCEDURE check_indp_dimobjs
450 (
451         p_dim_id                IN    NUMBER
452     ,   x_return_status         OUT   NOCOPY    VARCHAR2
453     ,   x_msg_count             OUT   NOCOPY    NUMBER
454     ,   x_msg_data              OUT   NOCOPY    VARCHAR2
455 ) ;
456 /*********************************************************************************************
457                          Refresh BSC-PMF Dimension Object View of BSC
458 *********************************************************************************************/
459 PROCEDURE Refresh_BSC_PMF_Dim_View
460 (       p_Short_Name          IN             VARCHAR2
461     ,   x_return_status       OUT NOCOPY     VARCHAR2
462     ,   x_msg_count           OUT NOCOPY     NUMBER
463     ,   x_msg_data            OUT NOCOPY     VARCHAR2
464 );
465 
466 PROCEDURE Remove_BSC_PMF_EDW_Dim_View
467 (       x_return_status       OUT NOCOPY     VARCHAR2
468     ,   x_msg_count           OUT NOCOPY     NUMBER
469     ,   x_msg_data            OUT NOCOPY     VARCHAR2
470 );
471 
472 PROCEDURE Init_Create_Pmf_Recs
473 (       p_Dim_Level_Rec     IN  OUT   NOCOPY    BSC_DIMENSION_LEVELS_PUB.Bsc_Dim_Level_Rec_Type
474     ,   x_return_status         OUT   NOCOPY    VARCHAR2
475     ,   x_msg_count             OUT   NOCOPY    NUMBER
476     ,   x_msg_data              OUT   NOCOPY    VARCHAR2
477 );
478 
479 FUNCTION Validate_PMF_Base_View (
480              p_View_Name        IN VARCHAR2
481            , p_Parent_Id_Exists IN VARCHAR2
482            , p_Parent_Column    IN VARCHAR2
483 ) RETURN NUMBER;
484 
485 
486 PROCEDURE Validate_PMF_Views
487 ( p_Dim_Obj_Short_Name            IN  VARCHAR2
488 , p_Dim_Obj_View_Name             IN  VARCHAR2
489 , x_Return_Status                 OUT NOCOPY VARCHAR2
490 , x_Msg_Count                     OUT NOCOPY NUMBER
491 , x_Msg_Data                      OUT NOCOPY VARCHAR2
492 );
493 
494 PROCEDURE Validate_Dim_object_Views
495 ( p_Dim_Obj_Short_Name            IN  VARCHAR2
496 , p_Dim_Obj_View_Name             IN  VARCHAR2
497 , x_Return_Status                 OUT NOCOPY VARCHAR2
498 , x_Msg_Count                     OUT NOCOPY NUMBER
499 , x_Msg_Data                      OUT NOCOPY VARCHAR2
500 );
501 
502 FUNCTION Get_Table_Type_Value(
503              p_Short_Name IN BSC_SYS_DIM_LEVELS_B.Short_Name%TYPE
504 ) RETURN NUMBER;
505 
506 FUNCTION Is_Default_Value(
507         p_value IN VARCHAR2
508 ) RETURN BOOLEAN;
509 
510 /******************************************************************************/
511 -- Added for Bug#4758995
512 -- This needs to be public because it could be used in a script.
513 FUNCTION Get_Unique_Level_Pk_Col
514 (       p_Dim_Level_Rec  IN  BSC_DIMENSION_LEVELS_PUB.Bsc_Dim_Level_Rec_Type
515     ,   x_return_status  OUT NOCOPY   VARCHAR2
516     ,   x_msg_count      OUT NOCOPY   NUMBER
517     ,   x_msg_data       OUT NOCOPY   VARCHAR2
518 ) RETURN VARCHAR2;
519 /******************************************************************************/
520 
521 
522 PROCEDURE Validate_Refresh_BSC_PMF_Views
523 ( p_Dim_Obj_Short_Name            IN  VARCHAR2
524 , x_Return_Status                 OUT NOCOPY VARCHAR2
525 , x_Msg_Count                     OUT NOCOPY NUMBER
526 , x_Msg_Data                      OUT NOCOPY VARCHAR2
527 );
528 
529 PROCEDURE Cascade_Dim_Props_Into_Dim_Grp (
530   p_Dim_Obj_Short_Name              IN  VARCHAR2
531   , p_Dim_Short_Name                IN  VARCHAR2
532   , p_All_Flag                      IN  NUMBER
533   , x_Return_Status                 OUT NOCOPY VARCHAR2
534   , x_Msg_Count                     OUT NOCOPY NUMBER
535   , x_Msg_Data                      OUT NOCOPY VARCHAR2
536 );
537 
538 END BSC_BIS_DIM_OBJ_PUB;