[Home] [Help]
PACKAGE BODY: APPS.CSM_SETUP_HOOK
Source
1 PACKAGE BODY CSM_SETUP_HOOK AS
2 /* $Header: csmduhkb.pls 120.1 2005/07/22 08:22:26 trajasek noship $ */
3 --
4 -- To modify this template, edit file PKGBODY.TXT in TEMPLATE
5 -- directory of SQL Navigator
6 --
7 -- Purpose: Briefly explain the functionality of the package body
8 --
9 -- MODIFICATION HISTORY
10 -- Person Date Comments
11 -- --------- ------ ------------------------------------------
12 -- Enter procedure, function bodies as shown below
13 ------------------------------------------------------------
14 -- procedure to initialize test datastructures
15 -- executeds prior to test run (not currently being called)
16 ------------------------------------------------------------
17 PROCEDURE init IS
18 BEGIN
19 -- test writer could insert special setup code here
20 null;
21 END init;
22
23 ------------------------------------------------------------
24 -- procedure to cleanup any test datastructures that were setup in the init
25 -- procedure call executes after test run (not currently being called)
26 ------------------------------------------------------------
27 PROCEDURE cleanup IS
28 BEGIN
29 -- test writer could insert special cleanup code here
30 NULL;
31 END cleanup;
32
33 ------------------------------------------------------------
34 -- procedure to execute the PLSQL test
35 -- the inputs needed for the test are passed in and a report object and CLOB are -- returned.
36 ------------------------------------------------------------
37 PROCEDURE runtest(inputs IN JTF_DIAG_INPUTTBL,
38 report OUT NOCOPY JTF_DIAG_REPORT,
39 reportClob OUT NOCOPY CLOB) IS
40 reportStr LONG;
41 statusStr VARCHAR2(50); -- SUCCESS or FAILURE
42 errStr VARCHAR2(4000);
43 fixInfo VARCHAR2(4000);
44 isFatal VARCHAR2(50); -- TRUE or FALSE
45 hookExists VARCHAR2(1) ;
46
47 TYPE hookRec IS RECORD (packageName varchar2 (50),
48 apiName varchar2(50),
49 hookType varchar2(1),
50 processingType varchar2(1)) ;
51
52 TYPE hookTab IS TABLE OF hookRec INDEX BY BINARY_INTEGER;
53 hookTable hookTab ;
54 BEGIN
55 JTF_DIAGNOSTIC_ADAPTUTIL.setUpVars(reportClob);
56
57 hookTable(1).packageName := 'CSF_DEBRIEF_LINES_IUHK' ;
58 hookTable(1).apiName := 'INSERT_ROW' ;
59 hookTable(1).hookType := 'I' ; -- Internal
60 hookTable(1).processingType := 'A' ; -- After
61
62 hookTable(2).packageName := 'CSF_DEBRIEF_LINES_IUHK' ;
63 hookTable(2).apiName := 'UPDATE_ROW' ;
64 hookTable(2).hookType := 'I' ; -- Internal
65 hookTable(2).processingType := 'B' ; -- Before
66
67 hookTable(3).packageName := 'CSF_DEBRIEF_LINES_IUHK' ;
68 hookTable(3).apiName := 'UPDATE_ROW' ;
69 hookTable(3).hookType := 'I' ; -- Internal
70 hookTable(3).processingType := 'A' ; -- After
71
72 hookTable(4).packageName := 'CSF_DEBRIEF_LINES_IUHK' ;
73 hookTable(4).apiName := 'DELETE_ROW' ;
74 hookTable(4).hookType := 'I' ; -- Internal
75 hookTable(4).processingType := 'B' ; -- Before
76
77 hookTable(5).packageName := 'JTF_TASKS_PUB' ;
78 hookTable(5).apiName := 'UPDATE_TASK' ;
79 hookTable(5).hookType := 'I' ; -- Internal
80 hookTable(5).processingType := 'B' ;
81
82 hookTable(6).packageName := 'CS_ServiceRequest_PVT' ;
83 hookTable(6).apiName := 'Update_ServiceRequest' ;
84 hookTable(6).hookType := 'I' ; -- Internal
85 hookTable(6).processingType := 'B' ;
86
87 hookTable(7).packageName := 'CS_ServiceRequest_PVT' ;
88 hookTable(7).apiName := 'Update_ServiceRequest' ;
89 hookTable(7).hookType := 'I' ; -- Internal
90 hookTable(7).processingType := 'A' ;
91
92 hookTable(8).packageName := 'JTF_TASK_ASSIGNMENTS_PUB' ;
93 hookTable(8).apiName := 'CREATE_TASK_ASSIGNMENT' ;
94 hookTable(8).hookType := 'I' ; -- Internal
95 hookTable(8).processingType := 'A' ;
96
97 hookTable(9).packageName := 'JTF_TASK_ASSIGNMENTS_PUB' ;
98 hookTable(9).apiName := 'UPDATE_TASK_ASSIGNMENT' ;
99 hookTable(9).hookType := 'I' ; -- Internal
100 hookTable(9).processingType := 'B' ;
101
102 hookTable(10).packageName := 'JTF_TASK_ASSIGNMENTS_PUB' ;
103 hookTable(10).apiName := 'DELETE_TASK_ASSIGNMENT' ;
104 hookTable(10).hookType := 'I' ; -- Internal
105 hookTable(10).processingType := 'B' ;
106
107 hookTable(11).packageName := 'CSP_INV_LOC_ASSIGNMENTS_IUHK' ;
108 hookTable(11).apiName := 'INSERT_ROW' ;
109 hookTable(11).hookType := 'I' ; -- Internal
110 hookTable(11).processingType := 'A' ;
111
112 hookTable(12).packageName := 'CSP_INV_LOC_ASSIGNMENTS_IUHK' ;
113 hookTable(12).apiName := 'UPDATE_ROW' ;
114 hookTable(12).hookType := 'I' ; -- Internal
115 hookTable(12).processingType := 'B' ;
116
117 hookTable(13).packageName := 'CSP_INV_LOC_ASSIGNMENTS_IUHK' ;
118 hookTable(13).apiName := 'UPDATE_ROW' ;
119 hookTable(13).hookType := 'I' ; -- Internal
120 hookTable(13).processingType := 'A' ;
121
122 hookTable(14).packageName := 'JTM_NOTES_PUB' ;
123 hookTable(14).apiName := 'CREATE_NOTE' ;
124 hookTable(14).hookType := 'V' ; -- Vertical
125 hookTable(14).processingType := 'A' ;
126
127 hookTable(15).packageName := 'JTM_NOTES_PUB' ;
128 hookTable(15).apiName := 'UPDATE_NOTE' ;
129 hookTable(15).hookType := 'V' ; -- Vertical
130 hookTable(15).processingType := 'B' ;
131
132 hookTable(16).packageName := 'JTM_CTR_CAPTURE_READING_PUB' ;
133 hookTable(16).apiName := 'CAPTURE_COUNTER_READING' ;
134 hookTable(16).hookType := 'V' ; -- Vertical
135 hookTable(16).processingType := 'A' ;
136
137 hookTable(17).packageName := 'JTM_CTR_CAPTURE_READING_PUB' ;
138 hookTable(17).apiName := 'UPDATE_COUNTER_READING' ;
139 hookTable(17).hookType := 'V' ; -- Vertical
140 hookTable(17).processingType := 'B' ;
141
142 hookTable(18).packageName := 'JTM_RS_GROUP_MEMBERS_PVT' ;
143 hookTable(18).apiName := 'CREATE_RESOURCE_GROUP_MEMBERS' ;
144 hookTable(18).hookType := 'V' ; -- Vertical
145 hookTable(18).processingType := 'A' ;
146
147 hookTable(19).packageName := 'JTM_RS_GROUP_MEMBERS_PVT' ;
148 hookTable(19).apiName := 'DELETE_RESOURCE_GROUP_MEMBERS' ;
149 hookTable(19).hookType := 'V' ; -- Vertical
150 hookTable(19).processingType := 'B' ;
151
152 hookTable(20).packageName := 'JTM_COUNTERS_PUB' ;
153 hookTable(20).apiName := 'CREATE_COUNTER' ;
154 hookTable(20).hookType := 'V' ; -- Vertical
155 hookTable(20).processingType := 'A' ;
156
157 hookTable(21).packageName := 'JTM_COUNTERS_PUB' ;
158 hookTable(21).apiName := 'UPDATE_COUNTER' ;
159 hookTable(21).hookType := 'V' ; -- Vertical
160 hookTable(21).processingType := 'B' ;
161
162 hookTable(22).packageName := 'CS_ServiceRequest_PVT' ;
163 hookTable(22).apiName := 'Create_ServiceRequest' ;
164 hookTable(22).hookType := 'I' ; -- Internal
165 hookTable(22).processingType := 'A' ;
166
167 hookTable(23).packageName := 'JTF_TASKS_PUB' ;
168 hookTable(23).apiName := 'CREATE_TASK' ;
169 hookTable(23).hookType := 'I' ; -- Internal
170 hookTable(23).processingType := 'A' ;
171
172 hookTable(24).packageName := 'JTF_TASKS_PUB' ;
173 hookTable(24).apiName := 'DELETE_TASK' ;
174 hookTable(24).hookType := 'I' ; -- Internal
175 hookTable(24).processingType := 'A' ;
176
177 hookTable(25).packageName := 'CSP_SHIP_TO_ADDRESS_PVT' ;
178 hookTable(25).apiName := 'SHIP_TO_ADDRESS_HANDLER' ;
179 hookTable(25).hookType := 'I' ; -- Internal
180 hookTable(25).processingType := 'A' ;
181
182 hookTable(26).packageName := 'CSP_SHIP_TO_ADDRESS_PVT' ;
183 hookTable(26).apiName := 'UPDATE_LOCATION' ;
184 hookTable(26).hookType := 'I' ; -- Internal
185 hookTable(26).processingType := 'A' ;
186
187 hookTable(27).packageName := 'CSP_REQUIREMENT_HEADERS_PKG' ;
188 hookTable(27).apiName := 'UPDATE_ROW' ;
189 hookTable(27).hookType := 'I' ; -- Internal
190 hookTable(27).processingType := 'A' ;
191
192 hookTable(28).packageName := 'CSP_REQUIREMENT_HEADERS_PKG' ;
193 hookTable(28).apiName := 'INSERT_ROW' ;
194 hookTable(28).hookType := 'I' ; -- Internal
195 hookTable(28).processingType := 'A' ;
196
197 hookTable(29).packageName := 'CSP_REQUIREMENT_HEADERS_PKG' ;
198 hookTable(29).apiName := 'DELETE_ROW' ;
199 hookTable(29).hookType := 'I' ; -- Internal
200 hookTable(29).processingType := 'A' ;
201
202 hookTable(30).packageName := 'CSP_REQUIREMENT_LINES_PKG' ;
203 hookTable(30).apiName := 'UPDATE_ROW' ;
204 hookTable(30).hookType := 'I' ; -- Internal
205 hookTable(30).processingType := 'A' ;
206
207 hookTable(31).packageName := 'CSP_REQUIREMENT_LINES_PKG' ;
208 hookTable(31).apiName := 'INSERT_ROW' ;
209 hookTable(31).hookType := 'I' ; -- Internal
210 hookTable(31).processingType := 'A' ;
211
212 hookTable(32).packageName := 'CSP_REQUIREMENT_LINES_PKG' ;
213 hookTable(32).apiName := 'DELETE_ROW' ;
214 hookTable(32).hookType := 'I' ; -- Internal
215 hookTable(32).processingType := 'A' ;
216
217 FOR i IN 1..hookTable.COUNT LOOP
218 BEGIN
219 select 'Y'
220 into hookExists
221 from jtf_hooks_data
222 where package_name = hookTable(i).packageName
223 and api_name = hookTable(i).apiName
224 and hook_type = hookTable(i).hookType
225 and processing_type = hookTable(i).processingType
226 and execute_flag = 'Y'
227 and product_code = 'CSM' ;
228 EXCEPTION
229 WHEN NO_DATA_FOUND THEN
230 hookExists := 'N' ;
231 END ;
232
233 IF (hookExists = 'Y') THEN
234 if reportStr is null then
235 reportStr := 'Hook registered for ' || hookTable(i).packageName || '.' || hookTable(i).apiName || ' with processing type '||hookTable(i).processingType ;
236 else
237 reportStr := ', ' || hookTable(i).packageName || '.' || hookTable(i).apiName || ' with processing type '||hookTable(i).processingType ;
238 end if ;
239 JTF_DIAGNOSTIC_ADAPTUTIL.addStringToReport(reportClob,reportStr);
240 if statusStr is null or statusStr = 'SUCCESS' then
241 statusStr := 'SUCCESS';
242 end if ;
243 ELSE
244 statusStr := 'FAILURE';
245 if errStr is null then
246 errStr := errStr || 'Hook not registered for ' || hookTable(i).packageName || '.' || hookTable(i).apiName || ' with processing type '||hookTable(i).processingType ;
247 else
248 errStr := errStr || ', ' || hookTable(i).packageName || '.' || hookTable(i).apiName || ' with processing type '||hookTable(i).processingType ;
249 end if ;
250 fixInfo := 'Apply latest patch then contact support (if needed).' ;
251 isFatal := 'FALSE';
252 END IF;
253 END LOOP ;
254 report := JTF_DIAGNOSTIC_ADAPTUTIL.constructReport(statusStr,errStr,fixInfo,isFatal);
255 reportClob := JTF_DIAGNOSTIC_ADAPTUTIL.getReportClob ;
256 END runTest;
257
258 ------------------------------------------------------------
259 -- procedure to report name back to framework
260 ------------------------------------------------------------
261 PROCEDURE getComponentName(str OUT NOCOPY VARCHAR2) IS
262 BEGIN
263 str := 'User Hooks Registration Status';
264 END getComponentName;
265
266 ------------------------------------------------------------
267 -- procedure to report test description back to framework
268 ------------------------------------------------------------
269 PROCEDURE getTestDesc(str OUT NOCOPY VARCHAR2) IS
270 BEGIN
271 str := 'User Hooks Registration';
272 END getTestDesc;
273
274 ------------------------------------------------------------
275 -- procedure to report test name back to framework
276 ------------------------------------------------------------
277 PROCEDURE getTestName(str OUT NOCOPY VARCHAR2) IS
278 BEGIN
279 str := 'Check User Hooks';
280 END getTestName;
281
282 -- Enter further code below as specified in the Package spec.
283 END;