DBA Data[Home] [Help]

PACKAGE BODY: APPS.BSC_INVALID_DIM_LVLS_RPT

Source


1 PACKAGE BODY BSC_INVALID_DIM_LVLS_RPT AS
2 /* $Header: BSCIVLDB.pls 120.1.12000000.2 2007/08/10 06:08:15 amitgupt noship $ */
3 
4 ------------------------------------------------------------
5 -- procedure to initialize test datastructures
6 ------------------------------------------------------------
7     PROCEDURE init IS
8     BEGIN
9         -- test writer could insert special setup code here
10         NULL;
11     END init;
12 ------------------------------------------------------------
13 -- procedure to cleanup any test datastructures that were setup in the init
14 
15     PROCEDURE cleanup IS
16     BEGIN
17         -- test writer could insert special cleanup code here
18         NULL;
19     END cleanup;
20 ------------------------------------------------------------
21 -- procedure to execute the PLSQL test
22 -- the inputs needed for the test are passed in and a report object and CLOB are
23 -- returned.
24 -- note the way that support API writes to the report CLOB.
25 ------------------------------------------------------------
26     PROCEDURE runtest(inputs IN JTF_DIAG_INPUTTBL,
27                       report OUT NOCOPY JTF_DIAG_REPORT,
28                       reportClob OUT NOCOPY CLOB) IS
29       reportStr LONG;
30       counter NUMBER;
31       dummy_v2t JTF_DIAGNOSTIC_COREAPI.v2t;
32       c_userid VARCHAR2(50);
33       statusStr VARCHAR2(50);
34       errStr VARCHAR2(4000);
35       fixInfo VARCHAR2(4000);
36       isFatal VARCHAR2(50);
37       dummy_num NUMBER;
38       sqltxt VARCHAR2 (2000);
39       h_headers JTF_DIAGNOSTIC_COREAPI.headers;
40       h_lengths JTF_DIAGNOSTIC_COREAPI.lengths;
41       h_count NUMBER;
42       h_source bsc_sys_dim_levels_b.source%TYPE;
43       h_pmf_count NUMBER;
44       h_bsc_count NUMBER;
45       CURSOR cv IS
46         SELECT source,COUNT(short_name) FROM bsc_sys_dim_levels_vl
47         WHERE table_type = 1 AND EXISTS (SELECT 1 FROM user_objects WHERE status='INVALID' AND
48         object_name = level_table_name)
49         GROUP BY source;
50     BEGIN
51         h_bsc_count := 0;
52         h_pmf_count := 0;
53         JTF_DIAGNOSTIC_ADAPTUTIL.setUpVars;
54 
55         JTF_DIAGNOSTIC_ADAPTUTIL.addStringToReport('@html');
56 
57         JTF_DIAGNOSTIC_COREAPI.insert_style_sheet;
58 
59         IF cv%ISOPEN THEN
60           CLOSE cv;
61         END IF;
62 
63         --CHECK IF THERE ARE INVALID DIMENSION OBJECTS IN BSC
64 
65         OPEN cv;
66         LOOP
67             FETCH cv INTO h_source,h_count;
68             EXIT WHEN cv%NOTFOUND;
69             IF h_source = 'PMF' THEN
70                 h_pmf_count := h_count;
71             ELSIF h_source = 'BSC' THEN
72                 h_bsc_count := h_count;
73             END IF;
74         END LOOP;
75         CLOSE cv;
76 
77 
78         h_count := h_pmf_count + h_bsc_count;
79         IF h_count >0 THEN
80             JTF_DIAGNOSTIC_COREAPI.BRPrint;
81             sqltxt := 'SELECT Name "Dimension Object Name", short_name, SOURCE, LEVEL_TABLE_NAME, '||
82                       ' LEVEL_VIEW_NAME FROM bsc_sys_dim_levels_vl '||
83                       ' WHERE TABLE_TYPE = 1 AND EXISTS (SELECT 1 FROM user_objects '||
84                       ' WHERE status=''INVALID'' AND object_name = LEVEL_VIEW_NAME) ';
85 
86             dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_INVALID_DIM_LVLS'));
87             JTF_DIAGNOSTIC_COREAPI.BRPrint;
88             statusStr := 'FAILURE';
89             errStr := BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_INVALID_DIM_LVLS_F');
90             IF h_pmf_count >0 THEN
91                fixInfo := BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_PMF_DIM_LVLS_FIX');
92             END IF;
93             fixInfo := fixInfo || BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_BSC_DIM_LVLS_FIX');
94 
95             JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(fixInfo);
96             isFatal := 'FALSE';
97         ELSE
98             statusStr := 'SUCCESS';
99             reportStr := BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_NO_INVLD_VIEWS');
100             JTF_DIAGNOSTIC_COREAPI.Line_out(reportStr);
101             JTF_DIAGNOSTIC_COREAPI.BRPrint;
102         END IF;
103         report := JTF_DIAGNOSTIC_ADAPTUTIL.constructReport(statusStr,errStr,fixInfo,isFatal);
104         reportClob := JTF_DIAGNOSTIC_ADAPTUTIL.getReportClob;
105     END runTest;
106 
107 ------------------------------------------------------------
108 -- procedure to report name back to framework
109 ------------------------------------------------------------
110     PROCEDURE getComponentName(name OUT NOCOPY VARCHAR2) IS
111     BEGIN
112         name := BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_GEN_HEALTH_CHECK');
113     END getComponentName;
114 
115 ------------------------------------------------------------
116 -- procedure to report test description back to framework
117 ------------------------------------------------------------
118     PROCEDURE getTestDesc(descStr OUT NOCOPY VARCHAR2) IS
119     BEGIN
120         descStr := BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_DIM_VIEW_TDESC');
121     END getTestDesc;
122 
123 ------------------------------------------------------------
124 -- procedure to report test name back to framework
125 ------------------------------------------------------------
126     PROCEDURE getTestName(name OUT NOCOPY VARCHAR2) IS
127     BEGIN
128         name := BSC_OBJECTIVE_METADATA_SETUP.get_message_name('BSC_DIM_VIEW_TNAME');
129     END getTestName;
130 
131 ------------------------------------------------------------
132 -- procedure to provide the default parameters for the test case.
133 -- please note the paramters have to be registered through the UI
134 -- before basic tests can be run.
135 --
136 ------------------------------------------------------------
137      PROCEDURE getDefaultTestParams(defaultInputValues OUT NOCOPY JTF_DIAG_INPUTTBL) IS
138          tempInput JTF_DIAG_INPUTTBL;
139      BEGIN
140          tempInput := JTF_DIAGNOSTIC_ADAPTUTIL.initinputtable;
141          defaultInputValues := tempInput;
142      EXCEPTION
143          WHEN OTHERS THEN
144              defaultInputValues := JTF_DIAGNOSTIC_ADAPTUTIL.initinputtable;
145      END getDefaultTestParams;
146 
147      FUNCTION getTestMode RETURN INTEGER IS
148      BEGIN
149          RETURN  JTF_DIAGNOSTIC_ADAPTUTIL.BASIC_MODE;
150      END;
151 END;