DBA Data[Home] [Help]

PACKAGE BODY: APPS.CS_CSXSRDET_XMLP_PKG

Source


1 PACKAGE BODY CS_CSXSRDET_XMLP_PKG AS
2 /* $Header: CSXSRDETB.pls 120.0 2008/01/24 13:30:11 dwkrishn noship $ */
3 
4   FUNCTION AFTERREPORT RETURN BOOLEAN IS
5   BEGIN
6     /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
7     RETURN (TRUE);
8   END AFTERREPORT;
9 
10   FUNCTION AFTERPFORM RETURN BOOLEAN IS
11   BEGIN
12     BEGIN
13       IF (P_CUSTOMER_NUM_LOW IS NOT NULL) AND (P_CUSTOMER_NUM_HIGH IS NOT NULL) THEN
14         LP_CUSTOMER_NUMBER := 'and (inc.customer_number between :P_Customer_Num_Low  AND :P_Customer_Num_High)';
15       ELSIF (P_CUSTOMER_NUM_LOW IS NOT NULL) THEN
16         LP_CUSTOMER_NUMBER := 'AND inc.customer_number >= :P_Customer_Num_Low';
17       ELSIF (P_CUSTOMER_NUM_HIGH IS NOT NULL) THEN
18         LP_CUSTOMER_NUMBER := 'and inc.customer_number <= :P_Customer_Num_High ';
19       END IF;
20 
21       IF (LP_CUSTOMER_NUMBER IS NULL) THEN
22 	LP_CUSTOMER_NUMBER :='AND 1=1';
23 END IF;
24       IF (P_REQUEST_LOW IS NOT NULL) AND (P_REQUEST_HIGH IS NOT NULL) THEN
25         LP_REQUEST_NUMBER := 'AND (INC.incident_number BETWEEN
26                                                             :P_request_Low AND
27                                                             :P_request_High)';
28       ELSIF (P_REQUEST_LOW IS NOT NULL) THEN
29         LP_REQUEST_NUMBER := 'AND INC.incident_number >=
30                                                                  :P_request_Low';
31       ELSIF (P_REQUEST_HIGH IS NOT NULL) THEN
32         LP_REQUEST_NUMBER := 'AND INC.incident_number <=
33                                                                   :P_request_High ';
34       END IF;
35     IF (LP_REQUEST_NUMBER IS NULL) THEN
36     LP_REQUEST_NUMBER := 'AND 1=1';
37     END IF;
38       IF (P_TYPE IS NOT NULL) THEN
39         LP_TYPE := 'AND inc.incident_type =
40                                                    :P_type';
41       END IF;
42       IF (LP_TYPE IS NULL) THEN
43 	LP_TYPE :='AND 1=1';
44 END IF;
45       IF (P_SEVERITY IS NOT NULL) THEN
46         LP_SEVERITY := 'AND inc.severity =
47                                                        :P_Severity';
48       END IF;
49            IF (LP_SEVERITY IS NULL) THEN
50 	LP_SEVERITY :='AND 1=1';
51 END IF;
52       IF (P_URGENCY IS NOT NULL) THEN
53         LP_URGENCY := 'AND inc.URGENCY=
54                                                       :P_Urgency ';
55       END IF;
56         IF (LP_URGENCY IS NULL) THEN
57 	LP_URGENCY :='AND 1=1';
58 END IF;
59       IF (P_PROBLEM_CODE IS NOT NULL) THEN
60         LP_PROBLEM_CODE := 'AND INC.problem_code =
61                                                            :P_problem_code';
62       END IF;
63 
64        IF (LP_PROBLEM_CODE IS NULL) THEN
65 	LP_PROBLEM_CODE :='AND 1=1';
66 END IF;
67       IF (P_RESOLUTION_CODE IS NOT NULL) THEN
68         LP_RESOLUTION_CODE := 'AND INC.Resolution_code =
69                                                               :P_Resolution_code';
70       END IF;
71         IF (LP_RESOLUTION_CODE IS NULL) THEN
72 	LP_RESOLUTION_CODE :='AND 1=1';
73 END IF;
74       IF (P_OWNER IS NOT NULL) THEN
75         LP_OWNER := 'AND inc.owner =
76                                                     :P_Owner';
77       END IF;
78  IF (LP_OWNER IS NULL) THEN
79 	LP_OWNER :='AND 1=1';
80 END IF;
81       IF (P_STATUS IS NOT NULL) THEN
82         LP_STATUS := 'AND inc.status_code =
83                                                      :P_Status';
84       END IF;
85       IF (LP_STATUS IS NULL) THEN
86 	LP_STATUS :='AND 1=1';
87 END IF;
88       IF (P_LOGGED_BY IS NOT NULL) THEN
89         LP_LOGGEDBY := 'AND inc.logged_by_name =
90                                                        :P_logged_by';
91       END IF;
92        IF (LP_LOGGEDBY IS NULL) THEN
93 	LP_LOGGEDBY :='AND 1=1';
94 END IF;
95       IF (P_CLOSED_DATE IS NOT NULL) THEN
96         LP_CLOSEDDATE := 'AND trunc(INC.date_closed) = ' || '''' || P_CLOSED_DATE || '''';
97       END IF;
98        IF (LP_CLOSEDDATE IS NULL) THEN
99 	LP_CLOSEDDATE :='AND 1=1';
100 END IF;
101       IF (P_CLOSED_FLAG IS NOT NULL) THEN
102         LP_CLOSED_FLAG := 'AND inc.closed_flag =
103                                                           :P_closed_flag';
104       END IF;
105          IF (LP_CLOSED_FLAG IS NULL) THEN
106 	LP_CLOSED_FLAG :='AND 1=1';
107 END IF;
108       IF (P_SR_NOTES_STATUS IS NOT NULL) THEN
109         LP_SR_NOTES_STATUS := 'AND jtf_sr.status_code =
110                                                               :p_sr_notes_status';
111       END IF;
112       IF (P_TASK_NOTES_STATUS IS NOT NULL) THEN
113         LP_TASK_NOTES_STATUS := 'AND jtf_task.status_code =
114                                                                 :p_task_notes_status';
115       END IF;
116       RETURN (TRUE);
117     END;
118     RETURN NULL;
119   END AFTERPFORM;
120 
121   FUNCTION AFTERPARAMFORM RETURN BOOLEAN IS
122   BEGIN
123     IF (P_REQUEST_LOW IS NOT NULL) AND (P_REQUEST_HIGH IS NOT NULL) THEN
124       LP_REQUEST_NUMBER := 'AND (INC.incident_number BETWEEN ' || '''' || P_REQUEST_LOW || '''' || ' AND ' || '''' || P_REQUEST_HIGH || '''' || ')';
125     ELSIF (P_REQUEST_LOW IS NOT NULL) THEN
126       LP_REQUEST_NUMBER := 'AND INC.incident_number >= ' || '''' || P_REQUEST_LOW || '''' || '';
127     ELSIF (P_REQUEST_HIGH IS NOT NULL) THEN
128       LP_REQUEST_NUMBER := 'AND INC.incident_number <= ' || '''' || P_REQUEST_HIGH || '''' || '';
129     ELSE
130       LP_REQUEST_NUMBER := 'AND INC.incident_number like ' || '''%%''' || '';
131     END IF;
132     IF (LP_REQUEST_NUMBER IS NULL) THEN
133     LP_REQUEST_NUMBER := 'AND 1=1';
134     END IF;
135     IF (AFTERPFORM) THEN
136       NULL;
137     END IF;
138     RETURN (TRUE);
139   END AFTERPARAMFORM;
140 
141   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
142   BEGIN
143     DECLARE
144       STATEMENT1 VARCHAR2(80);
145       STATEMENT2 VARCHAR2(80);
146     BEGIN
147       BEGIN
148         P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
149         /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
150       EXCEPTION
151         WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
152           /*SRW.MESSAGE(1
153                      ,'srw_init')*/NULL;
154       END;
155       BEGIN
156         /*SRW.REFERENCE(P_ORGANIZATION_ID)*/NULL;
157         P_ORGANIZATION_ID := FND_PROFILE.VALUE('SO_ORGANIZATION_ID');
158       END;
159       BEGIN
160         /*SRW.REFERENCE(P_ITEM_STRUCT_NUM)*/NULL;
161       EXCEPTION
162         WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
163           /*SRW.MESSAGE(2
164                      ,'Item Flex Select failed in before report trigger')*/NULL;
165           RAISE;
166       END;
167       BEGIN
168         /*SRW.REFERENCE(P_ITEM_STRUCT_NUM)*/NULL;
169         /*SRW.REFERENCE(P_FLEX_ITEM_CODE)*/NULL;
170         IF (P_ITEM_LOW IS NOT NULL) AND (P_ITEM_HIGH IS NOT NULL) THEN
171           P_ITEM_WHERE := ' AND ' || P_ITEM_WHERE;
172         ELSIF (P_ITEM_LOW IS NOT NULL) AND (P_ITEM_HIGH IS NULL) THEN
173           P_ITEM_WHERE := ' AND ' || P_ITEM_WHERE;
174         ELSIF (P_ITEM_LOW IS NULL) AND (P_ITEM_HIGH IS NOT NULL) THEN
175           P_ITEM_WHERE := ' AND ' || P_ITEM_WHERE;
176         ELSE
177           NULL;
178         END IF;
179 	 IF (P_ITEM_WHERE IS NULL) THEN
180 	P_ITEM_WHERE :='AND 1=1';
181 END IF;
182       EXCEPTION
183         WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
184           /*SRW.MESSAGE(3
185                      ,'Item Flex Where failed in before report trigger')*/NULL;
186           RAISE;
187       END;
188       BEGIN
189         /*SRW.REFERENCE(P_USER_ID)*/NULL;
190         P_USER_ID := FND_GLOBAL.USER_ID;
191       END;
192       CS_GET_COMPANY_NAME(RP_COMPANY_NAME
193                          ,P_SOB_ID);
194       CS_GET_REPORT_NAME(RP_REPORT_NAME
195                         ,P_CONC_REQUEST_ID
196                         ,'Service Request SUmmary Report');
197     END;
198 RP_REPORT_NAME := substr(RP_REPORT_NAME,1,instr(RP_REPORT_NAME,' (XML)'));
199 
200     RETURN (TRUE);
201   END BEFOREREPORT;
202 
203   FUNCTION RP_REPORT_NAME_P RETURN VARCHAR2 IS
204   BEGIN
205     RETURN RP_REPORT_NAME;
206   END RP_REPORT_NAME_P;
207 
208   FUNCTION RP_COMPANY_NAME_P RETURN VARCHAR2 IS
209   BEGIN
210     RETURN RP_COMPANY_NAME;
211   END RP_COMPANY_NAME_P;
212 
213   /*PROCEDURE PUT(NAME IN VARCHAR2
214                ,VAL IN VARCHAR2) IS
215   BEGIN
216     STPROC.INIT('begin FND_PROFILE.PUT(:NAME, :VAL); end;');
217     STPROC.BIND_I(NAME);
218     STPROC.BIND_I(VAL);
219     STPROC.EXECUTE;
220   END PUT;*/
221 
222 /*  FUNCTION DEFINED(NAME IN VARCHAR2) RETURN BOOLEAN IS
223     X0 BOOLEAN;
224   BEGIN
225     STPROC.INIT('declare X0rv BOOLEAN; begin X0rv := FND_PROFILE.DEFINED(:NAME); :X0 := sys.diutil.bool_to_int(X0rv); end;');
226     STPROC.BIND_I(NAME);
227     STPROC.BIND_O(X0);
228     STPROC.EXECUTE;
229     STPROC.RETRIEVE(2
230                    ,X0);
231     RETURN X0;
232   END DEFINED;*/
233 
234 /*  PROCEDURE GET(NAME IN VARCHAR2
235                ,VAL OUT NOCOPY VARCHAR2) IS
236   BEGIN
237     STPROC.INIT('begin FND_PROFILE.GET(:NAME, :VAL); end;');
238     STPROC.BIND_I(NAME);
239     STPROC.BIND_O(VAL);
240     STPROC.EXECUTE;
241     STPROC.RETRIEVE(2
242                    ,VAL);
243   END GET;*/
244 
245 /*  FUNCTION VALUE(NAME IN VARCHAR2) RETURN VARCHAR2 IS
246     X0 VARCHAR2(2000);
247   BEGIN
248     STPROC.INIT('begin :X0 := FND_PROFILE.VALUE(:NAME); end;');
249     STPROC.BIND_O(X0);
250     STPROC.BIND_I(NAME);
251     STPROC.EXECUTE;
252     STPROC.RETRIEVE(1
253                    ,X0);
254     RETURN X0;
255   END VALUE;
256 */
257 /*  FUNCTION VALUE_WNPS(NAME IN VARCHAR2) RETURN VARCHAR2 IS
258     X0 VARCHAR2(2000);
259   BEGIN
260     STPROC.INIT('begin :X0 := FND_PROFILE.VALUE_WNPS(:NAME); end;');
261     STPROC.BIND_O(X0);
262     STPROC.BIND_I(NAME);
263     STPROC.EXECUTE;
264     STPROC.RETRIEVE(1
265                    ,X0);
266     RETURN X0;
267   END VALUE_WNPS;*/
268 
269 /*  FUNCTION SAVE_USER(X_NAME IN VARCHAR2
270                     ,X_VALUE IN VARCHAR2) RETURN BOOLEAN IS
271     X0 BOOLEAN;
272   BEGIN
273     STPROC.INIT('declare X0rv BOOLEAN; begin X0rv := FND_PROFILE.SAVE_USER(:X_NAME, :X_VALUE); :X0 := sys.diutil.bool_to_int(X0rv); end;');
274     STPROC.BIND_I(X_NAME);
275     STPROC.BIND_I(X_VALUE);
276     STPROC.BIND_O(X0);
277     STPROC.EXECUTE;
278     STPROC.RETRIEVE(3
279                    ,X0);
280     RETURN X0;
281   END SAVE_USER;*/
282 
283 /*  FUNCTION SAVE(X_NAME IN VARCHAR2
284                ,X_VALUE IN VARCHAR2
285                ,X_LEVEL_NAME IN VARCHAR2
286                ,X_LEVEL_VALUE IN VARCHAR2
287                ,X_LEVEL_VALUE_APP_ID IN VARCHAR2) RETURN BOOLEAN IS
288     X0 BOOLEAN;
289   BEGIN
290     STPROC.INIT('declare X0rv BOOLEAN; begin X0rv := FND_PROFILE.SAVE(:X_NAME, :X_VALUE, :X_LEVEL_NAME, :X_LEVEL_VALUE, :X_LEVEL_VALUE_APP_ID); :X0 := sys.diutil.bool_to_int(X0rv); end;');
291     STPROC.BIND_I(X_NAME);
292     STPROC.BIND_I(X_VALUE);
293     STPROC.BIND_I(X_LEVEL_NAME);
294     STPROC.BIND_I(X_LEVEL_VALUE);
295     STPROC.BIND_I(X_LEVEL_VALUE_APP_ID);
296     STPROC.BIND_O(X0);
297     STPROC.EXECUTE;
298     STPROC.RETRIEVE(6
299                    ,X0);
300     RETURN X0;
301   END SAVE;*/
302 
303 /*  PROCEDURE GET_SPECIFIC(NAME_Z IN VARCHAR2
304                         ,USER_ID_Z IN NUMBER
305                         ,RESPONSIBILITY_ID_Z IN NUMBER
306                         ,APPLICATION_ID_Z IN NUMBER
307                         ,VAL_Z OUT NOCOPY VARCHAR2
308                         ,DEFINED_Z OUT NOCOPY BOOLEAN) IS
309   BEGIN
310     STPROC.INIT('declare DEFINED_Z BOOLEAN; begin DEFINED_Z := sys.diutil.int_to_bool(:DEFINED_Z); FND_PROFILE.GET_SPECIFIC(:NAME_Z, :USER_ID_Z, :RESPONSIBILITY_ID_Z, :APPLICATION_ID_Z, :VAL_Z, DEFINED_Z);
311 	:DEFINED_Z := sys.diutil.bool_to_int(DEFINED_Z); end;');
312     STPROC.BIND_O(DEFINED_Z);
313     STPROC.BIND_I(NAME_Z);
314     STPROC.BIND_I(USER_ID_Z);
315     STPROC.BIND_I(RESPONSIBILITY_ID_Z);
316     STPROC.BIND_I(APPLICATION_ID_Z);
317     STPROC.BIND_O(VAL_Z);
318     STPROC.EXECUTE;
319     STPROC.RETRIEVE(1
320                    ,DEFINED_Z);
321     STPROC.RETRIEVE(6
322                    ,VAL_Z);
323   END GET_SPECIFIC;*/
324 
325 /*  FUNCTION VALUE_SPECIFIC(NAME IN VARCHAR2
326                          ,USER_ID IN NUMBER
327                          ,RESPONSIBILITY_ID IN NUMBER
328                          ,APPLICATION_ID IN NUMBER) RETURN VARCHAR2 IS
329     X0 VARCHAR2(2000);
330   BEGIN
331     STPROC.INIT('begin :X0 := FND_PROFILE.VALUE_SPECIFIC(:NAME, :USER_ID, :RESPONSIBILITY_ID, :APPLICATION_ID); end;');
332     STPROC.BIND_O(X0);
333     STPROC.BIND_I(NAME);
334     STPROC.BIND_I(USER_ID);
335     STPROC.BIND_I(RESPONSIBILITY_ID);
336     STPROC.BIND_I(APPLICATION_ID);
337     STPROC.EXECUTE;
338     STPROC.RETRIEVE(1
339                    ,X0);
340     RETURN X0;
341   END VALUE_SPECIFIC;*/
342 
343 /*  PROCEDURE INITIALIZE(USER_ID_Z IN NUMBER
344                       ,RESPONSIBILITY_ID_Z IN NUMBER
345                       ,APPLICATION_ID_Z IN NUMBER
349     STPROC.BIND_I(USER_ID_Z);
346                       ,SITE_ID_Z IN NUMBER) IS
347   BEGIN
348     STPROC.INIT('begin FND_PROFILE.INITIALIZE(:USER_ID_Z, :RESPONSIBILITY_ID_Z, :APPLICATION_ID_Z, :SITE_ID_Z); end;');
350     STPROC.BIND_I(RESPONSIBILITY_ID_Z);
351     STPROC.BIND_I(APPLICATION_ID_Z);
352     STPROC.BIND_I(SITE_ID_Z);
353     STPROC.EXECUTE;
354   END INITIALIZE;*/
355 
356 /*  PROCEDURE PUTMULTIPLE(NAMES IN VARCHAR2
357                        ,VALS IN VARCHAR2
358                        ,NUM IN NUMBER) IS
359   BEGIN
360     STPROC.INIT('begin FND_PROFILE.PUTMULTIPLE(:NAMES, :VALS, :NUM); end;');
361     STPROC.BIND_I(NAMES);
362     STPROC.BIND_I(VALS);
363     STPROC.BIND_I(NUM);
364     STPROC.EXECUTE;
365   END PUTMULTIPLE;*/
366 
367   PROCEDURE CS_GET_COMPANY_NAME(RP_COMPANY_NAME IN OUT NOCOPY VARCHAR2
371     STPROC.BIND_IO(RP_COMPANY_NAME);
368                                ,P_SOB_ID IN NUMBER) IS
369   BEGIN
370 /*    STPROC.INIT('begin CS_REPORTS_PACKAGE.CS_GET_COMPANY_NAME(:RP_COMPANY_NAME, :P_SOB_ID); end;');
372     STPROC.BIND_I(P_SOB_ID);
373     STPROC.EXECUTE;
374     STPROC.RETRIEVE(1
375                    ,RP_COMPANY_NAME);*/
376 begin
377 CS_REPORTS_PACKAGE.CS_GET_COMPANY_NAME(RP_COMPANY_NAME, P_SOB_ID);
378 end;
379 
380 
381   END CS_GET_COMPANY_NAME;
382 
383   PROCEDURE CS_GET_REPORT_NAME(RP_REPORT_NAME IN OUT NOCOPY VARCHAR2
384                               ,P_CONC_REQUEST_ID IN NUMBER
385                               ,P_REPORT_NAME IN VARCHAR2) IS
386   BEGIN
387   /*  STPROC.INIT('begin CS_REPORTS_PACKAGE.CS_GET_REPORT_NAME(:RP_REPORT_NAME, :P_CONC_REQUEST_ID, :P_REPORT_NAME); end;');
388     STPROC.BIND_IO(RP_REPORT_NAME);
389     STPROC.BIND_I(P_CONC_REQUEST_ID);
390     STPROC.BIND_I(P_REPORT_NAME);
391     STPROC.EXECUTE;
392     STPROC.RETRIEVE(1
393                    ,RP_REPORT_NAME);*/
394 		   begin
395 		   CS_REPORTS_PACKAGE.CS_GET_REPORT_NAME(RP_REPORT_NAME, P_CONC_REQUEST_ID, P_REPORT_NAME);
396 		   end;
397 
398   END CS_GET_REPORT_NAME;
399 
400 /*  PROCEDURE GET_P_STRUCT_NUM(P_ITEM_STRUCT_NUM IN OUT NOCOPY VARCHAR2
401                             ,RETURN_VALUE IN OUT NOCOPY NUMBER) IS
402   BEGIN
403     STPROC.INIT('begin CS_REPORTS_PACKAGE.GET_P_STRUCT_NUM(:P_ITEM_STRUCT_NUM, :RETURN_VALUE); end;');
404     STPROC.BIND_IO(P_ITEM_STRUCT_NUM);
405     STPROC.BIND_IO(RETURN_VALUE);
406     STPROC.EXECUTE;
407     STPROC.RETRIEVE(1
408                    ,P_ITEM_STRUCT_NUM);
409     STPROC.RETRIEVE(2
410                    ,RETURN_VALUE);
411   END GET_P_STRUCT_NUM;*/
412 
413 END CS_CSXSRDET_XMLP_PKG;
414