DBA Data[Home] [Help]

PACKAGE BODY: APPS.ASO_BI_UTIL_PVT

Source


1 Package Body ASO_BI_UTIL_PVT AS
2 /* $Header: asovbildutlb.pls 120.0 2005/05/31 01:25:46 appldev noship $ */
3 g_aso_schema VARCHAR2(30):= NULL;
4 G_TABLE_NOT_EXIST      EXCEPTION;
5 	PRAGMA EXCEPTION_INIT(G_TABLE_NOT_EXIST, -942);
6 
7 --
8 -- Initializes g_aso_schema variable
9 --
10 PROCEDURE INIT
11 AS
12  l_status              VARCHAR2(30);
13  l_industry            VARCHAR2(30);
14  l_stmt                VARCHAR2(50);
15 BEGIN
16 
17   -- Find the schema owner and tablespace
18   -- ASO_BI_QUOTE_HDRS_ALL is using
19   IF(BIS_COLLECTION_UTILITIES.g_debug) THEN
20      BIS_COLLECTION_UTILITIES.DEBUG('Getting APP info.');
21   END IF;
22 
23   IF(FND_INSTALLATION.GET_APP_INFO('ASO', l_status, l_industry, g_aso_schema))
24   THEN
25   IF(BIS_COLLECTION_UTILITIES.g_debug) THEN
26       BIS_COLLECTION_UTILITIES.DEBUG('g_aso_schema is '||g_aso_schema);
27   END IF;
28   END IF;
29 
30 END INIT;
31 
32 --
33 -- Truncates the tabl, if the table doesnot exists,
34 -- does nothing
35 PROCEDURE Truncate_Table(p_table_name IN VARCHAR2)
36 AS
37     l_stmt VARCHAR2(100);
38 BEGIN
39     l_stmt := 'TRUNCATE table '||g_aso_schema||'.'||p_table_name;
40 
41     EXECUTE IMMEDIATE l_stmt;
42   IF(BIS_COLLECTION_UTILITIES.g_debug) THEN
43     BIS_COLLECTION_UTILITIES.Debug('Truncated table :' || p_table_name);
44   END IF;
45 
46 EXCEPTION
47     WHEN G_TABLE_NOT_EXIST THEN
48         null;      -- Oracle 942, table does not exist, no actions
49     WHEN OTHERS THEN
50         RAISE;
51 END Truncate_Table;
52 
53 -- Gathers table stats on the table specified
54 PROCEDURE Analyze_Table(p_table_Name IN VARCHAR2)
55 AS
56  l_table_name Varchar2(40);
57  l_status     VARCHAR2(30);
58  l_industry   VARCHAR2(30);
59 BEGIN
60 
61      l_table_name := p_table_name;
62      IF (g_aso_schema IS NULL) Then
63         IF(BIS_COLLECTION_UTILITIES.g_debug) THEN
64            BIS_COLLECTION_UTILITIES.DEBUG('Getting APP info.');
65         END IF;
66 
67         IF(FND_INSTALLATION.GET_APP_INFO('ASO', l_status, l_industry, g_aso_schema)) THEN
68           IF(BIS_COLLECTION_UTILITIES.g_debug) THEN
69             BIS_COLLECTION_UTILITIES.DEBUG('g_aso_schema is '||g_aso_schema);
70           END IF;
71         END IF;
72      END IF;
73 
74      IF(BIS_COLLECTION_UTILITIES.g_debug) THEN
75         BIS_COLLECTION_UTILITIES.Debug('Analyzing the table:'||l_table_name);
76      END IF;
77 
78      fnd_stats.gather_table_stats (ownname=>g_aso_schema,
79                                    tabname=>l_table_name);
80 
81 END Analyze_Table;
82 
83 -- Wrapper function for parallel enabling the initial load
84 FUNCTION get_closest_rate_sql (
85 		x_from_currency   VARCHAR2,
86 		x_to_currency   VARCHAR2,
87 		x_conversion_date   DATE,
88 		x_conversion_type   VARCHAR2,
89 	  x_max_roll_days   NUMBER ) RETURN NUMBER PARALLEL_ENABLE AS
90   rate NUMBER;
91 BEGIN
92     rate := GL_CURRENCY_API.get_closest_rate_sql(x_from_currency, x_to_currency,
93                               x_conversion_date, x_conversion_type,
94                               x_max_roll_days);
95    return rate;
96 END;
97 
98 
99 END ASO_BI_UTIL_PVT;