[Home] [Help]
PACKAGE BODY: APPS.XNP_MSG_DIAGNOSTICS$XNP_MSGS
Source
1 package body xnp_msg_diagnostics$xnp_msgs as
2 /* $Header: XNPMSG2B.pls 120.1.12010000.2 2008/09/25 05:19:13 mpathani ship $ */
3
4
5 procedure FormView(Z_FORM_STATUS in number);
6 function BuildSQL(
7 P_MSG_ID in varchar2 default null,
8 P_MSG_CODE in varchar2 default null,
9 P_L_MTE_MSG_TYPE in varchar2 default null,
10 P_MSG_STATUS in varchar2 default null,
11 P_REFERENCE_ID in varchar2 default null,
12 P_OPP_REFERENCE_ID in varchar2 default null,
13 P_RECIPIENT_NAME in varchar2 default null,
14 P_SENDER_NAME in varchar2 default null,
15 P_ADAPTER_NAME in varchar2 default null,
16 P_FE_NAME in varchar2 default null,
17 P_ORDER_ID in varchar2 default null,
18 P_WI_INSTANCE_ID in varchar2 default null,
19 P_FA_INSTANCE_ID in varchar2 default null) return boolean;
20 function PreQuery(
21 P_MSG_ID in varchar2 default null,
22 P_MSG_CODE in varchar2 default null,
23 P_L_MTE_MSG_TYPE in varchar2 default null,
24 P_MSG_STATUS in varchar2 default null,
25 P_REFERENCE_ID in varchar2 default null,
26 P_OPP_REFERENCE_ID in varchar2 default null,
27 P_RECIPIENT_NAME in varchar2 default null,
28 P_SENDER_NAME in varchar2 default null,
29 P_ADAPTER_NAME in varchar2 default null,
30 P_FE_NAME in varchar2 default null,
31 P_ORDER_ID in varchar2 default null,
32 P_WI_INSTANCE_ID in varchar2 default null,
33 P_FA_INSTANCE_ID in varchar2 default null) return boolean;
34 function PostQuery(Z_POST_DML in boolean) return boolean;
35 procedure CreateQueryJavaScript;
36 procedure CreateListJavaScript;
37 procedure InitialiseDomain(P_ALIAS in varchar2);
38 function MSG_CODE_TranslateFK(
39 P_MSG_CODE in varchar2 default null,
40 P_L_MTE_MSG_TYPE in varchar2 default null,
41 Z_MODE in varchar2 default 'D') return boolean;
42
43 QF_BODY_ATTRIBUTES constant varchar2(500) := 'BGCOLOR="CCCCCC"';
44 QF_QUERY_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_FIND_BUTTON'));
45 QF_CLEAR_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_CLEAR_BUTTON'));
46 QF_QUERY_BUT_ACTION constant varchar2(10) := 'QUERY';
47 QF_CLEAR_BUT_ACTION constant varchar2(10) := 'CLEAR';
48 QF_NUMBER_OF_COLUMNS constant number(4) := 2;
49 VF_BODY_ATTRIBUTES constant varchar2(500) := 'BGCOLOR="CCCCCC"';
50 VF_UPDATE_BUT_CAPTION constant varchar2(100) := XNP_WSGL.MsgGetText(6,XNP_WSGLM.CAP006_VF_UPDATE);
51 VF_CLEAR_BUT_CAPTION constant varchar2(100) := XNP_WSGL.MsgGetText(8,XNP_WSGLM.CAP008_VF_REVERT);
52 VF_DELETE_BUT_CAPTION constant varchar2(100) := XNP_WSGL.MsgGetText(7,XNP_WSGLM.CAP007_VF_DELETE);
53 VF_UPDATE_BUT_ACTION constant varchar2(10) := 'UPDATE';
54 VF_CLEAR_BUT_ACTION constant varchar2(10) := 'CLEAR';
55 VF_DELETE_BUT_ACTION constant varchar2(10) := 'DELETE';
56 VF_VERIFIED_DELETE constant varchar2(100) := 'VerifiedDelete';
57 VF_NUMBER_OF_COLUMNS constant number(4) := 2;
58 RL_BODY_ATTRIBUTES constant varchar2(500) := 'BGCOLOR="CCCCCC"';
59 RL_NEXT_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_NEXT_BUTTON'));
60 RL_PREV_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_PREVIOUS_BUTTON'));
61 RL_FIRST_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_FIRST_BUTTON'));
62 RL_LAST_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_LAST_BUTTON'));
63 RL_COUNT_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_COUNT_BUTTON'));
64 RL_REQUERY_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_REFRESH_BUTTON'));
65 RL_QUERY_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_SEARCH_BUTTON'));
66 RL_QUERY_BUT_ACTION constant varchar2(10) := 'QUERY';
67 RL_NEXT_BUT_ACTION constant varchar2(10) := 'NEXT';
68 RL_PREV_BUT_ACTION constant varchar2(10) := 'PREV';
69 RL_FIRST_BUT_ACTION constant varchar2(10) := 'FIRST';
70 RL_LAST_BUT_ACTION constant varchar2(10) := 'LAST';
71 RL_COUNT_BUT_ACTION constant varchar2(10) := 'COUNT';
72 RL_REQUERY_BUT_ACTION constant varchar2(10) := 'REQUERY';
73 RL_RECORD_SET_SIZE constant number(4) := 10;
74 RL_TOTAL_COUNT_REQD constant boolean := TRUE;
75 RL_NUMBER_OF_COLUMNS constant number(4) := 1;
76 LOV_BODY_ATTRIBUTES constant varchar2(500) := 'BGCOLOR="CCCCCC"';
77 LOV_FIND_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_FIND_BUTTON'));
78 LOV_CLOSE_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_CLOSE_BUTTON'));
79 LOV_FIND_BUT_ACTION constant varchar2(10) := 'FIND';
80 LOV_CLOSE_BUT_ACTION constant varchar2(10) := 'CLOSE';
81 LOV_BUTTON_TEXT constant varchar2(100) := htf.italic(fnd_message.get_string('XNP','LIST_OF_VALUES'));
82 LOV_FRAME constant varchar2(20) := null;
83 TF_BODY_ATTRIBUTES constant varchar2(500) := 'BGCOLOR="CCCCCC"';
84 DEF_BODY_ATTRIBUTES constant varchar2(500) := 'BGCOLOR="CCCCCC"';
85
86 CURR_VAL XNP_MSGS%ROWTYPE;
87
88 -- Accomodating CLOB changes
89
90 CURR_VAL_BODY_TEXT CLOB ;
91 l_amount_to_read INTEGER ;
92
93
94 TYPE FORM_REC IS RECORD
95 (MSG_ID VARCHAR2(20)
96 ,XML_PAYLOAD_LINK VARCHAR2(2000)
97 ,MSG_CODE VARCHAR2(20)
98 ,L_MTE_MSG_TYPE VARCHAR2(10)
99 ,MSG_STATUS VARCHAR2(20)
100 ,DIRECTION_INDICATOR VARCHAR2(10)
101 ,REFERENCE_ID VARCHAR2(2000)
102 ,OPP_REFERENCE_ID VARCHAR2(2000)
103 ,VERSION VARCHAR2(5)
104 ,MSG_CREATION_DATE VARCHAR2(20)
105 ,SEND_RCV_DATE VARCHAR2(12)
106 ,RECIPIENT_NAME VARCHAR2(40)
107 ,SENDER_NAME VARCHAR2(300) -- increased the size from 40 to 300 for the bug 6880763
108 ,ADAPTER_NAME VARCHAR2(40)
109 ,FE_NAME VARCHAR2(40)
110 ,ORDER_ID VARCHAR2(40)
111 ,WI_INSTANCE_ID VARCHAR2(40)
112 ,FA_INSTANCE_ID VARCHAR2(40)
113 ,PRIORITY VARCHAR2(10)
114 ,LAST_COMPILED_DATE VARCHAR2(12)
115 ,DESCRIPTION VARCHAR2(2000)
116 ,RESEND_LINK VARCHAR2(2000)
117 ,BODY_TEXT VARCHAR2(32767)
118 ,L_MTE_DEFAULT_PROCESS_LOGIC VARCHAR2(4000)
119 ,L_MTE_IN_PROCESS_LOGIC VARCHAR2(4000)
120 ,L_MTE_VALIDATE_LOGIC VARCHAR2(4000)
121 ,L_MTE_OUT_PROCESS_LOGIC VARCHAR2(4000)
122 );
123 FORM_VAL FORM_REC;
124
125 TYPE NBT_REC IS RECORD
126 (XML_PAYLOAD_LINK VARCHAR2(2000)
127 ,L_MTE_MSG_TYPE XNP_MSG_TYPES_B.MSG_TYPE%TYPE
128 ,PRIORITY XNP_MSG_TYPES_B.PRIORITY%TYPE
129 ,LAST_COMPILED_DATE XNP_MSG_TYPES_B.LAST_COMPILED_DATE%TYPE
130 ,RESEND_LINK VARCHAR2(2000)
131 ,L_MTE_DEFAULT_PROCESS_LOGIC XNP_MSG_TYPES_B.DEFAULT_PROCESS_LOGIC%TYPE
132 ,L_MTE_IN_PROCESS_LOGIC XNP_MSG_TYPES_B.IN_PROCESS_LOGIC%TYPE
133 ,L_MTE_VALIDATE_LOGIC XNP_MSG_TYPES_B.VALIDATE_LOGIC%TYPE
134 ,L_MTE_OUT_PROCESS_LOGIC XNP_MSG_TYPES_B.OUT_PROCESS_LOGIC%TYPE
135 );
136 NBT_VAL NBT_REC;
137
138 ZONE_SQL VARCHAR2(4500) := null;
139
140 D_L_MTE_MSG_TYPE XNP_WSGL.typDVRecord;
141 D_MSG_STATUS XNP_WSGL.typDVRecord;
142 D_DIRECTION_INDICATOR XNP_WSGL.typDVRecord;
143 D_PRIORITY XNP_WSGL.typDVRecord;
144 --------------------------------------------------------------------------------
145 -- Name: xnp_msg_diagnostics$xnp_msgs.InitialiseDomain
146 --
147 -- Description: Initialises the Domain Record for the given Column Usage
148 --
149 -- Parameters: P_ALIAS The alias of the column usage
150 --
151 --------------------------------------------------------------------------------
152 procedure InitialiseDomain(P_ALIAS in varchar2) is
153 begin
154
155 if P_ALIAS = 'L_MTE_MSG_TYPE' and not D_L_MTE_MSG_TYPE.Initialised then
156 D_L_MTE_MSG_TYPE.ColAlias := 'L_MTE_MSG_TYPE';
157 D_L_MTE_MSG_TYPE.ControlType := XNP_WSGL.DV_TEXT;
158 D_L_MTE_MSG_TYPE.DispWidth := 10;
159 D_L_MTE_MSG_TYPE.DispHeight := 1;
160 D_L_MTE_MSG_TYPE.MaxWidth := 10;
161 D_L_MTE_MSG_TYPE.UseMeanings := True;
162 D_L_MTE_MSG_TYPE.ColOptional := False;
163 XNP_WSGL.LoadDomainValues('CG_REF_CODES', 'XNP_MSG_TYPE', D_L_MTE_MSG_TYPE);
164 D_L_MTE_MSG_TYPE.Initialised := True;
165 end if;
166
167 if P_ALIAS = 'MSG_STATUS' and not D_MSG_STATUS.Initialised then
168 D_MSG_STATUS.ColAlias := 'MSG_STATUS';
169 D_MSG_STATUS.ControlType := XNP_WSGL.DV_TEXT;
170 D_MSG_STATUS.DispWidth := 20;
171 D_MSG_STATUS.DispHeight := 1;
172 D_MSG_STATUS.MaxWidth := 20;
173 D_MSG_STATUS.UseMeanings := True;
174 D_MSG_STATUS.ColOptional := False;
175 XNP_WSGL.LoadDomainValues('CG_REF_CODES', 'XNP_MSG_STATUS', D_MSG_STATUS);
176 D_MSG_STATUS.Initialised := True;
177 end if;
178
179 if P_ALIAS = 'DIRECTION_INDICATOR' and not D_DIRECTION_INDICATOR.Initialised then
180 D_DIRECTION_INDICATOR.ColAlias := 'DIRECTION_INDICATOR';
181 D_DIRECTION_INDICATOR.ControlType := XNP_WSGL.DV_TEXT;
182 D_DIRECTION_INDICATOR.DispWidth := 10;
183 D_DIRECTION_INDICATOR.DispHeight := 1;
184 D_DIRECTION_INDICATOR.MaxWidth := 10;
185 D_DIRECTION_INDICATOR.UseMeanings := True;
186 D_DIRECTION_INDICATOR.ColOptional := False;
187 XNP_WSGL.LoadDomainValues('CG_REF_CODES', 'XNP_DIRECTION_INDICATOR', D_DIRECTION_INDICATOR);
188 D_DIRECTION_INDICATOR.Initialised := True;
189 end if;
190
191 if P_ALIAS = 'PRIORITY' and not D_PRIORITY.Initialised then
192 D_PRIORITY.ColAlias := 'PRIORITY';
193 D_PRIORITY.ControlType := XNP_WSGL.DV_TEXT;
194 D_PRIORITY.DispWidth := 10;
195 D_PRIORITY.DispHeight := 1;
196 D_PRIORITY.MaxWidth := 10;
197 D_PRIORITY.UseMeanings := True;
198 D_PRIORITY.ColOptional := True;
199 XNP_WSGL.LoadDomainValues('CG_REF_CODES', 'XNP_MSG_PRIORITY', D_PRIORITY);
200 D_PRIORITY.Initialised := True;
201 end if;
202
203 exception
204 when others then
205 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
206 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.InitialseDomain');
207 end;
208
209 --------------------------------------------------------------------------------
210 -- Name: xnp_msg_diagnostics$xnp_msgs.MSG_CODE_TranslateFK
211 --
212 -- Description:
213 --
214 -- Parameters:
215 --
216 --------------------------------------------------------------------------------
217 function MSG_CODE_TranslateFK(
218 P_MSG_CODE in varchar2,
219 P_L_MTE_MSG_TYPE in varchar2,
220 Z_MODE in varchar2) return boolean is
221 begin
222 select L_MTE.MSG_CODE
223 into CURR_VAL.MSG_CODE
224 from XNP_MSG_TYPES_B L_MTE
225 where rownum = 1
226 and ( L_MTE.MSG_CODE = P_MSG_CODE )
227 and ( L_MTE.MSG_TYPE = P_L_MTE_MSG_TYPE );
228 return TRUE;
229 exception
230 when no_data_found then
231 XNP_cg$errors.push('Code, Event Indicator: '||
232 XNP_WSGL.MsgGetText(226,XNP_WSGLM.MSG226_INVALID_FK),
233 'E', 'XNP_WSG', SQLCODE, 'xnp_msg_diagnostics$xnp_msgs.MSG_CODE_TranslateFK');
234 return FALSE;
235 when too_many_rows then
236 XNP_cg$errors.push('Code, Event Indicator: '||
237 XNP_WSGL.MsgGetText(227,XNP_WSGLM.MSG227_TOO_MANY_FKS),
238 'E', 'WSG', SQLCODE, 'xnp_msg_diagnostics$xnp_msgs.MSG_CODE_TranslateFK');
239 return FALSE;
240 when others then
241 XNP_cg$errors.push('Code, Event Indicator: '||SQLERRM,
242 'E', 'WSG', SQLCODE, 'xnp_msg_diagnostics$xnp_msgs.MSG_CODE_TranslateFK');
243 return FALSE;
244 end;
245 --------------------------------------------------------------------------------
246 -- Name: xnp_msg_diagnostics$xnp_msgs.msg_code_listofvalues
247 --
248 -- Description:
249 --
250 -- Parameters:
251 --
252 --------------------------------------------------------------------------------
253 procedure msg_code_listofvalues(
254 Z_FILTER in varchar2,
255 Z_MODE in varchar2,
256 Z_CALLER_URL in varchar2,
257 Z_ISSUE_WAIT in varchar2) is
258 L_SEARCH_STRING varchar2(1000);
259 L_ABORT boolean := FALSE;
260 L_INVALID_DEPEDANT boolean := FALSE;
261 L_ANY boolean := FALSE;
262 L_BODY_ATTRIBUTES VarChar2 (1000) := LOV_BODY_ATTRIBUTES;
263 begin
264
265 XNP_WSGL.RegisterURL('xnp_msg_diagnostics$xnp_msgs.msg_code_listofvalues');
266 XNP_WSGL.AddURLParam('Z_FILTER', Z_FILTER);
267 XNP_WSGL.AddURLParam('Z_MODE', Z_MODE);
268 XNP_WSGL.AddURLParam('Z_CALLER_URL', Z_CALLER_URL);
269 if XNP_WSGL.NotLowerCase then
270 return;
271 end if;
272
273 InitialiseDomain('L_MTE_MSG_TYPE');
274 InitialiseDomain('PRIORITY');
275
276 XNP_WSGL.OpenPageHead(XNP_WSGL.MsgGetText(123,XNP_WSGLM.DSP123_LOV_CAPTION,
277 'Code, Event Indicator'));
278
279 if Z_ISSUE_WAIT is not null then
280
281 htp.p ('<SCRIPT>
282 function RefreshMe()
283 {
284 location.href = location.href.substring (0, location.href.length - 1);
285 };
286 </SCRIPT>');
287
288 L_BODY_ATTRIBUTES := L_BODY_ATTRIBUTES || ' OnLoad="RefreshMe()"';
289
290 else
291 htp.p('<SCRIPT>
292 function PassBack(P_MSG_CODE,P_L_MTE_MSG_TYPE) {
293 if (opener.location.href != document.forms[0].Z_CALLER_URL.value) {
294 alert("'||XNP_WSGL.MsgGetText(228,XNP_WSGLM.MSG228_LOV_NOT_IN_CONTEXT)||'");
295 return;
296 }
297 opener.document.forms[0].P_MSG_CODE.value = P_MSG_CODE;
298 opener.document.forms[0].P_L_MTE_MSG_TYPE.value = P_L_MTE_MSG_TYPE;
299 opener.document.forms[0].P_MSG_CODE.focus();
300 close();
301 }
302 function Find_OnClick() {
303 document.forms[0].submit();
304 }');
305 if LOV_FRAME is null then
306 htp.p('function Close_OnClick() {
307 close();
308 }');
309 end if;
310 htp.p('</SCRIPT>');
311 end if;
312
313 xnp_msg_diagnostics$.TemplateHeader(TRUE,0);
314
315 XNP_WSGL.ClosePageHead;
316
317 XNP_WSGL.OpenPageBody(FALSE, p_attributes=>L_BODY_ATTRIBUTES);
318
319 htp.header(2, htf.italic(XNP_WSGL.MsgGetText(123,XNP_WSGLM.DSP123_LOV_CAPTION,'Code, Event Indicator')));
320
321 if Z_ISSUE_WAIT is not null then
322 htp.p(XNP_WSGL.MsgGetText(127,XNP_WSGLM.DSP127_LOV_PLEASE_WAIT));
323 XNP_WSGL.ClosePageBody;
324 return;
325 else
326 htp.formOpen('xnp_msg_diagnostics$xnp_msgs.msg_code_listofvalues');
327 XNP_WSGL.HiddenField('Z_CALLER_URL', Z_CALLER_URL);
328 XNP_WSGL.HiddenField('Z_MODE', Z_MODE);
329 end if;
330
331 L_SEARCH_STRING := rtrim(Z_FILTER);
332 if L_SEARCH_STRING is not null then
333 if ((instr(Z_FILTER,'%') = 0) and (instr(Z_FILTER,'_') = 0)) then
334 L_SEARCH_STRING := L_SEARCH_STRING || '%';
335 end if;
336 else
337 L_SEARCH_STRING := '%';
338 end if;
339
340 htp.para;
341 htp.p(XNP_WSGL.MsgGetText(19,XNP_WSGLM.CAP019_LOV_FILTER_CAPTION,'Code'));
342 htp.para;
343 htp.formText('Z_FILTER', cvalue=>L_SEARCH_STRING);
344 htp.p('<input type="button" value="'||LOV_FIND_BUT_CAPTION||'" onclick="Find_OnClick()">');
345 if LOV_FRAME is null then
346 htp.p('<input type="button" value="'||LOV_CLOSE_BUT_CAPTION||'" onclick="Close_OnClick()">');
347 end if;
348 htp.formClose;
349
350
351 if not L_ABORT then
352
353 XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE, TRUE);
354
355 XNP_WSGL.LayoutRowStart;
356 XNP_WSGL.LayoutHeader(1, 'LEFT', 'Code');
357 XNP_WSGL.LayoutHeader(1, 'LEFT', 'Event Indicator');
358 XNP_WSGL.LayoutRowEnd;
359
360 declare
361 cursor c1(zmode varchar2,srch varchar2) is
362 select L_MTE.MSG_CODE MSG_CODE
363 , L_MTE.MSG_TYPE L_MTE_MSG_TYPE
364 , L_MTE.PRIORITY PRIORITY
365 , L_MTE.LAST_COMPILED_DATE LAST_COMPILED_DATE
366 , L_MTE.DEFAULT_PROCESS_LOGIC L_MTE_DEFAULT_PROCESS_LOGIC
367 , L_MTE.IN_PROCESS_LOGIC L_MTE_IN_PROCESS_LOGIC
368 , L_MTE.VALIDATE_LOGIC L_MTE_VALIDATE_LOGIC
369 , L_MTE.OUT_PROCESS_LOGIC L_MTE_OUT_PROCESS_LOGIC
370 from XNP_MSG_TYPES_B L_MTE
371 where L_MTE.MSG_CODE like upper(srch)
372 order by L_MTE.MSG_CODE;
373 begin
374 for c1rec in c1(Z_MODE,L_SEARCH_STRING) loop
375 CURR_VAL.MSG_CODE := c1rec.MSG_CODE;
376 NBT_VAL.L_MTE_MSG_TYPE := c1rec.L_MTE_MSG_TYPE;
377 XNP_WSGL.LayoutRowStart('TOP');
378 XNP_WSGL.LayoutData('<a href="javascript:PassBack('''||
379 replace(replace(c1rec.MSG_CODE,'"','"'),'''','\''')||''','''||
380 replace(replace(XNP_WSGL.DomainMeaning(D_L_MTE_MSG_TYPE, c1rec.L_MTE_MSG_TYPE),'"','"'),'''','\''')||''')">'||CURR_VAL.MSG_CODE||'</a>');
381 XNP_WSGL.LayoutData(replace(XNP_WSGL.DomainMeaning(D_L_MTE_MSG_TYPE, NBT_VAL.L_MTE_MSG_TYPE),'"','"'));
382 XNP_WSGL.LayoutRowEnd;
383 l_any := true;
384 end loop;
385 XNP_WSGL.LayoutClose;
386 if not l_any then
387 htp.p(XNP_WSGL.MsgGetText(224,XNP_WSGLM.MSG224_LOV_NO_ROWS));
388 end if;
389 end;
390 end if;
391
392 htp.p('<SCRIPT>document.forms[0].Z_FILTER.focus()</SCRIPT>');
393
394 XNP_WSGL.ClosePageBody;
395
396 exception
397 when others then
398 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics',
399 LOV_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.msg_code_listofvalues');
400 end;
401
402 --------------------------------------------------------------------------------
403 -- Name: xnp_msg_diagnostics$xnp_msgs.Startup
404 --
405 -- Description: Entry point for the 'XNP_MSGS' module
406 -- component (Message Details).
407 --
408 -- Parameters:
409 --
410 --------------------------------------------------------------------------------
411 procedure Startup(
412 Z_DIRECT_CALL in boolean,
413 Z_CHK in varchar2) is
414 begin
415
416 XNP_WSGL.RegisterURL('xnp_msg_diagnostics$xnp_msgs.startup');
417 XNP_WSGL.AddURLParam('Z_CHK', Z_CHK);
418
419 if not Z_DIRECT_CALL then
420 if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
421 return;
422 end if;
423 end if;
424
425 XNP_WSGL.StoreURLLink(1, 'Message Details');
426
427
428 FormQuery(
429 Z_DIRECT_CALL=>TRUE);
430
431 exception
432 when others then
433 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
434 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.Startup');
435 end;
436
437 --------------------------------------------------------------------------------
438 -- Name: xnp_msg_diagnostics$xnp_msgs.ActionQuery
439 --
440 -- Description: Called when a Query form is subitted to action the query request.
441 --
442 -- Parameters:
443 --
444 --------------------------------------------------------------------------------
445 procedure ActionQuery(
446 P_MSG_ID in varchar2,
447 P_MSG_CODE in varchar2,
448 P_L_MTE_MSG_TYPE in varchar2,
449 P_MSG_STATUS in varchar2,
450 P_REFERENCE_ID in varchar2,
451 P_OPP_REFERENCE_ID in varchar2,
452 P_RECIPIENT_NAME in varchar2,
453 P_SENDER_NAME in varchar2,
454 P_ADAPTER_NAME in varchar2,
455 P_FE_NAME in varchar2,
456 P_ORDER_ID in varchar2,
457 P_WI_INSTANCE_ID in varchar2,
458 P_FA_INSTANCE_ID in varchar2,
459 Z_DIRECT_CALL in boolean default false,
460 Z_ACTION in varchar2,
461 Z_CHK in varchar2) is
462
463 L_CHK varchar2(10) := Z_CHK;
464 L_BUTCHK varchar2(100):= null;
465 begin
466
467 if Z_DIRECT_CALL then
468 L_CHK := to_char(XNP_WSGL.Checksum(''));
469 else
470 if not XNP_WSGL.ValidateChecksum('', L_CHK) then
471 return;
472 end if;
473 end if;
474
475 --if on the query form and insert is allowed
476 QueryList(
477 P_MSG_ID,
478 P_MSG_CODE,
479 P_L_MTE_MSG_TYPE,
480 P_MSG_STATUS,
481 P_REFERENCE_ID,
482 P_OPP_REFERENCE_ID,
483 P_RECIPIENT_NAME,
484 P_SENDER_NAME,
485 P_ADAPTER_NAME,
486 P_FE_NAME,
487 P_ORDER_ID,
488 P_WI_INSTANCE_ID,
489 P_FA_INSTANCE_ID,
490 null, L_BUTCHK, Z_DIRECT_CALL=>TRUE);
491
492 exception
493 when others then
494 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
495 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.ActionQuery');
496 end;
497
498 --------------------------------------------------------------------------------
499 -- Name: xnp_msg_diagnostics$xnp_msgs.QueryHits
500 --
501 -- Description: Returns the number or rows which matches the given search
502 -- criteria (if any).
503 --
504 -- Parameters:
505 --
506 --------------------------------------------------------------------------------
507 function QueryHits(
508 P_MSG_ID in varchar2,
509 P_MSG_CODE in varchar2,
510 P_L_MTE_MSG_TYPE in varchar2,
511 P_MSG_STATUS in varchar2,
512 P_REFERENCE_ID in varchar2,
513 P_OPP_REFERENCE_ID in varchar2,
514 P_RECIPIENT_NAME in varchar2,
515 P_SENDER_NAME in varchar2,
516 P_ADAPTER_NAME in varchar2,
517 P_FE_NAME in varchar2,
518 P_ORDER_ID in varchar2,
519 P_WI_INSTANCE_ID in varchar2,
520 P_FA_INSTANCE_ID in varchar2) return number is
521 I_QUERY varchar2(2000) := '';
522 I_CURSOR integer;
523 I_VOID integer;
524 I_FROM_POS integer := 0;
525 I_COUNT number(10);
526 begin
527
528 if not BuildSQL(P_MSG_ID,
529 P_MSG_CODE,
530 P_L_MTE_MSG_TYPE,
531 P_MSG_STATUS,
532 P_REFERENCE_ID,
533 P_OPP_REFERENCE_ID,
534 P_RECIPIENT_NAME,
535 P_SENDER_NAME,
536 P_ADAPTER_NAME,
537 P_FE_NAME,
538 P_ORDER_ID,
539 P_WI_INSTANCE_ID,
540 P_FA_INSTANCE_ID) then
541 return -1;
542 end if;
543
544 if not PreQuery(P_MSG_ID,
545 P_MSG_CODE,
546 P_L_MTE_MSG_TYPE,
547 P_MSG_STATUS,
548 P_REFERENCE_ID,
549 P_OPP_REFERENCE_ID,
550 P_RECIPIENT_NAME,
551 P_SENDER_NAME,
552 P_ADAPTER_NAME,
553 P_FE_NAME,
554 P_ORDER_ID,
555 P_WI_INSTANCE_ID,
556 P_FA_INSTANCE_ID) then
557 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_cg$errors.GetErrors,
558 'SFM iMessage Diagnostics'||' : '||'Message Details', DEF_BODY_ATTRIBUTES);
559 return -1;
560 end if;
561
562 I_FROM_POS := instr(upper(ZONE_SQL), ' FROM ');
563
564 if I_FROM_POS = 0 then
565 return -1;
566 end if;
567
568 I_QUERY := 'SELECT count(*)' ||
569 substr(ZONE_SQL, I_FROM_POS);
570
571 I_CURSOR := dbms_sql.open_cursor;
572 dbms_sql.parse(I_CURSOR, I_QUERY, dbms_sql.v7);
573 dbms_sql.define_column(I_CURSOR, 1, I_COUNT);
574 I_VOID := dbms_sql.execute(I_CURSOR);
575 I_VOID := dbms_sql.fetch_rows(I_CURSOR);
576 dbms_sql.column_value(I_CURSOR, 1, I_COUNT);
577 dbms_sql.close_cursor(I_CURSOR);
578
579 return I_COUNT;
580
581 exception
582 when others then
583 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
584 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.QueryHits');
585 return -1;
586 end;--------------------------------------------------------------------------------
587 -- Name: xnp_msg_diagnostics$xnp_msgs.BuildSQL
588 --
589 -- Description: Builds the SQL for the 'XNP_MSGS' module component (Message Details).
590 -- This incorporates all query criteria and Foreign key columns.
591 --
592 -- Parameters:
593 --
594 --------------------------------------------------------------------------------
595 function BuildSQL(
596 P_MSG_ID in varchar2,
597 P_MSG_CODE in varchar2,
598 P_L_MTE_MSG_TYPE in varchar2,
599 P_MSG_STATUS in varchar2,
600 P_REFERENCE_ID in varchar2,
601 P_OPP_REFERENCE_ID in varchar2,
602 P_RECIPIENT_NAME in varchar2,
603 P_SENDER_NAME in varchar2,
604 P_ADAPTER_NAME in varchar2,
605 P_FE_NAME in varchar2,
606 P_ORDER_ID in varchar2,
607 P_WI_INSTANCE_ID in varchar2,
608 P_FA_INSTANCE_ID in varchar2) return boolean is
609
610 I_WHERE varchar2(2000);
611 begin
612
613 InitialiseDomain('L_MTE_MSG_TYPE');
614 InitialiseDomain('MSG_STATUS');
615
616 -- Build up the Where clause
617 I_WHERE := I_WHERE || ' where L_MTE.MSG_CODE = MSG.MSG_CODE';
618
619 begin
620 XNP_WSGL.BuildWhere(P_MSG_ID, 'MSG.MSG_ID', XNP_WSGL.TYPE_NUMBER, I_WHERE);
621 exception
622 when others then
623 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR_QRY, SQLERRM,
624 'SFM iMessage Diagnostics'||' : '||'Message Details', DEF_BODY_ATTRIBUTES, NULL,
625 XNP_WSGL.MsgGetText(210,XNP_WSGLM.MSG210_INVALID_QRY,'ID'));
626 return false;
627 end;
628 XNP_WSGL.BuildWhere(P_MSG_CODE, 'MSG.MSG_CODE', XNP_WSGL.TYPE_CHAR_UPPER, I_WHERE);
629 XNP_WSGL.BuildWhere(XNP_WSGL.DomainValue(D_L_MTE_MSG_TYPE, P_L_MTE_MSG_TYPE), 'L_MTE.MSG_TYPE', XNP_WSGL.TYPE_CHAR_UPPER, I_WHERE);
630 XNP_WSGL.BuildWhere(XNP_WSGL.DomainValue(D_MSG_STATUS, P_MSG_STATUS), 'MSG.MSG_STATUS', XNP_WSGL.TYPE_CHAR, I_WHERE);
631 XNP_WSGL.BuildWhere(P_REFERENCE_ID, 'MSG.REFERENCE_ID', XNP_WSGL.TYPE_CHAR, I_WHERE);
632 XNP_WSGL.BuildWhere(P_OPP_REFERENCE_ID, 'MSG.OPP_REFERENCE_ID', XNP_WSGL.TYPE_CHAR, I_WHERE);
633 XNP_WSGL.BuildWhere(P_RECIPIENT_NAME, 'MSG.RECIPIENT_NAME', XNP_WSGL.TYPE_CHAR, I_WHERE);
634 XNP_WSGL.BuildWhere(P_SENDER_NAME, 'MSG.SENDER_NAME', XNP_WSGL.TYPE_CHAR, I_WHERE);
635 XNP_WSGL.BuildWhere(P_ADAPTER_NAME, 'MSG.ADAPTER_NAME', XNP_WSGL.TYPE_CHAR, I_WHERE);
636 XNP_WSGL.BuildWhere(P_FE_NAME, 'MSG.FE_NAME', XNP_WSGL.TYPE_CHAR, I_WHERE);
637 XNP_WSGL.BuildWhere(P_ORDER_ID, 'MSG.ORDER_ID', XNP_WSGL.TYPE_CHAR, I_WHERE);
638 XNP_WSGL.BuildWhere(P_WI_INSTANCE_ID, 'MSG.WI_INSTANCE_ID', XNP_WSGL.TYPE_CHAR, I_WHERE);
639 XNP_WSGL.BuildWhere(P_FA_INSTANCE_ID, 'MSG.FA_INSTANCE_ID', XNP_WSGL.TYPE_CHAR, I_WHERE);
640
641 ZONE_SQL := 'SELECT MSG.MSG_ID,
642 ''xnp_web_utils.show_msg_body?p_msg_id=''||MSG.MSG_ID,
643 MSG.MSG_CODE,
644 MSG.MSG_STATUS,
645 MSG.DIRECTION_INDICATOR,
646 MSG.REFERENCE_ID,
647 MSG.OPP_REFERENCE_ID,
648 MSG.MSG_VERSION,
649 MSG.MSG_CREATION_DATE,
650 MSG.SEND_RCV_DATE,
651 MSG.RECIPIENT_NAME,
652 MSG.SENDER_NAME,
653 MSG.ADAPTER_NAME,
654 MSG.FE_NAME
655 FROM XNP_MSGS MSG,
656 XNP_MSG_TYPES_B L_MTE';
657
658 ZONE_SQL := ZONE_SQL || I_WHERE;
659 ZONE_SQL := ZONE_SQL || ' ORDER BY MSG.MSG_ID Desc ';
660 return true;
661
662 exception
663 when others then
664 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
665 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.BuildSQL');
666 return false;
667 end;
668
669
670 --------------------------------------------------------------------------------
671 -- Name: xnp_msg_diagnostics$xnp_msgs.FormQuery
672 --
673 -- Description: This procedure builds an HTML form for entry of query criteria.
674 -- The criteria entered are to restrict the query of the 'XNP_MSGS'
675 -- module component (Message Details).
676 --
677 -- Parameters:
678 --
679 --------------------------------------------------------------------------------
680 procedure FormQuery(
681 Z_DIRECT_CALL in boolean,
682 Z_CHK in varchar2) is
683 begin
684
685 if not Z_DIRECT_CALL then
686 if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
687 return;
688 end if;
689 end if;
690
691 XNP_WSGL.OpenPageHead('SFM iMessage Diagnostics'||' : '||'Message Details');
692 CreateQueryJavaScript;
693 -- Added for iHelp
694 htp.p('<SCRIPT> ');
695 icx_admin_sig.help_win_script('xnpDiag_msg', null, 'XNP');
696 htp.p('</SCRIPT>');
697 -- <<
698 xnp_msg_diagnostics$.TemplateHeader(TRUE,0);
699 XNP_WSGL.ClosePageHead;
700
701 -- Added for iHelp
702 htp.p('<A HREF="javascript:help_window()"');
703 htp.p('onMouseOver="window.status='||''''||'Help'||''''||';return true">');
704 htp.p(htf.img('/OA_MEDIA/afhelp.gif'));
705 htp.p('</A>');
706 htp.p(htf.nl);
707 -- <<
708
709 XNP_WSGL.OpenPageBody(FALSE, p_attributes=>QF_BODY_ATTRIBUTES);
710
711 htp.p(htf.bold(fnd_message.get_string('XNP','WEB_TITLE')));
712 xnp_msg_diagnostics$.FirstPage(TRUE);
713 htp.p(htf.header(1,fnd_message.get_string('XNP','WEB_XNPMSGDG_DETAILS_TITLE')));
714 htp.para;
715 htp.p(XNP_WSGL.MsgGetText(116,XNP_WSGLM.DSP116_ENTER_QRY_CAPTION,'Message Details'));
716 htp.para;
717
718 htp.formOpen(curl => 'xnp_msg_diagnostics$xnp_msgs.actionquery', cattributes => 'NAME="frmZero"');
719
720 XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE);
721
722 XNP_WSGL.LayoutRowStart;
723 for i in 1..QF_NUMBER_OF_COLUMNS loop
724 XNP_WSGL.LayoutHeader(22, 'LEFT', NULL);
725 XNP_WSGL.LayoutHeader(20, 'LEFT', NULL);
726 end loop;
727 XNP_WSGL.LayoutRowEnd;
728
729 XNP_WSGL.LayoutRowStart('TOP');
730 XNP_WSGL.LayoutData(htf.bold('ID:'));
731 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('MSG_ID', '20', FALSE));
732 XNP_WSGL.LayoutRowEnd;
733 XNP_WSGL.LayoutRowStart('TOP');
734 XNP_WSGL.LayoutData(htf.bold('Code:'));
735 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('MSG_CODE', '20', FALSE) || ' ' ||
736 XNP_WSGJSL.LOVButton('MSG_CODE',LOV_BUTTON_TEXT));
737 XNP_WSGL.LayoutRowEnd;
738 XNP_WSGL.LayoutRowStart('TOP');
739 XNP_WSGL.LayoutData(htf.bold('Event Indicator:'));
740 InitialiseDomain('L_MTE_MSG_TYPE');
741 XNP_WSGL.LayoutData(XNP_WSGL.BuildDVControl(D_L_MTE_MSG_TYPE, XNP_WSGL.CTL_QUERY));
742 XNP_WSGL.LayoutRowEnd;
743 XNP_WSGL.LayoutRowStart('TOP');
744 XNP_WSGL.LayoutData(htf.bold('Status:'));
745 InitialiseDomain('MSG_STATUS');
746 XNP_WSGL.LayoutData(XNP_WSGL.BuildDVControl(D_MSG_STATUS, XNP_WSGL.CTL_QUERY));
747 XNP_WSGL.LayoutRowEnd;
748 XNP_WSGL.LayoutRowStart('TOP');
749 XNP_WSGL.LayoutData(htf.bold('Ref ID:'));
750 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('REFERENCE_ID', '20', FALSE));
751 XNP_WSGL.LayoutRowEnd;
752 XNP_WSGL.LayoutRowStart('TOP');
753 XNP_WSGL.LayoutData(htf.bold('Opp Ref ID:'));
754 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('OPP_REFERENCE_ID', '20', FALSE));
755 XNP_WSGL.LayoutRowEnd;
756 XNP_WSGL.LayoutRowStart('TOP');
757 XNP_WSGL.LayoutData(htf.bold('Receiver:'));
758 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('RECIPIENT_NAME', '20', FALSE));
759 XNP_WSGL.LayoutRowEnd;
760 XNP_WSGL.LayoutRowStart('TOP');
761 XNP_WSGL.LayoutData(htf.bold('Sender:'));
762 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('SENDER_NAME', '20', FALSE));
763 XNP_WSGL.LayoutRowEnd;
764 XNP_WSGL.LayoutRowStart('TOP');
765 XNP_WSGL.LayoutData(htf.bold('Adapter (Consumer):'));
766 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('ADAPTER_NAME', '20', FALSE));
767 XNP_WSGL.LayoutRowEnd;
768 XNP_WSGL.LayoutRowStart('TOP');
769 XNP_WSGL.LayoutData(htf.bold('Consumer FE:'));
770 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('FE_NAME', '20', FALSE));
771 XNP_WSGL.LayoutRowEnd;
772 XNP_WSGL.LayoutRowStart('TOP');
773 XNP_WSGL.LayoutData(htf.bold('Order ID:'));
774 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('ORDER_ID', '20', FALSE));
775 XNP_WSGL.LayoutRowEnd;
776 XNP_WSGL.LayoutRowStart('TOP');
777 XNP_WSGL.LayoutData(htf.bold('Work Item Instance ID:'));
778 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('WI_INSTANCE_ID', '20', FALSE));
779 XNP_WSGL.LayoutRowEnd;
780 XNP_WSGL.LayoutRowStart('TOP');
781 XNP_WSGL.LayoutData(htf.bold('FA Instance ID:'));
782 XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('FA_INSTANCE_ID', '20', FALSE));
783 XNP_WSGL.LayoutRowEnd;
784
785 XNP_WSGL.LayoutClose;
786
787 htp.p ('<SCRIPT><!--');
788 htp.p ('document.write (''<input type=hidden name="Z_ACTION">'')');
789 htp.p ('//-->');
790 htp.p ('</SCRIPT>');
791 htp.p ('<SCRIPT><!--');
792 htp.p ('document.write (''' || htf.formSubmit('', htf.escape_sc(QF_QUERY_BUT_CAPTION), 'onClick="this.form.Z_ACTION.value=\''' || QF_QUERY_BUT_ACTION || '\''"') || ''')');
793 htp.p ('//-->');
794 htp.p ('</SCRIPT>');
795
796 if XNP_WSGL.IsSupported ('NOSCRIPT')
797 then
798
799 htp.p ('<NOSCRIPT>');
800 htp.formSubmit('Z_ACTION', htf.escape_sc(QF_QUERY_BUT_CAPTION));
801 htp.p ('</NOSCRIPT>');
802
803 end if;
804 htp.formReset(htf.escape_sc(QF_CLEAR_BUT_CAPTION));
805
806 XNP_WSGL.HiddenField('Z_CHK',
807 to_char(XNP_WSGL.Checksum('')));
808 htp.formClose;
809
810 htp.p(htf.img('/OA_MEDIA/FNDLOGOS.gif'));
811
812 XNP_WSGL.ClosePageBody;
813
814 exception
815 when others then
816 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
817 QF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.FormQuery');
818 XNP_WSGL.ClosePageBody;
819 end;
820
821 --------------------------------------------------------------------------------
822 -- Name: xnp_msg_diagnostics$xnp_msgs.FormView
823 --
824 -- Description: This procedure builds an HTML form for view/update of fields in
825 -- the 'XNP_MSGS' module component (Message Details).
826 --
827 -- Parameters: Z_FORM_STATUS Status of the form
828 --
829 --------------------------------------------------------------------------------
830 procedure FormView(Z_FORM_STATUS in number) is
831
832
833 begin
834
835 XNP_WSGL.OpenPageHead('SFM iMessage Diagnostics'||' : '||'Message Details');
836 xnp_msg_diagnostics$.TemplateHeader(TRUE,0);
837 XNP_WSGL.ClosePageHead;
838
839 XNP_WSGL.OpenPageBody(FALSE, p_attributes=>VF_BODY_ATTRIBUTES);
840
841 htp.p(htf.bold(fnd_message.get_string('XNP','WEB_TITLE')));
842 htp.p(htf.header(1,fnd_message.get_string('XNP','WEB_XNPMSGDG_DETAILS_TITLE')));
843 InitialiseDomain('L_MTE_MSG_TYPE');
844 InitialiseDomain('MSG_STATUS');
845 InitialiseDomain('DIRECTION_INDICATOR');
846 InitialiseDomain('PRIORITY');
847
848
849
850 FORM_VAL.MSG_ID := CURR_VAL.MSG_ID;
851 FORM_VAL.XML_PAYLOAD_LINK := NBT_VAL.XML_PAYLOAD_LINK;
852 FORM_VAL.MSG_CODE := CURR_VAL.MSG_CODE;
853 FORM_VAL.L_MTE_MSG_TYPE := XNP_WSGL.DomainMeaning(D_L_MTE_MSG_TYPE, NBT_VAL.L_MTE_MSG_TYPE);
854 FORM_VAL.MSG_STATUS := XNP_WSGL.DomainMeaning(D_MSG_STATUS, CURR_VAL.MSG_STATUS);
855 FORM_VAL.DIRECTION_INDICATOR := XNP_WSGL.DomainMeaning(D_DIRECTION_INDICATOR, CURR_VAL.DIRECTION_INDICATOR);
856 FORM_VAL.REFERENCE_ID := CURR_VAL.REFERENCE_ID;
857 FORM_VAL.OPP_REFERENCE_ID := CURR_VAL.OPP_REFERENCE_ID;
858 FORM_VAL.VERSION := CURR_VAL.MSG_VERSION;
859 FORM_VAL.MSG_CREATION_DATE := ltrim(to_char(CURR_VAL.MSG_CREATION_DATE, 'DD-MON-RRRR HH24:MI:SS'));
860 FORM_VAL.SEND_RCV_DATE := ltrim(to_char(CURR_VAL.SEND_RCV_DATE, 'DD-MON-RRRR'));
861 FORM_VAL.RECIPIENT_NAME := CURR_VAL.RECIPIENT_NAME;
862 FORM_VAL.SENDER_NAME := CURR_VAL.SENDER_NAME;
863 FORM_VAL.ADAPTER_NAME := CURR_VAL.ADAPTER_NAME;
864 FORM_VAL.FE_NAME := CURR_VAL.FE_NAME;
865 FORM_VAL.ORDER_ID := CURR_VAL.ORDER_ID;
866 FORM_VAL.WI_INSTANCE_ID := CURR_VAL.WI_INSTANCE_ID;
867 FORM_VAL.FA_INSTANCE_ID := CURR_VAL.FA_INSTANCE_ID;
868 FORM_VAL.PRIORITY := XNP_WSGL.DomainMeaning(D_PRIORITY, NBT_VAL.PRIORITY);
869 FORM_VAL.LAST_COMPILED_DATE := ltrim(to_char(NBT_VAL.LAST_COMPILED_DATE, 'DD-MON-RRRR'));
870 FORM_VAL.DESCRIPTION := CURR_VAL.DESCRIPTION;
871 FORM_VAL.RESEND_LINK := NBT_VAL.RESEND_LINK;
872
873 /*
874
875 Fixed Bug# 1808775 Procedure fails due to message length > 2000
876 Now this logic will never be executed since we only display the
877 body text directly using text/xml using a browser capable of XML
878 rendering - rraheja 05/31/2001
879
880 l_amount_to_read := DBMS_LOB.GETLENGTH(CURR_VAL_BODY_TEXT) ;
881 DBMS_LOB.READ(lob_loc => CURR_VAL_BODY_TEXT,
882 amount => l_amount_to_read,
883 offset => 1,
884 buffer => FORM_VAL.BODY_TEXT ) ;
885 FORM_VAL.BODY_TEXT := CURR_VAL.BODY_TEXT;
886
887 */
888
889 FORM_VAL.L_MTE_DEFAULT_PROCESS_LOGIC := NBT_VAL.L_MTE_DEFAULT_PROCESS_LOGIC;
890 FORM_VAL.L_MTE_IN_PROCESS_LOGIC := NBT_VAL.L_MTE_IN_PROCESS_LOGIC;
891 FORM_VAL.L_MTE_VALIDATE_LOGIC := NBT_VAL.L_MTE_VALIDATE_LOGIC;
892 FORM_VAL.L_MTE_OUT_PROCESS_LOGIC := NBT_VAL.L_MTE_OUT_PROCESS_LOGIC;
893
894 if Z_FORM_STATUS = XNP_WSGL.FORM_STATUS_ERROR then
895 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_cg$errors.GetErrors,
896 'SFM iMessage Diagnostics'||' : '||'Message Details', VF_BODY_ATTRIBUTES);
897 elsif Z_FORM_STATUS = XNP_WSGL.FORM_STATUS_UPD then
898 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_SUCCESS, XNP_WSGL.MsgGetText(207, XNP_WSGLM.MSG207_ROW_UPDATED),
899 'SFM iMessage Diagnostics'||' : '||'Message Details', VF_BODY_ATTRIBUTES);
900 elsif Z_FORM_STATUS = XNP_WSGL.FORM_STATUS_INS then
901 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_SUCCESS, XNP_WSGL.MsgGetText(208, XNP_WSGLM.MSG208_ROW_INSERTED),
902 'SFM iMessage Diagnostics'||' : '||'Message Details', VF_BODY_ATTRIBUTES);
903 end if;
904
905
906 XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE, P_BORDER=>TRUE);
907
908 XNP_WSGL.LayoutRowStart;
909 for i in 1..VF_NUMBER_OF_COLUMNS loop
910 XNP_WSGL.LayoutHeader(36, 'LEFT', NULL);
911 XNP_WSGL.LayoutHeader(240, 'LEFT', NULL);
912 end loop;
913 XNP_WSGL.LayoutRowEnd;
914
915 XNP_WSGL.LayoutRowStart('TOP');
916 XNP_WSGL.LayoutData(htf.bold('ID:'));
917 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.MSG_ID));
918 XNP_WSGL.LayoutRowEnd;
919 if NBT_VAL.XML_PAYLOAD_LINK is not null then
920 XNP_WSGL.LayoutRowStart('TOP');
921 XNP_WSGL.LayoutData(htf.anchor2(FORM_VAL.XML_PAYLOAD_LINK, 'XML'));
922 XNP_WSGL.LayoutData('');
923 XNP_WSGL.LayoutRowEnd;
924 end if;
925 XNP_WSGL.LayoutRowStart('TOP');
926 XNP_WSGL.LayoutData(htf.bold('Code:'));
927 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.MSG_CODE));
928 XNP_WSGL.LayoutRowEnd;
929 XNP_WSGL.LayoutRowStart('TOP');
930 XNP_WSGL.LayoutData(htf.bold('Event Indicator:'));
931 XNP_WSGL.LayoutData(FORM_VAL.L_MTE_MSG_TYPE);
932 XNP_WSGL.LayoutRowEnd;
933 XNP_WSGL.LayoutRowStart('TOP');
934 XNP_WSGL.LayoutData(htf.bold('Status:'));
935 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.MSG_STATUS));
936 XNP_WSGL.LayoutRowEnd;
937 XNP_WSGL.LayoutRowStart('TOP');
938 XNP_WSGL.LayoutData(htf.bold('In/Out:'));
939 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.DIRECTION_INDICATOR));
940 XNP_WSGL.LayoutRowEnd;
941 XNP_WSGL.LayoutRowStart('TOP');
942 XNP_WSGL.LayoutData(htf.bold('Ref ID:'));
943 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.REFERENCE_ID));
944 XNP_WSGL.LayoutRowEnd;
945 XNP_WSGL.LayoutRowStart('TOP');
946 XNP_WSGL.LayoutData(htf.bold('Opp Ref ID:'));
947 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.OPP_REFERENCE_ID));
948 XNP_WSGL.LayoutRowEnd;
949 XNP_WSGL.LayoutRowStart('TOP');
950 XNP_WSGL.LayoutData(htf.bold('Version:'));
951 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.VERSION));
952 XNP_WSGL.LayoutRowEnd;
953 XNP_WSGL.LayoutRowStart('TOP');
954 XNP_WSGL.LayoutData(htf.bold('Created On:'));
955 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.MSG_CREATION_DATE));
956 XNP_WSGL.LayoutRowEnd;
957 XNP_WSGL.LayoutRowStart('TOP');
958 XNP_WSGL.LayoutData(htf.bold('Processed On:'));
959 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.SEND_RCV_DATE));
960 XNP_WSGL.LayoutRowEnd;
961 XNP_WSGL.LayoutRowStart('TOP');
962 XNP_WSGL.LayoutData(htf.bold('Receiver:'));
963 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.RECIPIENT_NAME));
964 XNP_WSGL.LayoutRowEnd;
965 XNP_WSGL.LayoutRowStart('TOP');
966 XNP_WSGL.LayoutData(htf.bold('Sender:'));
967 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.SENDER_NAME));
968 XNP_WSGL.LayoutRowEnd;
969 XNP_WSGL.LayoutRowStart('TOP');
970 XNP_WSGL.LayoutData(htf.bold('Adapter (Consumer):'));
971 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.ADAPTER_NAME));
972 XNP_WSGL.LayoutRowEnd;
973 XNP_WSGL.LayoutRowStart('TOP');
974 XNP_WSGL.LayoutData(htf.bold('Consumer FE:'));
975 XNP_WSGL.LayoutData(htf.bold(FORM_VAL.FE_NAME));
976 XNP_WSGL.LayoutRowEnd;
977 XNP_WSGL.LayoutRowStart('TOP');
978 XNP_WSGL.LayoutData(htf.bold('Order ID:'));
979 XNP_WSGL.LayoutData(FORM_VAL.ORDER_ID);
980 XNP_WSGL.LayoutRowEnd;
981 XNP_WSGL.LayoutRowStart('TOP');
982 XNP_WSGL.LayoutData(htf.bold('Work Item Instance ID:'));
983 XNP_WSGL.LayoutData(FORM_VAL.WI_INSTANCE_ID);
984 XNP_WSGL.LayoutRowEnd;
985 XNP_WSGL.LayoutRowStart('TOP');
986 XNP_WSGL.LayoutData(htf.bold('FA Instance ID:'));
987 XNP_WSGL.LayoutData(FORM_VAL.FA_INSTANCE_ID);
988 XNP_WSGL.LayoutRowEnd;
989 XNP_WSGL.LayoutRowStart('TOP');
990 XNP_WSGL.LayoutData(htf.bold('Priority:'));
991 XNP_WSGL.LayoutData(FORM_VAL.PRIORITY);
992 XNP_WSGL.LayoutRowEnd;
993 XNP_WSGL.LayoutRowStart('TOP');
994 XNP_WSGL.LayoutData(htf.bold('Message Definition Last Compiled On:'));
995 XNP_WSGL.LayoutData(FORM_VAL.LAST_COMPILED_DATE);
996 XNP_WSGL.LayoutRowEnd;
997 XNP_WSGL.LayoutRowStart('TOP');
998 XNP_WSGL.LayoutData(htf.bold('Error Description:'));
999 XNP_WSGL.LayoutData(replace(FORM_VAL.DESCRIPTION, '
1000 ', '<BR>
1001 '));
1002 XNP_WSGL.LayoutRowEnd;
1003 if NBT_VAL.RESEND_LINK is not null then
1004 XNP_WSGL.LayoutRowStart('TOP');
1005 XNP_WSGL.LayoutData(htf.anchor2(FORM_VAL.RESEND_LINK, 'Retry Message'));
1006 XNP_WSGL.LayoutData('');
1007 XNP_WSGL.LayoutRowEnd;
1008 end if;
1009 XNP_WSGL.LayoutRowStart('TOP');
1010 XNP_WSGL.LayoutData(htf.bold('Default Process Logic:'));
1011 XNP_WSGL.LayoutData(replace(FORM_VAL.L_MTE_DEFAULT_PROCESS_LOGIC, '
1012 ', '<BR>
1013 '));
1014 XNP_WSGL.LayoutRowEnd;
1015 XNP_WSGL.LayoutRowStart('TOP');
1016 XNP_WSGL.LayoutData(htf.bold('Process Inbound Logic:'));
1017 XNP_WSGL.LayoutData(replace(FORM_VAL.L_MTE_IN_PROCESS_LOGIC, '
1018 ', '<BR>
1019 '));
1020 XNP_WSGL.LayoutRowEnd;
1021 XNP_WSGL.LayoutRowStart('TOP');
1022 XNP_WSGL.LayoutData(htf.bold('Validate Logic:'));
1023 XNP_WSGL.LayoutData(replace(FORM_VAL.L_MTE_VALIDATE_LOGIC, '
1024 ', '<BR>
1025 '));
1026 XNP_WSGL.LayoutRowEnd;
1027 XNP_WSGL.LayoutRowStart('TOP');
1028 XNP_WSGL.LayoutData(htf.bold('Process Outbound Logic:'));
1029 XNP_WSGL.LayoutData(replace(FORM_VAL.L_MTE_OUT_PROCESS_LOGIC, '
1030 ', '<BR>
1031 '));
1032 XNP_WSGL.LayoutRowEnd;
1033
1034 XNP_WSGL.LayoutClose;
1035
1036
1037
1038
1039
1040
1041 XNP_WSGL.ReturnLinks('0.1', XNP_WSGL.MENU_LONG);
1042 XNP_WSGL.NavLinks;
1043
1044
1045 htp.p(htf.img('/OA_MEDIA/FNDLOGOS.gif'));
1046
1047 XNP_WSGL.ClosePageBody;
1048
1049 exception
1050 when others then
1051 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1052 VF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.FormView');
1053 XNP_WSGL.ClosePageBody;
1054 end;
1055
1056 --------------------------------------------------------------------------------
1057 procedure retry_message
1058 is
1059 begin
1060 htp.htmlopen;
1061 htp.bodyopen;
1062 htp.p('Please use the notification for retrying this message.') ;
1063 htp.bodyclose;
1064 htp.htmlclose;
1065 end;
1066 --------------------------------------------------------------------------------
1067 -- Name: xnp_msg_diagnostics$xnp_msgs.QueryView
1068 --
1069 -- Description: Queries the details of a single row in preparation for display.
1070 --
1071 -- Parameters:
1072 --
1073 --------------------------------------------------------------------------------
1074 procedure QueryView(
1075 P_MSG_ID in varchar2,
1076 Z_POST_DML in boolean,
1077 Z_FORM_STATUS in number,
1078 Z_DIRECT_CALL in boolean,
1079 Z_CHK in varchar2) is
1080 begin
1081
1082 XNP_WSGL.RegisterURL('xnp_msg_diagnostics$xnp_msgs.queryview');
1083 XNP_WSGL.AddURLParam('P_MSG_ID', P_MSG_ID);
1084 XNP_WSGL.AddURLParam('Z_CHK', Z_CHK);
1085 if not Z_DIRECT_CALL then
1086 if not XNP_WSGL.ValidateChecksum('' ||
1087 P_MSG_ID, Z_CHK) then
1088 return;
1089 end if;
1090 end if;
1091
1092
1093 if P_MSG_ID is not null then
1094 CURR_VAL.MSG_ID := P_MSG_ID;
1095 end if;
1096 if Z_POST_DML then
1097
1098 SELECT L_MTE.MSG_TYPE,
1099 L_MTE.PRIORITY,
1100 L_MTE.LAST_COMPILED_DATE,
1101 -- decode (MSG.MSG_STATUS, 'FAILED', 'xnp_message.fix?p_msg_id='||MSG.MSG_ID, NULL),
1102 decode (MSG.MSG_STATUS, 'FAILED', ' xnp_msg_diagnostics$xnp_msgs.retry_message', NULL),
1103 L_MTE.DEFAULT_PROCESS_LOGIC,
1104 L_MTE.IN_PROCESS_LOGIC,
1105 L_MTE.VALIDATE_LOGIC,
1106 L_MTE.OUT_PROCESS_LOGIC
1107 INTO NBT_VAL.L_MTE_MSG_TYPE,
1108 NBT_VAL.PRIORITY,
1109 NBT_VAL.LAST_COMPILED_DATE,
1110 NBT_VAL.RESEND_LINK,
1111 NBT_VAL.L_MTE_DEFAULT_PROCESS_LOGIC,
1112 NBT_VAL.L_MTE_IN_PROCESS_LOGIC,
1113 NBT_VAL.L_MTE_VALIDATE_LOGIC,
1114 NBT_VAL.L_MTE_OUT_PROCESS_LOGIC
1115 FROM XNP_MSGS MSG,
1116 XNP_MSG_TYPES_B L_MTE
1117 WHERE MSG.MSG_ID = CURR_VAL.MSG_ID
1118 AND L_MTE.MSG_CODE = MSG.MSG_CODE
1119 ;
1120
1121 else
1122
1123 SELECT MSG.MSG_ID,
1124 MSG.MSG_CODE,
1125 L_MTE.MSG_TYPE,
1126 MSG.MSG_STATUS,
1127 MSG.DIRECTION_INDICATOR,
1128 MSG.REFERENCE_ID,
1129 MSG.OPP_REFERENCE_ID,
1130 MSG.MSG_VERSION,
1131 MSG.MSG_CREATION_DATE,
1132 MSG.SEND_RCV_DATE,
1133 MSG.RECIPIENT_NAME,
1134 MSG.SENDER_NAME,
1135 MSG.ADAPTER_NAME,
1136 MSG.FE_NAME,
1137 MSG.ORDER_ID,
1138 MSG.WI_INSTANCE_ID,
1139 MSG.FA_INSTANCE_ID,
1140 L_MTE.PRIORITY,
1141 L_MTE.LAST_COMPILED_DATE,
1142 MSG.DESCRIPTION,
1143 -- decode (MSG.MSG_STATUS, 'FAILED', 'xnp_message.fix?p_msg_id='||MSG.MSG_ID, NULL),
1144 decode (MSG.MSG_STATUS, 'FAILED', ' xnp_msg_diagnostics$xnp_msgs.retry_message', NULL),
1145 MSG.BODY_TEXT,
1146 L_MTE.DEFAULT_PROCESS_LOGIC,
1147 L_MTE.IN_PROCESS_LOGIC,
1148 L_MTE.VALIDATE_LOGIC,
1149 L_MTE.OUT_PROCESS_LOGIC
1150 INTO CURR_VAL.MSG_ID,
1151 CURR_VAL.MSG_CODE,
1152 NBT_VAL.L_MTE_MSG_TYPE,
1153 CURR_VAL.MSG_STATUS,
1154 CURR_VAL.DIRECTION_INDICATOR,
1155 CURR_VAL.REFERENCE_ID,
1156 CURR_VAL.OPP_REFERENCE_ID,
1157 CURR_VAL.MSG_VERSION,
1158 CURR_VAL.MSG_CREATION_DATE,
1159 CURR_VAL.SEND_RCV_DATE,
1160 CURR_VAL.RECIPIENT_NAME,
1161 CURR_VAL.SENDER_NAME,
1162 CURR_VAL.ADAPTER_NAME,
1163 CURR_VAL.FE_NAME,
1164 CURR_VAL.ORDER_ID,
1165 CURR_VAL.WI_INSTANCE_ID,
1166 CURR_VAL.FA_INSTANCE_ID,
1167 NBT_VAL.PRIORITY,
1168 NBT_VAL.LAST_COMPILED_DATE,
1169 CURR_VAL.DESCRIPTION,
1170 NBT_VAL.RESEND_LINK,
1171 CURR_VAL_BODY_TEXT, -- CLOB changes --
1172 NBT_VAL.L_MTE_DEFAULT_PROCESS_LOGIC,
1173 NBT_VAL.L_MTE_IN_PROCESS_LOGIC,
1174 NBT_VAL.L_MTE_VALIDATE_LOGIC,
1175 NBT_VAL.L_MTE_OUT_PROCESS_LOGIC
1176 FROM XNP_MSGS MSG,
1177 XNP_MSG_TYPES_B L_MTE
1178 WHERE MSG.MSG_ID = CURR_VAL.MSG_ID
1179 AND L_MTE.MSG_CODE = MSG.MSG_CODE
1180 ;
1181
1182 end if;
1183
1184 NBT_VAL.XML_PAYLOAD_LINK := 'xnp_web_utils.show_msg_body?p_msg_id='||CURR_VAL.MSG_ID;
1185
1186 if not PostQuery(Z_POST_DML) then
1187 FormView(XNP_WSGL.FORM_STATUS_ERROR);
1188 else
1189 FormView(Z_FORM_STATUS);
1190 end if;
1191
1192 exception
1193 when NO_DATA_FOUND then
1194 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_WSGL.MsgGetText(204, XNP_WSGLM.MSG204_ROW_DELETED),
1195 'SFM iMessage Diagnostics'||' : '||'Message Details', VF_BODY_ATTRIBUTES);
1196 when others then
1197 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1198 VF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.QueryView');
1199 end;
1200 --------------------------------------------------------------------------------
1201 -- Name: xnp_msg_diagnostics$xnp_msgs.QueryList
1202 --
1203 -- Description: This procedure builds the Record list for the 'XNP_MSGS'
1204 -- module component (Message Details).
1205 --
1206 -- The Record List displays context information for records which
1207 -- match the specified query criteria.
1208 -- Sets of records are displayed (10 records at a time)
1209 -- with Next/Previous buttons to get other record sets.
1210 --
1211 -- The first context column will be created as a link to the
1212 -- xnp_msg_diagnostics$xnp_msgs.FormView procedure for display of more details
1213 -- of that particular row.
1214 --
1215 -- Parameters: P_MSG_ID - ID
1216 -- P_MSG_CODE - Code
1217 -- P_L_MTE_MSG_TYPE - Event Indicator
1218 -- P_MSG_STATUS - Status
1219 -- P_REFERENCE_ID - Ref ID
1220 -- P_OPP_REFERENCE_ID - Opp Ref ID
1221 -- P_RECIPIENT_NAME - Receiver
1222 -- P_SENDER_NAME - Sender
1223 -- P_ADAPTER_NAME - Adapter (Consumer)
1224 -- P_FE_NAME - Consumer FE
1225 -- P_ORDER_ID - Order ID
1226 -- P_WI_INSTANCE_ID - Work Item Instance ID
1227 -- P_FA_INSTANCE_ID - FA Instance ID
1228 -- Z_START - First record to display
1229 -- Z_ACTION - Next or Previous set
1230 --
1231 --------------------------------------------------------------------------------
1232 procedure QueryList(
1233 P_MSG_ID in varchar2,
1234 P_MSG_CODE in varchar2,
1235 P_L_MTE_MSG_TYPE in varchar2,
1236 P_MSG_STATUS in varchar2,
1237 P_REFERENCE_ID in varchar2,
1238 P_OPP_REFERENCE_ID in varchar2,
1239 P_RECIPIENT_NAME in varchar2,
1240 P_SENDER_NAME in varchar2,
1241 P_ADAPTER_NAME in varchar2,
1242 P_FE_NAME in varchar2,
1243 P_ORDER_ID in varchar2,
1244 P_WI_INSTANCE_ID in varchar2,
1245 P_FA_INSTANCE_ID in varchar2,
1246 Z_START in varchar2,
1247 Z_ACTION in varchar2,
1248 Z_DIRECT_CALL in boolean,
1249 Z_CHK in varchar2) is
1250
1251 L_VF_FRAME varchar2(20) := null;
1252 I_WHERE varchar2(2000) := '';
1253 I_CURSOR integer;
1254 I_VOID integer;
1255 I_ROWS_FETCHED integer := 0;
1256 I_TOTAL_ROWS integer := 0;
1257 I_START number(6) := to_number(Z_START);
1258 I_COUNT number(10) := 0;
1259 I_OF_TOTAL_TEXT varchar2(200) := '';
1260 I_NEXT_BUT boolean;
1261 I_PREV_BUT boolean;
1262 L_CHECKSUM varchar2(10);
1263
1264 begin
1265
1266 XNP_WSGL.RegisterURL('xnp_msg_diagnostics$xnp_msgs.querylist');
1267 XNP_WSGL.AddURLParam('P_MSG_ID', P_MSG_ID);
1268 XNP_WSGL.AddURLParam('P_MSG_CODE', P_MSG_CODE);
1269 XNP_WSGL.AddURLParam('P_L_MTE_MSG_TYPE', P_L_MTE_MSG_TYPE);
1270 XNP_WSGL.AddURLParam('P_MSG_STATUS', P_MSG_STATUS);
1271 XNP_WSGL.AddURLParam('P_REFERENCE_ID', P_REFERENCE_ID);
1272 XNP_WSGL.AddURLParam('P_OPP_REFERENCE_ID', P_OPP_REFERENCE_ID);
1273 XNP_WSGL.AddURLParam('P_RECIPIENT_NAME', P_RECIPIENT_NAME);
1274 XNP_WSGL.AddURLParam('P_SENDER_NAME', P_SENDER_NAME);
1275 XNP_WSGL.AddURLParam('P_ADAPTER_NAME', P_ADAPTER_NAME);
1276 XNP_WSGL.AddURLParam('P_FE_NAME', P_FE_NAME);
1277 XNP_WSGL.AddURLParam('P_ORDER_ID', P_ORDER_ID);
1278 XNP_WSGL.AddURLParam('P_WI_INSTANCE_ID', P_WI_INSTANCE_ID);
1279 XNP_WSGL.AddURLParam('P_FA_INSTANCE_ID', P_FA_INSTANCE_ID);
1280 XNP_WSGL.AddURLParam('Z_START', Z_START);
1281 XNP_WSGL.AddURLParam('Z_ACTION', Z_ACTION);
1282 XNP_WSGL.AddURLParam('Z_CHK', Z_CHK);
1283 if not Z_DIRECT_CALL then
1284 if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
1285 return;
1286 end if;
1287 end if;
1288
1289 if (Z_ACTION = RL_QUERY_BUT_ACTION) or (Z_ACTION = RL_QUERY_BUT_CAPTION) then
1290 FormQuery(
1291 Z_DIRECT_CALL=>TRUE);
1292 return;
1293 end if;
1294
1295 XNP_WSGL.OpenPageHead('SFM iMessage Diagnostics'||' : '||'Message Details');
1296 CreateListJavaScript;
1297 xnp_msg_diagnostics$.TemplateHeader(TRUE,0);
1298 XNP_WSGL.ClosePageHead;
1299
1300 XNP_WSGL.OpenPageBody(FALSE, p_attributes=>RL_BODY_ATTRIBUTES);
1301
1302 htp.p(htf.bold(fnd_message.get_string('XNP','WEB_TITLE')));
1303 htp.p(htf.header(1,fnd_message.get_string('XNP','WEB_XNPMSGDG_DETAILS_TITLE')));
1304 if (Z_ACTION = RL_LAST_BUT_ACTION) or (Z_ACTION = RL_LAST_BUT_CAPTION) or
1305 (Z_ACTION = RL_COUNT_BUT_ACTION) or (Z_ACTION = RL_COUNT_BUT_CAPTION) or
1306 (RL_TOTAL_COUNT_REQD)
1307 then
1308
1309 I_COUNT := QueryHits(
1310 P_MSG_ID,
1311 P_MSG_CODE,
1312 P_L_MTE_MSG_TYPE,
1313 P_MSG_STATUS,
1314 P_REFERENCE_ID,
1315 P_OPP_REFERENCE_ID,
1316 P_RECIPIENT_NAME,
1317 P_SENDER_NAME,
1318 P_ADAPTER_NAME,
1319 P_FE_NAME,
1320 P_ORDER_ID,
1321 P_WI_INSTANCE_ID,
1322 P_FA_INSTANCE_ID);
1323 if I_COUNT = -1 then
1324 XNP_WSGL.ClosePageBody;
1325 return;
1326 end if;
1327 end if;
1328
1329 if (Z_ACTION = RL_COUNT_BUT_ACTION) or (Z_ACTION = RL_COUNT_BUT_CAPTION) or
1330 RL_TOTAL_COUNT_REQD then
1331 I_OF_TOTAL_TEXT := ' '||XNP_WSGL.MsgGetText(111,XNP_WSGLM.DSP111_OF_TOTAL, to_char(I_COUNT));
1332 end if;
1333
1334 if Z_START IS NULL or (Z_ACTION = RL_FIRST_BUT_ACTION) or (Z_ACTION = RL_FIRST_BUT_CAPTION) then
1335 I_START := 1;
1336 elsif (Z_ACTION = RL_NEXT_BUT_ACTION) or (Z_ACTION = RL_NEXT_BUT_CAPTION) then
1337 I_START := I_START + RL_RECORD_SET_SIZE;
1338 elsif (Z_ACTION = RL_PREV_BUT_ACTION) or (Z_ACTION = RL_PREV_BUT_CAPTION) then
1339 I_START := I_START - RL_RECORD_SET_SIZE;
1340 elsif (Z_ACTION = RL_LAST_BUT_ACTION) or (Z_ACTION = RL_LAST_BUT_CAPTION) then
1341 I_START := 1 + (floor((I_COUNT-1)/RL_RECORD_SET_SIZE)*RL_RECORD_SET_SIZE);
1342 elsif Z_ACTION is null and I_START = 1 then
1343 null;
1344 elsif Z_ACTION IS NULL then
1345 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_WSGL.MsgGetText(215,XNP_WSGLM.MSG215_NO_MULTIPLE_SUBMITS),
1346 'SFM iMessage Diagnostics'||' : '||'Message Details', RL_BODY_ATTRIBUTES);
1347 XNP_WSGL.ClosePageBody;
1348 return;
1349 end if;
1350
1351 if I_START < 1 then
1352 I_START := 1;
1353 end if;
1354
1355 I_PREV_BUT := TRUE;
1356 I_NEXT_BUT := FALSE;
1357 if I_START = 1 or Z_ACTION IS NULL then
1358 I_PREV_BUT := FALSE;
1359 end if;
1360
1361 if nvl(Z_ACTION, 'X') <> 'DONTQUERY' then
1362
1363 if ZONE_SQL IS NULL then
1364 if not BuildSQL(
1365 P_MSG_ID,
1366 P_MSG_CODE,
1367 P_L_MTE_MSG_TYPE,
1368 P_MSG_STATUS,
1369 P_REFERENCE_ID,
1370 P_OPP_REFERENCE_ID,
1371 P_RECIPIENT_NAME,
1372 P_SENDER_NAME,
1373 P_ADAPTER_NAME,
1374 P_FE_NAME,
1375 P_ORDER_ID,
1376 P_WI_INSTANCE_ID,
1377 P_FA_INSTANCE_ID) then
1378 XNP_WSGL.ClosePageBody;
1379 return;
1380 end if;
1381 end if;
1382
1383 if not PreQuery(
1384 P_MSG_ID,
1385 P_MSG_CODE,
1386 P_L_MTE_MSG_TYPE,
1387 P_MSG_STATUS,
1388 P_REFERENCE_ID,
1389 P_OPP_REFERENCE_ID,
1390 P_RECIPIENT_NAME,
1391 P_SENDER_NAME,
1392 P_ADAPTER_NAME,
1393 P_FE_NAME,
1394 P_ORDER_ID,
1395 P_WI_INSTANCE_ID,
1396 P_FA_INSTANCE_ID) then
1397 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_cg$errors.GetErrors,
1398 'SFM iMessage Diagnostics'||' : '||'Message Details', RL_BODY_ATTRIBUTES);
1399 return;
1400 end if;
1401
1402 InitialiseDomain('MSG_STATUS');
1403 InitialiseDomain('DIRECTION_INDICATOR');
1404
1405
1406 I_CURSOR := dbms_sql.open_cursor;
1407 dbms_sql.parse(I_CURSOR, ZONE_SQL, dbms_sql.v7);
1408 dbms_sql.define_column(I_CURSOR, 1, CURR_VAL.MSG_ID);
1409 dbms_sql.define_column(I_CURSOR, 2, NBT_VAL.XML_PAYLOAD_LINK, 2000);
1410 dbms_sql.define_column(I_CURSOR, 3, CURR_VAL.MSG_CODE, 20);
1411 dbms_sql.define_column(I_CURSOR, 4, CURR_VAL.MSG_STATUS, 10);
1412 dbms_sql.define_column(I_CURSOR, 5, CURR_VAL.DIRECTION_INDICATOR, 1);
1413 dbms_sql.define_column(I_CURSOR, 6, CURR_VAL.REFERENCE_ID, 1024);
1414 dbms_sql.define_column(I_CURSOR, 7, CURR_VAL.OPP_REFERENCE_ID, 40);
1415 dbms_sql.define_column(I_CURSOR, 8, CURR_VAL.MSG_VERSION);
1416 dbms_sql.define_column(I_CURSOR, 9, CURR_VAL.MSG_CREATION_DATE);
1417 dbms_sql.define_column(I_CURSOR, 10, CURR_VAL.SEND_RCV_DATE);
1418 dbms_sql.define_column(I_CURSOR, 11, CURR_VAL.RECIPIENT_NAME, 40);
1419 -- dbms_sql.define_column(I_CURSOR, 12, CURR_VAL.SENDER_NAME, 40);
1420 dbms_sql.define_column(I_CURSOR, 12, CURR_VAL.SENDER_NAME, 60); -- increased the size from 40 to 60 for 6880763
1421 dbms_sql.define_column(I_CURSOR, 13, CURR_VAL.ADAPTER_NAME, 40);
1422 dbms_sql.define_column(I_CURSOR, 14, CURR_VAL.FE_NAME, 40);
1423
1424 I_VOID := dbms_sql.execute(I_CURSOR);
1425 I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1426 else
1427 I_ROWS_FETCHED := 0;
1428 end if;
1429 I_TOTAL_ROWS := I_ROWS_FETCHED;
1430
1431 if I_ROWS_FETCHED <> 0 then
1432
1433 XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE, P_BORDER=>TRUE);
1434
1435 XNP_WSGL.LayoutRowStart;
1436 for i in 1..RL_NUMBER_OF_COLUMNS loop
1437 XNP_WSGL.LayoutHeader(20, 'RIGHT', 'ID');
1438 XNP_WSGL.LayoutHeader(30, 'LEFT', 'XML');
1439 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Code');
1440 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Status');
1441 XNP_WSGL.LayoutHeader(10, 'LEFT', 'In/Out');
1442 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Ref ID');
1443 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Opp Ref ID');
1444 XNP_WSGL.LayoutHeader(5, 'RIGHT', 'Version');
1445 XNP_WSGL.LayoutHeader(12, 'LEFT', 'Created On');
1446 XNP_WSGL.LayoutHeader(12, 'LEFT', 'Processed On');
1447 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Receiver');
1448 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Sender');
1449 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Adapter (Consumer)');
1450 XNP_WSGL.LayoutHeader(20, 'LEFT', 'Consumer FE');
1451 end loop;
1452 XNP_WSGL.LayoutRowEnd;
1453
1454 while I_ROWS_FETCHED <> 0 loop
1455
1456 if I_TOTAL_ROWS >= I_START then
1457 dbms_sql.column_value(I_CURSOR, 1, CURR_VAL.MSG_ID);
1458 dbms_sql.column_value(I_CURSOR, 2, NBT_VAL.XML_PAYLOAD_LINK);
1459 dbms_sql.column_value(I_CURSOR, 3, CURR_VAL.MSG_CODE);
1460 dbms_sql.column_value(I_CURSOR, 4, CURR_VAL.MSG_STATUS);
1461 dbms_sql.column_value(I_CURSOR, 5, CURR_VAL.DIRECTION_INDICATOR);
1462 dbms_sql.column_value(I_CURSOR, 6, CURR_VAL.REFERENCE_ID);
1463 dbms_sql.column_value(I_CURSOR, 7, CURR_VAL.OPP_REFERENCE_ID);
1464 dbms_sql.column_value(I_CURSOR, 8, CURR_VAL.MSG_VERSION);
1465 dbms_sql.column_value(I_CURSOR, 9, CURR_VAL.MSG_CREATION_DATE);
1466 dbms_sql.column_value(I_CURSOR, 10, CURR_VAL.SEND_RCV_DATE);
1467 dbms_sql.column_value(I_CURSOR, 11, CURR_VAL.RECIPIENT_NAME);
1468 dbms_sql.column_value(I_CURSOR, 12, CURR_VAL.SENDER_NAME);
1469 dbms_sql.column_value(I_CURSOR, 13, CURR_VAL.ADAPTER_NAME);
1470 dbms_sql.column_value(I_CURSOR, 14, CURR_VAL.FE_NAME);
1471 L_CHECKSUM := to_char(XNP_WSGL.Checksum(''||CURR_VAL.MSG_ID));
1472
1473
1474 XNP_WSGL.LayoutRowStart('TOP');
1475 XNP_WSGL.LayoutData(htf.anchor2('xnp_msg_diagnostics$xnp_msgs.queryview?P_MSG_ID='||CURR_VAL.MSG_ID||'&Z_CHK='||L_CHECKSUM, CURR_VAL.MSG_ID, ctarget=>L_VF_FRAME));
1476 XNP_WSGL.LayoutData(htf.anchor2(NBT_VAL.XML_PAYLOAD_LINK, 'XML'));
1477 XNP_WSGL.LayoutData(CURR_VAL.MSG_CODE);
1478 XNP_WSGL.LayoutData(XNP_WSGL.DomainMeaning(D_MSG_STATUS, CURR_VAL.MSG_STATUS));
1479 XNP_WSGL.LayoutData(XNP_WSGL.DomainMeaning(D_DIRECTION_INDICATOR, CURR_VAL.DIRECTION_INDICATOR));
1480 XNP_WSGL.LayoutData(CURR_VAL.REFERENCE_ID);
1481 XNP_WSGL.LayoutData(CURR_VAL.OPP_REFERENCE_ID);
1482 XNP_WSGL.LayoutData(CURR_VAL.MSG_VERSION);
1483 XNP_WSGL.LayoutData(ltrim(to_char(CURR_VAL.MSG_CREATION_DATE, 'DD-MON-RRRR HH24:MI:SS')));
1484 XNP_WSGL.LayoutData(ltrim(to_char(CURR_VAL.SEND_RCV_DATE, 'DD-MON-RRRR')));
1485 XNP_WSGL.LayoutData(CURR_VAL.RECIPIENT_NAME);
1486 XNP_WSGL.LayoutData(CURR_VAL.SENDER_NAME);
1487 XNP_WSGL.LayoutData(CURR_VAL.ADAPTER_NAME);
1488 XNP_WSGL.LayoutData(CURR_VAL.FE_NAME);
1489 XNP_WSGL.LayoutRowEnd;
1490
1491 I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1492 if I_TOTAL_ROWS = I_START + RL_RECORD_SET_SIZE - 1 then
1493 if I_ROWS_FETCHED <> 0 then
1494 I_NEXT_BUT := TRUE;
1495 end if;
1496 exit;
1497 end if;
1498 else
1499 I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1500 end if;
1501
1502 I_TOTAL_ROWS := I_TOTAL_ROWS + I_ROWS_FETCHED;
1503
1504 end loop;
1505
1506 XNP_WSGL.LayoutClose;
1507
1508 if I_START = I_TOTAL_ROWS then
1509 htp.p(XNP_WSGL.MsgGetText(109,XNP_WSGLM.DSP109_RECORD, to_char(I_TOTAL_ROWS))||I_OF_TOTAL_TEXT);
1510 else
1511 htp.p(XNP_WSGL.MsgGetText(110,XNP_WSGLM.DSP110_RECORDS_N_M,
1512 to_char(I_START), to_char(I_TOTAL_ROWS))||
1513 I_OF_TOTAL_TEXT);
1514 end if;
1515 htp.para;
1516 else
1517 htp.p(XNP_WSGL.MsgGetText(112,XNP_WSGLM.DSP112_NO_RECORDS));
1518 end if;
1519
1520 if nvl(Z_ACTION, 'X') <> 'DONTQUERY' then
1521 dbms_sql.close_cursor(I_CURSOR);
1522 end if;
1523
1524 htp.formOpen(curl => 'xnp_msg_diagnostics$xnp_msgs.querylist', cattributes => 'NAME="frmZero"');
1525 XNP_WSGL.HiddenField('P_MSG_ID', P_MSG_ID);
1526 XNP_WSGL.HiddenField('P_MSG_CODE', P_MSG_CODE);
1527 XNP_WSGL.HiddenField('P_L_MTE_MSG_TYPE', P_L_MTE_MSG_TYPE);
1528 XNP_WSGL.HiddenField('P_MSG_STATUS', P_MSG_STATUS);
1529 XNP_WSGL.HiddenField('P_REFERENCE_ID', P_REFERENCE_ID);
1530 XNP_WSGL.HiddenField('P_OPP_REFERENCE_ID', P_OPP_REFERENCE_ID);
1531 XNP_WSGL.HiddenField('P_RECIPIENT_NAME', P_RECIPIENT_NAME);
1532 XNP_WSGL.HiddenField('P_SENDER_NAME', P_SENDER_NAME);
1533 XNP_WSGL.HiddenField('P_ADAPTER_NAME', P_ADAPTER_NAME);
1534 XNP_WSGL.HiddenField('P_FE_NAME', P_FE_NAME);
1535 XNP_WSGL.HiddenField('P_ORDER_ID', P_ORDER_ID);
1536 XNP_WSGL.HiddenField('P_WI_INSTANCE_ID', P_WI_INSTANCE_ID);
1537 XNP_WSGL.HiddenField('P_FA_INSTANCE_ID', P_FA_INSTANCE_ID);
1538 XNP_WSGL.HiddenField('Z_START', to_char(I_START));
1539 htp.p ('<SCRIPT><!--');
1540 htp.p ('document.write (''<input type=hidden name="Z_ACTION">'')');
1541 htp.p ('//-->');
1542 htp.p ('</SCRIPT>');
1543
1544 XNP_WSGL.RecordListButton(I_PREV_BUT, 'Z_ACTION', htf.escape_sc(RL_FIRST_BUT_CAPTION), XNP_WSGL.MsgGetText(213,XNP_WSGLM.MSG213_AT_FIRST), FALSE,
1545 'onClick="this.form.Z_ACTION.value=\''' || RL_FIRST_BUT_ACTION || '\''"');
1546 XNP_WSGL.RecordListButton(I_PREV_BUT, 'Z_ACTION', htf.escape_sc(RL_PREV_BUT_CAPTION), XNP_WSGL.MsgGetText(213,XNP_WSGLM.MSG213_AT_FIRST), FALSE,
1547 'onClick="this.form.Z_ACTION.value=\''' || RL_PREV_BUT_ACTION || '\''"');
1548 XNP_WSGL.RecordListButton(I_NEXT_BUT,'Z_ACTION', htf.escape_sc(RL_NEXT_BUT_CAPTION), XNP_WSGL.MsgGetText(214,XNP_WSGLM.MSG214_AT_LAST), FALSE,
1549 'onClick="this.form.Z_ACTION.value=\''' || RL_NEXT_BUT_ACTION || '\''"');
1550 XNP_WSGL.RecordListButton(I_NEXT_BUT,'Z_ACTION', htf.escape_sc(RL_LAST_BUT_CAPTION), XNP_WSGL.MsgGetText(214,XNP_WSGLM.MSG214_AT_LAST), FALSE,
1551 'onClick="this.form.Z_ACTION.value=\''' || RL_LAST_BUT_ACTION || '\''"');
1552
1553 XNP_WSGL.RecordListButton(TRUE, 'Z_ACTION', htf.escape_sc(RL_REQUERY_BUT_CAPTION),p_dojs=>FALSE,
1554 buttonJS => 'onClick="this.form.Z_ACTION.value=\''' || RL_REQUERY_BUT_ACTION || '\''"');
1555 htp.para;
1556
1557 XNP_WSGL.RecordListButton(TRUE, 'Z_ACTION', htf.escape_sc(RL_QUERY_BUT_CAPTION),p_dojs=>FALSE,
1558 buttonJS => 'onClick="this.form.Z_ACTION.value=\''' || RL_QUERY_BUT_ACTION || '\''"');
1559 XNP_WSGL.HiddenField('Z_CHK',
1560 to_char(XNP_WSGL.Checksum('')));
1561 htp.formClose;
1562
1563 XNP_WSGL.ReturnLinks('0', XNP_WSGL.MENU_LONG);
1564 XNP_WSGL.NavLinks;
1565
1566 htp.p(htf.img('/OA_MEDIA/FNDLOGOS.gif'));
1567
1568 XNP_WSGL.ClosePageBody;
1569
1570 exception
1571 when others then
1572 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1573 RL_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.QueryList');
1574 XNP_WSGL.ClosePageBody;
1575 end;
1576
1577 --------------------------------------------------------------------------------
1578 -- Name: xnp_msg_diagnostics$xnp_msgs.QueryFirst
1579 --
1580 -- Description: Finds the first row which matches the given search criteria
1581 -- (if any), and calls QueryView for that row
1582 --
1583 -- Parameters:
1584 --
1585 --------------------------------------------------------------------------------
1586 procedure QueryFirst(
1587 P_MSG_ID in varchar2,
1588 P_MSG_CODE in varchar2,
1589 P_L_MTE_MSG_TYPE in varchar2,
1590 P_MSG_STATUS in varchar2,
1591 P_REFERENCE_ID in varchar2,
1592 P_OPP_REFERENCE_ID in varchar2,
1593 P_RECIPIENT_NAME in varchar2,
1594 P_SENDER_NAME in varchar2,
1595 P_ADAPTER_NAME in varchar2,
1596 P_FE_NAME in varchar2,
1597 P_ORDER_ID in varchar2,
1598 P_WI_INSTANCE_ID in varchar2,
1599 P_FA_INSTANCE_ID in varchar2,
1600 Z_ACTION in varchar2,
1601 Z_DIRECT_CALL in boolean,
1602 Z_CHK in varchar2) is
1603
1604 I_CURSOR integer;
1605 I_VOID integer;
1606 I_ROWS_FETCHED integer := 0;
1607
1608 begin
1609
1610 XNP_WSGL.RegisterURL('xnp_msg_diagnostics$xnp_msgs.queryfirst');
1611 XNP_WSGL.AddURLParam('P_MSG_ID', P_MSG_ID);
1612 XNP_WSGL.AddURLParam('P_MSG_CODE', P_MSG_CODE);
1613 XNP_WSGL.AddURLParam('P_L_MTE_MSG_TYPE', P_L_MTE_MSG_TYPE);
1614 XNP_WSGL.AddURLParam('P_MSG_STATUS', P_MSG_STATUS);
1615 XNP_WSGL.AddURLParam('P_REFERENCE_ID', P_REFERENCE_ID);
1616 XNP_WSGL.AddURLParam('P_OPP_REFERENCE_ID', P_OPP_REFERENCE_ID);
1617 XNP_WSGL.AddURLParam('P_RECIPIENT_NAME', P_RECIPIENT_NAME);
1618 XNP_WSGL.AddURLParam('P_SENDER_NAME', P_SENDER_NAME);
1619 XNP_WSGL.AddURLParam('P_ADAPTER_NAME', P_ADAPTER_NAME);
1620 XNP_WSGL.AddURLParam('P_FE_NAME', P_FE_NAME);
1621 XNP_WSGL.AddURLParam('P_ORDER_ID', P_ORDER_ID);
1622 XNP_WSGL.AddURLParam('P_WI_INSTANCE_ID', P_WI_INSTANCE_ID);
1623 XNP_WSGL.AddURLParam('P_FA_INSTANCE_ID', P_FA_INSTANCE_ID);
1624 XNP_WSGL.AddURLParam('Z_ACTION', Z_ACTION);
1625 XNP_WSGL.AddURLParam('Z_CHK', Z_CHK);
1626 if not Z_DIRECT_CALL then
1627 if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
1628 return;
1629 end if;
1630 end if;
1631
1632 if Z_ACTION = 'BLANK' then
1633 XNP_WSGL.EmptyPage(VF_BODY_ATTRIBUTES);
1634 return;
1635 end if;
1636
1637
1638 if not BuildSQL(
1639 P_MSG_ID,
1640 P_MSG_CODE,
1641 P_L_MTE_MSG_TYPE,
1642 P_MSG_STATUS,
1643 P_REFERENCE_ID,
1644 P_OPP_REFERENCE_ID,
1645 P_RECIPIENT_NAME,
1646 P_SENDER_NAME,
1647 P_ADAPTER_NAME,
1648 P_FE_NAME,
1649 P_ORDER_ID,
1650 P_WI_INSTANCE_ID,
1651 P_FA_INSTANCE_ID) then
1652 return;
1653 end if;
1654
1655 if not PreQuery(
1656 P_MSG_ID,
1657 P_MSG_CODE,
1658 P_L_MTE_MSG_TYPE,
1659 P_MSG_STATUS,
1660 P_REFERENCE_ID,
1661 P_OPP_REFERENCE_ID,
1662 P_RECIPIENT_NAME,
1663 P_SENDER_NAME,
1664 P_ADAPTER_NAME,
1665 P_FE_NAME,
1666 P_ORDER_ID,
1667 P_WI_INSTANCE_ID,
1668 P_FA_INSTANCE_ID) then
1669 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_cg$errors.GetErrors,
1670 'SFM iMessage Diagnostics'||' : '||'Message Details', VF_BODY_ATTRIBUTES);
1671 return;
1672 end if;
1673
1674 I_CURSOR := dbms_sql.open_cursor;
1675 dbms_sql.parse(I_CURSOR, ZONE_SQL, dbms_sql.v7);
1676 dbms_sql.define_column(I_CURSOR, 1, CURR_VAL.MSG_ID);
1677 dbms_sql.define_column(I_CURSOR, 2, NBT_VAL.XML_PAYLOAD_LINK, 2000);
1678 dbms_sql.define_column(I_CURSOR, 3, CURR_VAL.MSG_CODE, 20);
1679 dbms_sql.define_column(I_CURSOR, 4, CURR_VAL.MSG_STATUS, 10);
1680 dbms_sql.define_column(I_CURSOR, 5, CURR_VAL.DIRECTION_INDICATOR, 1);
1681 dbms_sql.define_column(I_CURSOR, 6, CURR_VAL.REFERENCE_ID, 1024);
1682 dbms_sql.define_column(I_CURSOR, 7, CURR_VAL.OPP_REFERENCE_ID, 40);
1683 dbms_sql.define_column(I_CURSOR, 8, CURR_VAL.MSG_VERSION);
1684 dbms_sql.define_column(I_CURSOR, 9, CURR_VAL.MSG_CREATION_DATE);
1685 dbms_sql.define_column(I_CURSOR, 10, CURR_VAL.SEND_RCV_DATE);
1686 dbms_sql.define_column(I_CURSOR, 11, CURR_VAL.RECIPIENT_NAME, 40);
1687 -- dbms_sql.define_column(I_CURSOR, 12, CURR_VAL.SENDER_NAME, 40);
1688 dbms_sql.define_column(I_CURSOR, 12, CURR_VAL.SENDER_NAME, 60); -- increased the size from 40 to 60 for 6880763
1689 dbms_sql.define_column(I_CURSOR, 13, CURR_VAL.ADAPTER_NAME, 40);
1690 dbms_sql.define_column(I_CURSOR, 14, CURR_VAL.FE_NAME, 40);
1691
1692 I_VOID := dbms_sql.execute(I_CURSOR);
1693
1694 I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1695
1696 if I_ROWS_FETCHED = 0 then
1697 XNP_WSGL.EmptyPage(VF_BODY_ATTRIBUTES);
1698 else
1699 dbms_sql.column_value(I_CURSOR, 1, CURR_VAL.MSG_ID);
1700 dbms_sql.column_value(I_CURSOR, 2, NBT_VAL.XML_PAYLOAD_LINK);
1701 dbms_sql.column_value(I_CURSOR, 3, CURR_VAL.MSG_CODE);
1702 dbms_sql.column_value(I_CURSOR, 4, CURR_VAL.MSG_STATUS);
1703 dbms_sql.column_value(I_CURSOR, 5, CURR_VAL.DIRECTION_INDICATOR);
1704 dbms_sql.column_value(I_CURSOR, 6, CURR_VAL.REFERENCE_ID);
1705 dbms_sql.column_value(I_CURSOR, 7, CURR_VAL.OPP_REFERENCE_ID);
1706 dbms_sql.column_value(I_CURSOR, 8, CURR_VAL.MSG_VERSION);
1707 dbms_sql.column_value(I_CURSOR, 9, CURR_VAL.MSG_CREATION_DATE);
1708 dbms_sql.column_value(I_CURSOR, 10, CURR_VAL.SEND_RCV_DATE);
1709 dbms_sql.column_value(I_CURSOR, 11, CURR_VAL.RECIPIENT_NAME);
1710 dbms_sql.column_value(I_CURSOR, 12, CURR_VAL.SENDER_NAME);
1711 dbms_sql.column_value(I_CURSOR, 13, CURR_VAL.ADAPTER_NAME);
1712 dbms_sql.column_value(I_CURSOR, 14, CURR_VAL.FE_NAME);
1713 xnp_msg_diagnostics$xnp_msgs.QueryView(Z_DIRECT_CALL=>TRUE);
1714 end if;
1715
1716 dbms_sql.close_cursor(I_CURSOR);
1717
1718 exception
1719 when others then
1720 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1721 VF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.QueryFirst');
1722 XNP_WSGL.ClosePageBody;
1723 end;
1724
1725 --------------------------------------------------------------------------------
1726 -- Name: xnp_msg_diagnostics$xnp_msgs.PreQuery
1727 --
1728 -- Description: Provides place holder for code to be run prior to a query
1729 -- for the 'XNP_MSGS' module component (Message Details).
1730 --
1731 -- Parameters: None
1732 --
1733 -- Returns: True If success
1734 -- False Otherwise
1735 --
1736 --------------------------------------------------------------------------------
1737 function PreQuery(
1738 P_MSG_ID in varchar2,
1739 P_MSG_CODE in varchar2,
1740 P_L_MTE_MSG_TYPE in varchar2,
1741 P_MSG_STATUS in varchar2,
1742 P_REFERENCE_ID in varchar2,
1743 P_OPP_REFERENCE_ID in varchar2,
1744 P_RECIPIENT_NAME in varchar2,
1745 P_SENDER_NAME in varchar2,
1746 P_ADAPTER_NAME in varchar2,
1747 P_FE_NAME in varchar2,
1748 P_ORDER_ID in varchar2,
1749 P_WI_INSTANCE_ID in varchar2,
1750 P_FA_INSTANCE_ID in varchar2) return boolean is
1751 L_RET_VAL boolean := TRUE;
1752 begin
1753 return L_RET_VAL;
1754 exception
1755 when others then
1756 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1757 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.PreQuery');
1758 return FALSE;
1759 end;
1760
1761 --------------------------------------------------------------------------------
1762 -- Name: xnp_msg_diagnostics$xnp_msgs.PostQuery
1763 --
1764 -- Description: Provides place holder for code to be run after a query
1765 -- for the 'XNP_MSGS' module component (Message Details).
1766 --
1767 -- Parameters: Z_POST_DML Flag indicating if Query after insert or update
1768 --
1769 -- Returns: True If success
1770 -- False Otherwise
1771 --
1772 --------------------------------------------------------------------------------
1773 function PostQuery(Z_POST_DML in boolean) return boolean is
1774 L_RET_VAL boolean := TRUE;
1775 begin
1776 return L_RET_VAL;
1777 exception
1778 when others then
1779 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1780 DEF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.PostQuery');
1781 return FALSE;
1782 end;
1783
1784 --------------------------------------------------------------------------------
1785 -- Name: xnp_msg_diagnostics$xnp_msgs.CreateQueryJavaScript
1786 --
1787 -- Description:
1788 --
1789 -- Parameters:
1790 --
1791 --------------------------------------------------------------------------------
1792 procedure CreateQueryJavaScript is
1793 begin
1794 htp.p(XNP_WSGJSL.OpenScript);
1795 htp.p('var FormType = "Query";');
1796
1797 htp.p(
1798 'function MSG_CODE_LOV() {
1799 var filter = "";
1800 var the_pathname = location.pathname;
1801 var i = the_pathname.indexOf (''/:'');
1802 var j = the_pathname.indexOf (''/'', ++i);
1803
1804 if (i != -1)
1805 {
1806
1807 // Syntactically incorrect url so it needs to be corrected
1808
1809 the_pathname = the_pathname.substring (j, the_pathname.length);
1810
1811 }; // (i != -1)
1812
1813 frmLOV = open("xnp_msg_diagnostics$xnp_msgs.msg_code_listofvalues" +
1814 "?Z_FILTER=" + escape(filter) + "&Z_MODE=Q" +
1815 "&Z_CALLER_URL=" + escape(location.protocol + ''//'' + location.host + the_pathname + location.search) +
1816 "&Z_ISSUE_WAIT=Y",');
1817 if LOV_FRAME is not null then
1818 htp.p(' "'||LOV_FRAME||'");');
1819 else
1820 htp.p(' "winLOV", "scrollbars=yes,resizable=yes,width=400,height=400");');
1821 end if;
1822 htp.p(' if (frmLOV.opener == null) {
1823 frmLOV.opener = self;
1824 }
1825 }
1826 ');
1827
1828 htp.p(XNP_WSGJSL.CloseScript);
1829 exception
1830 when others then
1831 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1832 QF_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.CreateQueryJavaScript');
1833 end;
1834
1835 --------------------------------------------------------------------------------
1836 -- Name: xnp_msg_diagnostics$xnp_msgs.CreateListJavaScript
1837 --
1838 -- Description:
1839 --
1840 -- Parameters:
1841 --
1842 --------------------------------------------------------------------------------
1843 procedure CreateListJavaScript is
1844 begin
1845 htp.p(XNP_WSGJSL.OpenScript);
1846 htp.p('var FormType = "List";');
1847 htp.p(XNP_WSGJSL.CloseScript);
1848 exception
1849 when others then
1850 XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'SFM iMessage Diagnostics'||' : '||'Message Details',
1851 RL_BODY_ATTRIBUTES, 'xnp_msg_diagnostics$xnp_msgs.CreateListJavaScript');
1852 end;
1853 end;