DBA Data[Home] [Help]

PACKAGE BODY: APPS.XNP_CALLBACK_EVENTS$XNP_CALLBA

Source


1 package body xnp_callback_events$xnp_callba as
2 /* $Header: XNPWE2CB.pls 120.1 2005/06/21 04:11:54 appldev ship $ */
3 
4 
5    function BuildSQL(
6             P_ORDER_ID in varchar2 default null,
7             U_ORDER_ID in varchar2 default null,
8             P_STATUS in varchar2 default null,
9             P_MSG_CODE in varchar2 default null,
10             P_CALLBACK_PROC_NAME in varchar2 default null,
11             P_CALLBACK_TYPE in varchar2 default null,
12             P_PROCESS_REFERENCE in varchar2 default null,
13             P_REFERENCE_ID in varchar2 default null,
14             P_CALLBACK_TIMESTAMP in varchar2 default null,
15             U_CALLBACK_TIMESTAMP in varchar2 default null,
16             P_REGISTERED_TIMESTAMP in varchar2 default null,
17             U_REGISTERED_TIMESTAMP in varchar2 default null,
18             P_WI_INSTANCE_ID in varchar2 default null,
19             U_WI_INSTANCE_ID in varchar2 default null,
20             P_FA_INSTANCE_ID in varchar2 default null,
21             U_FA_INSTANCE_ID in varchar2 default null) return boolean;
22    function PreQuery(
23             P_ORDER_ID in varchar2 default null,
24             U_ORDER_ID in varchar2 default null,
25             P_STATUS in varchar2 default null,
26             P_MSG_CODE in varchar2 default null,
27             P_CALLBACK_PROC_NAME in varchar2 default null,
28             P_CALLBACK_TYPE in varchar2 default null,
29             P_PROCESS_REFERENCE in varchar2 default null,
30             P_REFERENCE_ID in varchar2 default null,
31             P_CALLBACK_TIMESTAMP in varchar2 default null,
32             U_CALLBACK_TIMESTAMP in varchar2 default null,
33             P_REGISTERED_TIMESTAMP in varchar2 default null,
34             U_REGISTERED_TIMESTAMP in varchar2 default null,
35             P_WI_INSTANCE_ID in varchar2 default null,
36             U_WI_INSTANCE_ID in varchar2 default null,
37             P_FA_INSTANCE_ID in varchar2 default null,
38             U_FA_INSTANCE_ID in varchar2 default null) return boolean;
39    function PostQuery(Z_POST_DML in boolean) return boolean;
40    procedure CreateQueryJavaScript;
41    procedure CreateListJavaScript;
42    procedure InitialiseDomain(P_ALIAS in varchar2);
43    function MSG_CODE_TranslateFK(
44             P_MSG_CODE in varchar2 default null,
45             Z_MODE in varchar2 default 'D') return boolean;
46 
47    QF_BODY_ATTRIBUTES     constant varchar2(500) := 'BGCOLOR="CCCCCC"';
48    QF_QUERY_BUT_CAPTION   constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_FIND_BUTTON'));
49    QF_CLEAR_BUT_CAPTION   constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_CLEAR_BUTTON'));
50    QF_QUERY_BUT_ACTION    constant varchar2(10)  := 'QUERY';
51    QF_CLEAR_BUT_ACTION    constant varchar2(10)  := 'CLEAR';
52    QF_NUMBER_OF_COLUMNS   constant number(4)	 := 2;
53    RL_BODY_ATTRIBUTES     constant varchar2(500) := 'BGCOLOR="CCCCCC"';
54    RL_NEXT_BUT_CAPTION    constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_NEXT_BUTTON'));
55    RL_PREV_BUT_CAPTION    constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_PREVIOUS_BUTTON'));
56    RL_FIRST_BUT_CAPTION   constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_FIRST_BUTTON'));
57    RL_LAST_BUT_CAPTION    constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_LAST_BUTTON'));
58    RL_COUNT_BUT_CAPTION   constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_COUNT_BUTTON'));
59    RL_REQUERY_BUT_CAPTION constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_REFRESH_BUTTON'));
60    RL_QUERY_BUT_CAPTION  constant varchar2(100)  := htf.escape_sc(fnd_message.get_string('XNP','WEB_SEARCH_BUTTON'));
61    RL_QUERY_BUT_ACTION    constant varchar2(10)  := 'QUERY';
62    RL_NEXT_BUT_ACTION     constant varchar2(10)  := 'NEXT';
63    RL_PREV_BUT_ACTION     constant varchar2(10)  := 'PREV';
64    RL_FIRST_BUT_ACTION    constant varchar2(10)  := 'FIRST';
65    RL_LAST_BUT_ACTION     constant varchar2(10)  := 'LAST';
66    RL_COUNT_BUT_ACTION    constant varchar2(10)  := 'COUNT';
67    RL_REQUERY_BUT_ACTION  constant varchar2(10)  := 'REQUERY';
68    RL_RECORD_SET_SIZE     constant number(4)     := 12;
69    RL_TOTAL_COUNT_REQD    constant boolean       := TRUE;
70    RL_NUMBER_OF_COLUMNS   constant number(4)     := 1;
71    LOV_BODY_ATTRIBUTES    constant varchar2(500) := 'BGCOLOR="CCCCCC"';
72    LOV_FIND_BUT_CAPTION   constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_FIND_BUTTON'));
73    LOV_CLOSE_BUT_CAPTION  constant varchar2(100) := htf.escape_sc(fnd_message.get_string('XNP','WEB_CLOSE_BUTTON'));
74    LOV_FIND_BUT_ACTION    constant  varchar2(10) := 'FIND';
75    LOV_CLOSE_BUT_ACTION   constant varchar2(10)  := 'CLOSE';
76    LOV_BUTTON_TEXT        constant varchar2(100) := htf.italic(fnd_message.get_string('XNP','LIST_OF_VALUES'));
77    LOV_FRAME              constant varchar2(20)  := null;
78    TF_BODY_ATTRIBUTES     constant varchar2(500) := 'BGCOLOR="CCCCCC"';
79    DEF_BODY_ATTRIBUTES    constant varchar2(500) := 'BGCOLOR="CCCCCC"';
80 
81    CURR_VAL XNP_CALLBACK_EVENTS%ROWTYPE;
82 
83    TYPE FORM_REC IS RECORD
84         (ORDER_ID            VARCHAR2(10)
85         ,STATUS              VARCHAR2(10)
86         ,MSG_CODE            VARCHAR2(20)
87         ,CALLBACK_PROC_NAME  VARCHAR2(80)
88         ,CALLBACK_TYPE       VARCHAR2(20)
89         ,PROCESS_REFERENCE   VARCHAR2(512)
90         ,REFERENCE_ID        VARCHAR2(80)
91         ,CLOSE_REQD_FLAG     VARCHAR2(1)
92         ,CALLBACK_EVENT_ID   VARCHAR2(8)
93         ,CALLBACK_TIMESTAMP  VARCHAR2(25)
94         ,REGISTERED_TIMESTAMP VARCHAR2(25)
95         ,WI_INSTANCE_ID      VARCHAR2(25)
96         ,FA_INSTANCE_ID      VARCHAR2(25)
97         );
98    FORM_VAL   FORM_REC;
99 
100 
101    ZONE_SQL   VARCHAR2(3000) := null;
102 
103    D_STATUS              XNP_WSGL.typDVRecord;
104    D_CALLBACK_TYPE       XNP_WSGL.typDVRecord;
105    D_CLOSE_REQD_FLAG     XNP_WSGL.typDVRecord;
106 --------------------------------------------------------------------------------
107 -- Name:        xnp_callback_events$xnp_callba.InitialiseDomain
108 --
109 -- Description: Initialises the Domain Record for the given Column Usage
110 --
111 -- Parameters:  P_ALIAS   The alias of the column usage
112 --
113 --------------------------------------------------------------------------------
114    procedure InitialiseDomain(P_ALIAS in varchar2) is
115    begin
116 
117       if P_ALIAS = 'STATUS' and not D_STATUS.Initialised then
118          D_STATUS.ColAlias := 'STATUS';
119          D_STATUS.ControlType := XNP_WSGL.DV_LIST;
120          D_STATUS.DispWidth := 10;
121          D_STATUS.DispHeight := 1;
122          D_STATUS.MaxWidth := 10;
123          D_STATUS.UseMeanings := False;
124          D_STATUS.ColOptional := False;
125          XNP_WSGL.LoadDomainValues('CG_REF_CODES', 'XNP_CALLBACK_STATUS', D_STATUS);
126          D_STATUS.Initialised := True;
127       end if;
128 
129       if P_ALIAS = 'CALLBACK_TYPE' and not D_CALLBACK_TYPE.Initialised then
130          D_CALLBACK_TYPE.ColAlias := 'CALLBACK_TYPE';
131          D_CALLBACK_TYPE.ControlType := XNP_WSGL.DV_TEXT;
132          D_CALLBACK_TYPE.DispWidth := 10;
133          D_CALLBACK_TYPE.DispHeight := 1;
134          D_CALLBACK_TYPE.MaxWidth := 20;
135          D_CALLBACK_TYPE.UseMeanings := False;
136          D_CALLBACK_TYPE.ColOptional := False;
137          D_CALLBACK_TYPE.Vals(1) := 'JAVA';
138          D_CALLBACK_TYPE.Meanings(1) := 'JAVA';
139          D_CALLBACK_TYPE.Abbreviations(1) := '';
140          D_CALLBACK_TYPE.Vals(2) := 'PL/SQL';
141          D_CALLBACK_TYPE.Meanings(2) := 'PL/SQL';
142          D_CALLBACK_TYPE.Abbreviations(2) := '';
143          D_CALLBACK_TYPE.NumOfVV := 2;
144          D_CALLBACK_TYPE.Initialised := True;
145       end if;
146 
147       if P_ALIAS = 'CLOSE_REQD_FLAG' and not D_CLOSE_REQD_FLAG.Initialised then
148          D_CLOSE_REQD_FLAG.ColAlias := 'CLOSE_REQD_FLAG';
149          D_CLOSE_REQD_FLAG.ControlType := XNP_WSGL.DV_TEXT;
150          D_CLOSE_REQD_FLAG.DispWidth := 1;
151          D_CLOSE_REQD_FLAG.DispHeight := 1;
152          D_CLOSE_REQD_FLAG.MaxWidth := 1;
153          D_CLOSE_REQD_FLAG.UseMeanings := False;
154          D_CLOSE_REQD_FLAG.ColOptional := False;
155          XNP_WSGL.LoadDomainValues('CG_REF_CODES', 'XNP_YES_NO_FLAG_DEFAULT_YES', D_CLOSE_REQD_FLAG);
156          D_CLOSE_REQD_FLAG.Initialised := True;
157       end if;
158 
159    exception
160       when others then
161          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
162                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.InitialseDomain');
163    end;
164 
165 --------------------------------------------------------------------------------
166 -- Name:        xnp_callback_events$xnp_callba.MSG_CODE_TranslateFK
167 --
168 -- Description:
169 --
170 -- Parameters:
171 --
172 --------------------------------------------------------------------------------
173    function MSG_CODE_TranslateFK(
174             P_MSG_CODE in varchar2,
175             Z_MODE in varchar2) return boolean is
176    begin
177       select L_MTE.MSG_CODE
178       into   CURR_VAL.MSG_CODE
179       from   XNP_MSG_TYPES_B L_MTE
180       where  rownum = 1
181       and   ( L_MTE.MSG_CODE = P_MSG_CODE );
182       return TRUE;
183    exception
184          when no_data_found then
185             XNP_cg$errors.push('Message: '||
186                            XNP_WSGL.MsgGetText(226,XNP_WSGLM.MSG226_INVALID_FK),
187                            'E', 'WSG', SQLCODE, 'xnp_callback_events$xnp_callba.MSG_CODE_TranslateFK');
188             return FALSE;
189          when too_many_rows then
190             XNP_cg$errors.push('Message: '||
191                            XNP_WSGL.MsgGetText(227,XNP_WSGLM.MSG227_TOO_MANY_FKS),
192                            'E', 'WSG', SQLCODE, 'xnp_callback_events$xnp_callba.MSG_CODE_TranslateFK');
193             return FALSE;
194          when others then
195             XNP_cg$errors.push('Message: '||SQLERRM,
196                            'E', 'WSG', SQLCODE, 'xnp_callback_events$xnp_callba.MSG_CODE_TranslateFK');
197             return FALSE;
198    end;
199 --------------------------------------------------------------------------------
200 -- Name:        xnp_callback_events$xnp_callba.msg_code_listofvalues
201 --
202 -- Description:
203 --
204 -- Parameters:
205 --
206 --------------------------------------------------------------------------------
207    procedure msg_code_listofvalues(
208              Z_FILTER in varchar2,
209              Z_MODE in varchar2,
210              Z_CALLER_URL in varchar2,
211              Z_ISSUE_WAIT in varchar2) is
212       L_SEARCH_STRING varchar2(1000);
213       L_ABORT boolean := FALSE;
214       L_INVALID_DEPEDANT boolean := FALSE;
215       L_ANY boolean := FALSE;
216       L_BODY_ATTRIBUTES VarChar2 (1000) := LOV_BODY_ATTRIBUTES;
217    begin
218 
219       XNP_WSGL.RegisterURL('xnp_callback_events$xnp_callba.msg_code_listofvalues');
220       XNP_WSGL.AddURLParam('Z_FILTER', Z_FILTER);
221       XNP_WSGL.AddURLParam('Z_MODE', Z_MODE);
222       XNP_WSGL.AddURLParam('Z_CALLER_URL', Z_CALLER_URL);
223       if XNP_WSGL.NotLowerCase then
224          return;
225       end if;
226 
227 
228       XNP_WSGL.OpenPageHead(XNP_WSGL.MsgGetText(123,XNP_WSGLM.DSP123_LOV_CAPTION,
229                         'Message'));
230 
231       if Z_ISSUE_WAIT is not null then
232 
233          htp.p ('<SCRIPT>
234 function RefreshMe()
235 {
236   location.href = location.href.substring (0, location.href.length - 1);
237 };
238 </SCRIPT>');
239 
240          L_BODY_ATTRIBUTES := L_BODY_ATTRIBUTES || ' OnLoad="RefreshMe()"';
241 
242       else
243          htp.p('<SCRIPT>
244 function PassBack(P_MSG_CODE) {
245    if (opener.location.href != document.forms[0].Z_CALLER_URL.value) {
246       alert("'||XNP_WSGL.MsgGetText(228,XNP_WSGLM.MSG228_LOV_NOT_IN_CONTEXT)||'");
247       return;
248    }
249    opener.document.forms[0].P_MSG_CODE.value = P_MSG_CODE;
250    opener.document.forms[0].P_MSG_CODE.focus();
251    close();
252 }
253 function Find_OnClick() {
254    document.forms[0].submit();
255 }');
256          if LOV_FRAME is null then
257             htp.p('function Close_OnClick() {
258       close();
259 }');
260          end if;
261          htp.p('</SCRIPT>');
262       end if;
263 
264       xnp_callback_events$.TemplateHeader(TRUE,0);
265 
266       XNP_WSGL.ClosePageHead;
267 
268       XNP_WSGL.OpenPageBody(FALSE, p_attributes=>L_BODY_ATTRIBUTES);
269 
270       htp.header(2, htf.italic(XNP_WSGL.MsgGetText(123,XNP_WSGLM.DSP123_LOV_CAPTION,'Message')));
271 
272       if Z_ISSUE_WAIT is not null then
273          htp.p(XNP_WSGL.MsgGetText(127,XNP_WSGLM.DSP127_LOV_PLEASE_WAIT));
274          XNP_WSGL.ClosePageBody;
275          return;
276       else
277          htp.formOpen('xnp_callback_events$xnp_callba.msg_code_listofvalues');
278          XNP_WSGL.HiddenField('Z_CALLER_URL', Z_CALLER_URL);
279          XNP_WSGL.HiddenField('Z_MODE', Z_MODE);
280       end if;
281 
282       L_SEARCH_STRING := rtrim(Z_FILTER);
283       if L_SEARCH_STRING is not null then
284          if ((instr(Z_FILTER,'%') = 0) and (instr(Z_FILTER,'_') = 0)) then
285             L_SEARCH_STRING := L_SEARCH_STRING || '%';
286          end if;
287       else
288          L_SEARCH_STRING := '%';
289       end if;
290 
291       htp.para;
292       htp.p(XNP_WSGL.MsgGetText(19,XNP_WSGLM.CAP019_LOV_FILTER_CAPTION,'Message'));
293       htp.para;
294       htp.formText('Z_FILTER', cvalue=>L_SEARCH_STRING);
295       htp.p('<input type="button" value="'||LOV_FIND_BUT_CAPTION||'" onclick="Find_OnClick()">');
296       if LOV_FRAME is null then
297          htp.p('<input type="button" value="'||LOV_CLOSE_BUT_CAPTION||'" onclick="Close_OnClick()">');
298       end if;
299       htp.formClose;
300 
301 
302       if not L_ABORT then
303 
304          XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE, TRUE);
305 
306          XNP_WSGL.LayoutRowStart;
307          XNP_WSGL.LayoutHeader(1, 'LEFT', 'Message');
308          XNP_WSGL.LayoutRowEnd;
309 
310          declare
311             cursor c1(zmode varchar2,srch varchar2) is
312                select L_MTE.MSG_CODE MSG_CODE
316          begin
313                from   XNP_MSG_TYPES_B L_MTE
314                where  L_MTE.MSG_CODE like upper(srch)
315                order by L_MTE.MSG_CODE;
317             for c1rec in c1(Z_MODE,L_SEARCH_STRING) loop
318                CURR_VAL.MSG_CODE := c1rec.MSG_CODE;
319                XNP_WSGL.LayoutRowStart('TOP');
320                XNP_WSGL.LayoutData('<a href="javascript:PassBack('''||
321                                replace(replace(c1rec.MSG_CODE,'"','"'),'''','\''')||''')">'||CURR_VAL.MSG_CODE||'</a>');
322                XNP_WSGL.LayoutRowEnd;
323                l_any := true;
324             end loop;
325             XNP_WSGL.LayoutClose;
326             if not l_any then
327                htp.p(XNP_WSGL.MsgGetText(224,XNP_WSGLM.MSG224_LOV_NO_ROWS));
328             end if;
329          end;
330       end if;
331 
332       htp.p('<SCRIPT>document.forms[0].Z_FILTER.focus()</SCRIPT>');
333 
334       XNP_WSGL.ClosePageBody;
335 
336    exception
337       when others then
338          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events',
339                              LOV_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.msg_code_listofvalues');
340    end;
341 
342 --------------------------------------------------------------------------------
343 -- Name:        xnp_callback_events$xnp_callba.Startup
344 --
345 -- Description: Entry point for the 'XNP_CALLBACK_EVENTS' module
346 --              component  (Callback Events).
347 --
348 -- Parameters:
349 --
350 --------------------------------------------------------------------------------
351    procedure Startup(
352              Z_DIRECT_CALL in boolean,
353              Z_CHK in varchar2) is
354    begin
355 
356       XNP_WSGL.RegisterURL('xnp_callback_events$xnp_callba.startup');
357       XNP_WSGL.AddURLParam('Z_CHK', Z_CHK);
358 
359       if not Z_DIRECT_CALL then
360          if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
361             return;
362          end if;
363       end if;
364 
365       XNP_WSGL.StoreURLLink(1, 'Callback Events');
366 
367 
368       FormQuery(
369       Z_DIRECT_CALL=>TRUE);
370 
371    exception
372       when others then
373          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
374                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.Startup');
375    end;
376 
377 --------------------------------------------------------------------------------
378 -- Name:        xnp_callback_events$xnp_callba.ActionQuery
379 --
380 -- Description: Called when a Query form is subitted to action the query request.
381 --
382 -- Parameters:
383 --
384 --------------------------------------------------------------------------------
385    procedure ActionQuery(
386              P_ORDER_ID in varchar2,
387              U_ORDER_ID in varchar2,
388              P_STATUS in varchar2,
389              P_MSG_CODE in varchar2,
390              P_CALLBACK_PROC_NAME in varchar2,
391              P_CALLBACK_TYPE in varchar2,
392              P_PROCESS_REFERENCE in varchar2,
393              P_REFERENCE_ID in varchar2,
394              P_CALLBACK_TIMESTAMP in varchar2,
395              U_CALLBACK_TIMESTAMP in varchar2,
396              P_REGISTERED_TIMESTAMP in varchar2,
397              U_REGISTERED_TIMESTAMP in varchar2,
398              P_WI_INSTANCE_ID in varchar2,
399              U_WI_INSTANCE_ID in varchar2,
400              P_FA_INSTANCE_ID in varchar2,
401              U_FA_INSTANCE_ID in varchar2,
402        	     Z_DIRECT_CALL in boolean default false,
403              Z_ACTION in varchar2,
404              Z_CHK in varchar2) is
405 
406      L_CHK varchar2(10) := Z_CHK;
407      L_BUTCHK varchar2(100):= null;
408    begin
409 
410     if Z_DIRECT_CALL then
411       L_CHK := to_char(XNP_WSGL.Checksum(''));
412     else
413       if not XNP_WSGL.ValidateChecksum('', L_CHK) then
414          return;
415       end if;
416     end if;
417 
418 --if on the query form and insert is allowed
419       QueryList(
420                 P_ORDER_ID,
421                 U_ORDER_ID,
422                 P_STATUS,
423                 P_MSG_CODE,
424                 P_CALLBACK_PROC_NAME,
425                 P_CALLBACK_TYPE,
426                 P_PROCESS_REFERENCE,
427                 P_REFERENCE_ID,
428                 P_CALLBACK_TIMESTAMP,
429                 U_CALLBACK_TIMESTAMP,
430                 P_REGISTERED_TIMESTAMP,
431                 U_REGISTERED_TIMESTAMP,
432                 P_WI_INSTANCE_ID,
433                 U_WI_INSTANCE_ID,
434                 P_FA_INSTANCE_ID,
435                 U_FA_INSTANCE_ID,
436                 null, L_BUTCHK, Z_DIRECT_CALL=>TRUE);
437 
438    exception
439       when others then
440          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
441                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.ActionQuery');
442    end;
443 
444 --------------------------------------------------------------------------------
445 -- Name:        xnp_callback_events$xnp_callba.QueryHits
446 --
447 -- Description: Returns the number or rows which matches the given search
448 --              criteria (if any).
449 --
450 -- Parameters:
451 --
452 --------------------------------------------------------------------------------
453    function QueryHits(
454             P_ORDER_ID in varchar2,
455             U_ORDER_ID in varchar2,
456             P_STATUS in varchar2,
457             P_MSG_CODE in varchar2,
458             P_CALLBACK_PROC_NAME in varchar2,
462             P_CALLBACK_TIMESTAMP in varchar2,
459             P_CALLBACK_TYPE in varchar2,
460             P_PROCESS_REFERENCE in varchar2,
461             P_REFERENCE_ID in varchar2,
463             U_CALLBACK_TIMESTAMP in varchar2,
464             P_REGISTERED_TIMESTAMP in varchar2,
465             U_REGISTERED_TIMESTAMP in varchar2,
466             P_WI_INSTANCE_ID in varchar2,
467             U_WI_INSTANCE_ID in varchar2,
468             P_FA_INSTANCE_ID in varchar2,
469             U_FA_INSTANCE_ID in varchar2) return number is
470       I_QUERY     varchar2(2000) := '';
471       I_CURSOR    integer;
472       I_VOID      integer;
473       I_FROM_POS  integer := 0;
474       I_COUNT     number(10);
475    begin
476 
477       if not BuildSQL(P_ORDER_ID,
478                       U_ORDER_ID,
479                       P_STATUS,
480                       P_MSG_CODE,
481                       P_CALLBACK_PROC_NAME,
482                       P_CALLBACK_TYPE,
483                       P_PROCESS_REFERENCE,
484                       P_REFERENCE_ID,
485                       P_CALLBACK_TIMESTAMP,
486                       U_CALLBACK_TIMESTAMP,
487                       P_REGISTERED_TIMESTAMP,
488                       U_REGISTERED_TIMESTAMP,
489                       P_WI_INSTANCE_ID,
490                       U_WI_INSTANCE_ID,
491                       P_FA_INSTANCE_ID,
492                       U_FA_INSTANCE_ID) then
493          return -1;
494       end if;
495 
496       if not PreQuery(P_ORDER_ID,
497                       U_ORDER_ID,
498                       P_STATUS,
499                       P_MSG_CODE,
500                       P_CALLBACK_PROC_NAME,
501                       P_CALLBACK_TYPE,
502                       P_PROCESS_REFERENCE,
503                       P_REFERENCE_ID,
504                       P_CALLBACK_TIMESTAMP,
505                       U_CALLBACK_TIMESTAMP,
506                       P_REGISTERED_TIMESTAMP,
507                       U_REGISTERED_TIMESTAMP,
508                       P_WI_INSTANCE_ID,
509                       U_WI_INSTANCE_ID,
510                       P_FA_INSTANCE_ID,
511                       U_FA_INSTANCE_ID) then
512          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_cg$errors.GetErrors,
513                              'Callback Events'||' : '||'Callback Events', DEF_BODY_ATTRIBUTES);
514          return -1;
515       end if;
516 
517       I_FROM_POS := instr(upper(ZONE_SQL), ' FROM ');
518 
519       if I_FROM_POS = 0 then
520          return -1;
521       end if;
522 
523       I_QUERY := 'SELECT count(*)' ||
524                  substr(ZONE_SQL, I_FROM_POS);
525 
526       I_CURSOR := dbms_sql.open_cursor;
527       dbms_sql.parse(I_CURSOR, I_QUERY, dbms_sql.v7);
528       dbms_sql.define_column(I_CURSOR, 1, I_COUNT);
529       I_VOID := dbms_sql.execute(I_CURSOR);
530       I_VOID := dbms_sql.fetch_rows(I_CURSOR);
531       dbms_sql.column_value(I_CURSOR, 1, I_COUNT);
532       dbms_sql.close_cursor(I_CURSOR);
533 
534       return I_COUNT;
535 
536    exception
537       when others then
538          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
539                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.QueryHits');
540          return -1;
541    end;--------------------------------------------------------------------------------
542 -- Name:        xnp_callback_events$xnp_callba.BuildSQL
543 --
544 -- Description: Builds the SQL for the 'XNP_CALLBACK_EVENTS' module component (Callback Events).
545 --              This incorporates all query criteria and Foreign key columns.
546 --
547 -- Parameters:
548 --
549 --------------------------------------------------------------------------------
550    function BuildSQL(
551             P_ORDER_ID in varchar2,
552             U_ORDER_ID in varchar2,
553             P_STATUS in varchar2,
554             P_MSG_CODE in varchar2,
555             P_CALLBACK_PROC_NAME in varchar2,
556             P_CALLBACK_TYPE in varchar2,
557             P_PROCESS_REFERENCE in varchar2,
558             P_REFERENCE_ID in varchar2,
559             P_CALLBACK_TIMESTAMP in varchar2,
560             U_CALLBACK_TIMESTAMP in varchar2,
561             P_REGISTERED_TIMESTAMP in varchar2,
562             U_REGISTERED_TIMESTAMP in varchar2,
563             P_WI_INSTANCE_ID in varchar2,
564             U_WI_INSTANCE_ID in varchar2,
565             P_FA_INSTANCE_ID in varchar2,
566             U_FA_INSTANCE_ID in varchar2) return boolean is
567 
568       I_WHERE varchar2(2000);
569    begin
570 
571       InitialiseDomain('STATUS');
572       InitialiseDomain('CALLBACK_TYPE');
573 
574       -- Build up the Where clause
575       I_WHERE := I_WHERE || ' where L_MTE.MSG_CODE = CET.MSG_CODE';
576 
577       begin
578          XNP_WSGL.BuildWhere(P_ORDER_ID, U_ORDER_ID, 'CET.ORDER_ID', XNP_WSGL.TYPE_NUMBER, I_WHERE);
579       exception
580          when others then
581             XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR_QRY, SQLERRM,
582                                 'Callback Events'||' : '||'Callback Events', DEF_BODY_ATTRIBUTES, NULL,
583                                 XNP_WSGL.MsgGetText(210,XNP_WSGLM.MSG210_INVALID_QRY,'Order ID'));
584             return false;
585       end;
586       XNP_WSGL.BuildWhere(XNP_WSGL.DomainValue(D_STATUS, P_STATUS), 'CET.STATUS', XNP_WSGL.TYPE_CHAR, I_WHERE);
587       XNP_WSGL.BuildWhere(P_MSG_CODE, 'CET.MSG_CODE', XNP_WSGL.TYPE_CHAR_UPPER, I_WHERE);
588       XNP_WSGL.BuildWhere(P_CALLBACK_PROC_NAME, 'CET.CALLBACK_PROC_NAME', XNP_WSGL.TYPE_CHAR, I_WHERE);
589       XNP_WSGL.BuildWhere(XNP_WSGL.DomainValue(D_CALLBACK_TYPE, P_CALLBACK_TYPE), 'CET.CALLBACK_TYPE', XNP_WSGL.TYPE_CHAR, I_WHERE);
593          XNP_WSGL.BuildWhere(P_CALLBACK_TIMESTAMP, U_CALLBACK_TIMESTAMP, 'CET.CALLBACK_TIMESTAMP', XNP_WSGL.TYPE_DATE, I_WHERE, 'DD-MON-RRRR HH24:MI:SS');
590       XNP_WSGL.BuildWhere(P_PROCESS_REFERENCE, 'CET.PROCESS_REFERENCE', XNP_WSGL.TYPE_CHAR_UPPER, I_WHERE);
591       XNP_WSGL.BuildWhere(P_REFERENCE_ID, 'CET.REFERENCE_ID', XNP_WSGL.TYPE_CHAR_UPPER, I_WHERE);
592       begin
594       exception
595          when others then
596             XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR_QRY, SQLERRM,
597                                 'Callback Events'||' : '||'Callback Events', DEF_BODY_ATTRIBUTES, NULL,
598                                 XNP_WSGL.MsgGetText(210,XNP_WSGLM.MSG210_INVALID_QRY,'Callback Timestamp'),
599                                 XNP_WSGL.MsgGetText(211,XNP_WSGLM.MSG211_EXAMPLE_TODAY,to_char(sysdate, 'DD-MON-RRRR HH24:MI:SS')));
600             return false;
601       end;
602       begin
603          XNP_WSGL.BuildWhere(P_REGISTERED_TIMESTAMP, U_REGISTERED_TIMESTAMP, 'CET.REGISTERED_TIMESTAMP', XNP_WSGL.TYPE_DATE, I_WHERE, 'DD-MON-RRRR HH24:MI:SS');
604       exception
605          when others then
606             XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR_QRY, SQLERRM,
607                                 'Callback Events'||' : '||'Callback Events', DEF_BODY_ATTRIBUTES, NULL,
608                                 XNP_WSGL.MsgGetText(210,XNP_WSGLM.MSG210_INVALID_QRY,'Registered Timestamp'),
609                                 XNP_WSGL.MsgGetText(211,XNP_WSGLM.MSG211_EXAMPLE_TODAY,to_char(sysdate, 'DD-MON-RRRR HH24:MI:SS')));
610             return false;
611       end;
612       begin
613          XNP_WSGL.BuildWhere(P_WI_INSTANCE_ID, U_WI_INSTANCE_ID, 'CET.WI_INSTANCE_ID', XNP_WSGL.TYPE_NUMBER, I_WHERE);
614       exception
615          when others then
616             XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR_QRY, SQLERRM,
617                                 'Callback Events'||' : '||'Callback Events', DEF_BODY_ATTRIBUTES, NULL,
618                                 XNP_WSGL.MsgGetText(210,XNP_WSGLM.MSG210_INVALID_QRY,'WI Instance ID'));
619             return false;
620       end;
621       begin
622          XNP_WSGL.BuildWhere(P_FA_INSTANCE_ID, U_FA_INSTANCE_ID, 'CET.FA_INSTANCE_ID', XNP_WSGL.TYPE_NUMBER, I_WHERE);
623       exception
624          when others then
625             XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR_QRY, SQLERRM,
626                                 'Callback Events'||' : '||'Callback Events', DEF_BODY_ATTRIBUTES, NULL,
627                                 XNP_WSGL.MsgGetText(210,XNP_WSGLM.MSG210_INVALID_QRY,'FA Instance ID'));
628             return false;
629       end;
630 
631       ZONE_SQL := 'SELECT CET.ORDER_ID,
632                          CET.STATUS,
633                          CET.MSG_CODE,
634                          CET.CALLBACK_PROC_NAME,
635                          CET.CALLBACK_TYPE,
636                          CET.PROCESS_REFERENCE,
637                          CET.REFERENCE_ID,
638                          CET.CLOSE_REQD_FLAG,
639                          CET.CALLBACK_EVENT_ID,
640                          CET.CALLBACK_TIMESTAMP,
641                          CET.REGISTERED_TIMESTAMP,
642                          CET.WI_INSTANCE_ID,
643                          CET.FA_INSTANCE_ID
644                   FROM   XNP_CALLBACK_EVENTS CET,
645                          XNP_MSG_TYPES_B L_MTE';
646 
647       ZONE_SQL := ZONE_SQL || I_WHERE;
648       ZONE_SQL := ZONE_SQL || ' ORDER BY CET.CALLBACK_EVENT_ID Desc,
649                                        CET.REFERENCE_ID,
650                                        CET.CALLBACK_TIMESTAMP Desc ,
651                                        CET.MSG_CODE,
652                                        CET.REGISTERED_TIMESTAMP Desc ';
653       return true;
654 
655    exception
656       when others then
657          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
658                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.BuildSQL');
659          return false;
660    end;
661 
662 
663 --------------------------------------------------------------------------------
664 -- Name:        xnp_callback_events$xnp_callba.FormQuery
665 --
666 -- Description: This procedure builds an HTML form for entry of query criteria.
667 --              The criteria entered are to restrict the query of the 'XNP_CALLBACK_EVENTS'
668 --              module component (Callback Events).
669 --
670 -- Parameters:
671 --
672 --------------------------------------------------------------------------------
673    procedure FormQuery(
674              Z_DIRECT_CALL in boolean,
675              Z_CHK in varchar2) is
676    begin
677 
678       if not Z_DIRECT_CALL then
679          if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
680             return;
681          end if;
682       end if;
683 
684       XNP_WSGL.OpenPageHead('Callback Events'||' : '||'Callback Events');
685       CreateQueryJavaScript;
686 	  -- Added for iHelp
687 	  htp.p('<SCRIPT> ');
688 	  icx_admin_sig.help_win_script('xnpDiag_events', null, 'XNP');
689 	  htp.p('</SCRIPT>');
690 	  -- <<
691       xnp_callback_events$.TemplateHeader(TRUE,0);
692       XNP_WSGL.ClosePageHead;
693 
694 	  -- Added for iHelp
695 	  htp.p('<A HREF="javascript:help_window()"');
696 	  htp.p('onMouseOver="window.status='||''''||'Help'||''''||';return true">');
697 	  htp.p(htf.img('/OA_MEDIA/afhelp.gif'));
698 	  htp.p('</A>');
699 	  htp.p(htf.nl);
700 	  -- <<
701 
702       XNP_WSGL.OpenPageBody(FALSE, p_attributes=>QF_BODY_ATTRIBUTES);
703 
704       htp.p(htf.bold(fnd_message.get_string('XNP','WEB_TITLE')));
705       xnp_callback_events$.FirstPage(TRUE);
706       --htp.p(htf.header(1,fnd_message.get_string('XNP','WEB_XNPCALLBACK_EVENTS_DETAILS_TITLE')));
707       htp.p(htf.header(1,fnd_message.get_string('XNP','Callback Event Diagnostics')));
711 
708       htp.para;
709       htp.p(XNP_WSGL.MsgGetText(116,XNP_WSGLM.DSP116_ENTER_QRY_CAPTION,'Callback Events'));
710       htp.para;
712       htp.formOpen(curl => 'xnp_callback_events$xnp_callba.actionquery', cattributes => 'NAME="frmZero"');
713 
714       XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE);
715 
716       XNP_WSGL.LayoutRowStart;
717       for i in 1..QF_NUMBER_OF_COLUMNS loop
718 	  XNP_WSGL.LayoutHeader(21, 'LEFT', NULL);
719 	  XNP_WSGL.LayoutHeader(30, 'LEFT', NULL);
720       end loop;
721       XNP_WSGL.LayoutRowEnd;
722 
723       XNP_WSGL.LayoutRowStart('TOP');
724       XNP_WSGL.LayoutData(htf.bold('Order ID:'));
725       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('ORDER_ID', '10', TRUE));
726       XNP_WSGL.LayoutRowEnd;
727       XNP_WSGL.LayoutRowStart('TOP');
728       XNP_WSGL.LayoutData(htf.bold('Status:'));
729       InitialiseDomain('STATUS');
730       XNP_WSGL.LayoutData(XNP_WSGL.BuildDVControl(D_STATUS, XNP_WSGL.CTL_QUERY));
731       XNP_WSGL.LayoutRowEnd;
732       XNP_WSGL.LayoutRowStart('TOP');
733       XNP_WSGL.LayoutData(htf.bold('Message:'));
734       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('MSG_CODE', '10', FALSE) || ' ' ||
735                       XNP_WSGJSL.LOVButton('MSG_CODE',LOV_BUTTON_TEXT));
736       XNP_WSGL.LayoutRowEnd;
737       XNP_WSGL.LayoutRowStart('TOP');
738       XNP_WSGL.LayoutData(htf.bold('Callback Procedure:'));
739       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('CALLBACK_PROC_NAME', '30', FALSE));
740       XNP_WSGL.LayoutRowEnd;
741       XNP_WSGL.LayoutRowStart('TOP');
742       XNP_WSGL.LayoutData(htf.bold('Callback Type:'));
743       InitialiseDomain('CALLBACK_TYPE');
744       XNP_WSGL.LayoutData(XNP_WSGL.BuildDVControl(D_CALLBACK_TYPE, XNP_WSGL.CTL_QUERY));
745       XNP_WSGL.LayoutRowEnd;
746       XNP_WSGL.LayoutRowStart('TOP');
747       XNP_WSGL.LayoutData(htf.bold('Process Reference:'));
748       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('PROCESS_REFERENCE', '20', FALSE));
749       XNP_WSGL.LayoutRowEnd;
750       XNP_WSGL.LayoutRowStart('TOP');
751       XNP_WSGL.LayoutData(htf.bold('Reference Id:'));
752       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('REFERENCE_ID', '20', FALSE));
753       XNP_WSGL.LayoutRowEnd;
754       XNP_WSGL.LayoutRowStart('TOP');
755       XNP_WSGL.LayoutData(htf.bold('Callback Timestamp:'));
756       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('CALLBACK_TIMESTAMP', '25', TRUE));
757       XNP_WSGL.LayoutRowEnd;
758       XNP_WSGL.LayoutRowStart('TOP');
759       XNP_WSGL.LayoutData(htf.bold('Registered Timestamp:'));
760       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('REGISTERED_TIMESTAMP', '25', TRUE));
761       XNP_WSGL.LayoutRowEnd;
762       XNP_WSGL.LayoutRowStart('TOP');
763       XNP_WSGL.LayoutData(htf.bold('WI Instance ID:'));
764       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('WI_INSTANCE_ID', '25', TRUE));
765       XNP_WSGL.LayoutRowEnd;
766       XNP_WSGL.LayoutRowStart('TOP');
767       XNP_WSGL.LayoutData(htf.bold('FA Instance ID:'));
768       XNP_WSGL.LayoutData(XNP_WSGL.BuildQueryControl('FA_INSTANCE_ID', '25', TRUE));
769       XNP_WSGL.LayoutRowEnd;
770 
771       XNP_WSGL.LayoutClose;
772 
773       htp.p ('<SCRIPT><!--');
774       htp.p ('document.write (''<input type=hidden name="Z_ACTION">'')');
775       htp.p ('//-->');
776       htp.p ('</SCRIPT>');
777       htp.p ('<SCRIPT><!--');
778       htp.p ('document.write (''' || htf.formSubmit('', htf.escape_sc(QF_QUERY_BUT_CAPTION), 'onClick="this.form.Z_ACTION.value=\''' || QF_QUERY_BUT_ACTION || '\''"') || ''')');
779       htp.p ('//-->');
780       htp.p ('</SCRIPT>');
781 
782       if XNP_WSGL.IsSupported ('NOSCRIPT')
783       then
784 
785         htp.p ('<NOSCRIPT>');
786         htp.formSubmit('Z_ACTION', htf.escape_sc(QF_QUERY_BUT_CAPTION));
787         htp.p ('</NOSCRIPT>');
788 
789       end if;
790       htp.formReset(htf.escape_sc(QF_CLEAR_BUT_CAPTION));
791 
792       XNP_WSGL.HiddenField('Z_CHK',
793                      to_char(XNP_WSGL.Checksum('')));
794       htp.formClose;
795 
796       htp.p(htf.img('/OA_MEDIA/FNDLOGOS.gif'));
797 
798       XNP_WSGL.ClosePageBody;
799 
800    exception
801       when others then
802          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
803                              QF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.FormQuery');
804          XNP_WSGL.ClosePageBody;
805    end;
806 
807 --------------------------------------------------------------------------------
808 -- Name:        xnp_callback_events$xnp_callba.QueryList
809 --
810 -- Description: This procedure builds the Record list for the 'XNP_CALLBACK_EVENTS'
811 --              module component (Callback Events).
812 --
813 --              The Record List displays context information for records which
814 --              match the specified query criteria.
815 --              Sets of records are displayed (12 records at a time)
816 --              with Next/Previous buttons to get other record sets.
817 --
818 -- Parameters:  P_ORDER_ID - Order ID
819 --              U_ORDER_ID - Order ID (upper bound)
820 --              P_STATUS - Status
821 --              P_MSG_CODE - Message
822 --              P_CALLBACK_PROC_NAME - Callback Procedure
823 --              P_CALLBACK_TYPE - Callback Type
824 --              P_PROCESS_REFERENCE - Process Reference
825 --              P_REFERENCE_ID - Reference Id
826 --              P_CALLBACK_TIMESTAMP - Callback Timestamp
827 --              U_CALLBACK_TIMESTAMP - Callback Timestamp (upper bound)
828 --              P_REGISTERED_TIMESTAMP - Registered Timestamp
829 --              U_REGISTERED_TIMESTAMP - Registered Timestamp (upper bound)
830 --              P_WI_INSTANCE_ID - WI Instance ID
831 --              U_WI_INSTANCE_ID - WI Instance ID (upper bound)
835 --              Z_ACTION - Next or Previous set
832 --              P_FA_INSTANCE_ID - FA Instance ID
833 --              U_FA_INSTANCE_ID - FA Instance ID (upper bound)
834 --              Z_START - First record to display
836 --
837 --------------------------------------------------------------------------------
838    procedure QueryList(
839              P_ORDER_ID in varchar2,
840              U_ORDER_ID in varchar2,
841              P_STATUS in varchar2,
842              P_MSG_CODE in varchar2,
843              P_CALLBACK_PROC_NAME in varchar2,
844              P_CALLBACK_TYPE in varchar2,
845              P_PROCESS_REFERENCE in varchar2,
846              P_REFERENCE_ID in varchar2,
847              P_CALLBACK_TIMESTAMP in varchar2,
848              U_CALLBACK_TIMESTAMP in varchar2,
849              P_REGISTERED_TIMESTAMP in varchar2,
850              U_REGISTERED_TIMESTAMP in varchar2,
851              P_WI_INSTANCE_ID in varchar2,
852              U_WI_INSTANCE_ID in varchar2,
853              P_FA_INSTANCE_ID in varchar2,
854              U_FA_INSTANCE_ID in varchar2,
855              Z_START in varchar2,
856              Z_ACTION in varchar2,
857              Z_DIRECT_CALL in boolean,
858              Z_CHK in varchar2) is
859 
860       L_VF_FRAME          varchar2(20) := null;
861       I_WHERE             varchar2(2000) := '';
862       I_CURSOR            integer;
863       I_VOID              integer;
864       I_ROWS_FETCHED      integer := 0;
865       I_TOTAL_ROWS        integer := 0;
866       I_START             number(6) := to_number(Z_START);
867       I_COUNT             number(10) := 0;
868       I_OF_TOTAL_TEXT     varchar2(200) := '';
869       I_NEXT_BUT          boolean;
870       I_PREV_BUT          boolean;
871       L_CHECKSUM          varchar2(10);
872 
873    begin
874 
875       XNP_WSGL.RegisterURL('xnp_callback_events$xnp_callba.querylist');
876       XNP_WSGL.AddURLParam('P_ORDER_ID', P_ORDER_ID);
877       XNP_WSGL.AddURLParam('U_ORDER_ID', U_ORDER_ID);
878       XNP_WSGL.AddURLParam('P_STATUS', P_STATUS);
879       XNP_WSGL.AddURLParam('P_MSG_CODE', P_MSG_CODE);
880       XNP_WSGL.AddURLParam('P_CALLBACK_PROC_NAME', P_CALLBACK_PROC_NAME);
881       XNP_WSGL.AddURLParam('P_CALLBACK_TYPE', P_CALLBACK_TYPE);
882       XNP_WSGL.AddURLParam('P_PROCESS_REFERENCE', P_PROCESS_REFERENCE);
883       XNP_WSGL.AddURLParam('P_REFERENCE_ID', P_REFERENCE_ID);
884       XNP_WSGL.AddURLParam('P_CALLBACK_TIMESTAMP', P_CALLBACK_TIMESTAMP);
885       XNP_WSGL.AddURLParam('U_CALLBACK_TIMESTAMP', U_CALLBACK_TIMESTAMP);
886       XNP_WSGL.AddURLParam('P_REGISTERED_TIMESTAMP', P_REGISTERED_TIMESTAMP);
887       XNP_WSGL.AddURLParam('U_REGISTERED_TIMESTAMP', U_REGISTERED_TIMESTAMP);
888       XNP_WSGL.AddURLParam('P_WI_INSTANCE_ID', P_WI_INSTANCE_ID);
889       XNP_WSGL.AddURLParam('U_WI_INSTANCE_ID', U_WI_INSTANCE_ID);
890       XNP_WSGL.AddURLParam('P_FA_INSTANCE_ID', P_FA_INSTANCE_ID);
891       XNP_WSGL.AddURLParam('U_FA_INSTANCE_ID', U_FA_INSTANCE_ID);
892       XNP_WSGL.AddURLParam('Z_START', Z_START);
893       XNP_WSGL.AddURLParam('Z_ACTION', Z_ACTION);
894       XNP_WSGL.AddURLParam('Z_CHK', Z_CHK);
895       if not Z_DIRECT_CALL then
896          if not XNP_WSGL.ValidateChecksum('', Z_CHK) then
897             return;
898          end if;
899       end if;
900 
901       if (Z_ACTION = RL_QUERY_BUT_ACTION) or (Z_ACTION = RL_QUERY_BUT_CAPTION) then
902          FormQuery(
903          Z_DIRECT_CALL=>TRUE);
904          return;
905       end if;
906 
907       XNP_WSGL.OpenPageHead('Callback Events'||' : '||'Callback Events');
908       CreateListJavaScript;
909       xnp_callback_events$.TemplateHeader(TRUE,0);
910       XNP_WSGL.ClosePageHead;
911 
912       XNP_WSGL.OpenPageBody(FALSE, p_attributes=>RL_BODY_ATTRIBUTES);
913 
914       htp.p(htf.bold(fnd_message.get_string('XNP','WEB_TITLE')));
915       --htp.p(htf.header(1,fnd_message.get_string('XNP','WEB_XNPCALLBACK_EVENTS_DETAILS_TITLE')));
916       htp.p(htf.header(1,fnd_message.get_string('XNP','Callback Event Diagnostics')));
917       if (Z_ACTION = RL_LAST_BUT_ACTION) or (Z_ACTION = RL_LAST_BUT_CAPTION) or
918          (Z_ACTION = RL_COUNT_BUT_ACTION) or (Z_ACTION = RL_COUNT_BUT_CAPTION) or
919          (RL_TOTAL_COUNT_REQD)
920       then
921 
922          I_COUNT := QueryHits(
923                     P_ORDER_ID,
924                     U_ORDER_ID,
925                     P_STATUS,
926                     P_MSG_CODE,
927                     P_CALLBACK_PROC_NAME,
928                     P_CALLBACK_TYPE,
929                     P_PROCESS_REFERENCE,
930                     P_REFERENCE_ID,
931                     P_CALLBACK_TIMESTAMP,
932                     U_CALLBACK_TIMESTAMP,
933                     P_REGISTERED_TIMESTAMP,
934                     U_REGISTERED_TIMESTAMP,
935                     P_WI_INSTANCE_ID,
936                     U_WI_INSTANCE_ID,
937                     P_FA_INSTANCE_ID,
938                     U_FA_INSTANCE_ID);
939          if I_COUNT = -1 then
940             XNP_WSGL.ClosePageBody;
941             return;
942          end if;
943       end if;
944 
945       if (Z_ACTION = RL_COUNT_BUT_ACTION) or (Z_ACTION = RL_COUNT_BUT_CAPTION) or
946          RL_TOTAL_COUNT_REQD then
947          I_OF_TOTAL_TEXT := ' '||XNP_WSGL.MsgGetText(111,XNP_WSGLM.DSP111_OF_TOTAL, to_char(I_COUNT));
948       end if;
949 
950       if Z_START IS NULL or (Z_ACTION = RL_FIRST_BUT_ACTION) or (Z_ACTION = RL_FIRST_BUT_CAPTION) then
951          I_START := 1;
952       elsif (Z_ACTION = RL_NEXT_BUT_ACTION) or (Z_ACTION = RL_NEXT_BUT_CAPTION) then
953          I_START := I_START + RL_RECORD_SET_SIZE;
954       elsif (Z_ACTION = RL_PREV_BUT_ACTION) or (Z_ACTION = RL_PREV_BUT_CAPTION) then
955          I_START := I_START - RL_RECORD_SET_SIZE;
959 	 null;
956       elsif (Z_ACTION = RL_LAST_BUT_ACTION) or (Z_ACTION = RL_LAST_BUT_CAPTION) then
957          I_START := 1 + (floor((I_COUNT-1)/RL_RECORD_SET_SIZE)*RL_RECORD_SET_SIZE);
958       elsif Z_ACTION is null and I_START = 1 then
960       elsif Z_ACTION IS NULL then
961          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_WSGL.MsgGetText(215,XNP_WSGLM.MSG215_NO_MULTIPLE_SUBMITS),
962                              'Callback Events'||' : '||'Callback Events', RL_BODY_ATTRIBUTES);
963          XNP_WSGL.ClosePageBody;
964          return;
965       end if;
966 
967       if I_START < 1 then
968           I_START := 1;
969       end if;
970 
971       I_PREV_BUT := TRUE;
972       I_NEXT_BUT := FALSE;
973       if I_START = 1 or Z_ACTION IS NULL then
974          I_PREV_BUT := FALSE;
975       end if;
976 
977       if nvl(Z_ACTION, 'X') <> 'DONTQUERY' then
978 
979          if ZONE_SQL IS NULL then
980             if not BuildSQL(
981                        P_ORDER_ID,
982                        U_ORDER_ID,
983                        P_STATUS,
984                        P_MSG_CODE,
985                        P_CALLBACK_PROC_NAME,
986                        P_CALLBACK_TYPE,
987                        P_PROCESS_REFERENCE,
988                        P_REFERENCE_ID,
989                        P_CALLBACK_TIMESTAMP,
990                        U_CALLBACK_TIMESTAMP,
991                        P_REGISTERED_TIMESTAMP,
992                        U_REGISTERED_TIMESTAMP,
993                        P_WI_INSTANCE_ID,
994                        U_WI_INSTANCE_ID,
995                        P_FA_INSTANCE_ID,
996                        U_FA_INSTANCE_ID) then
997                XNP_WSGL.ClosePageBody;
998                return;
999             end if;
1000          end if;
1001 
1002          if not PreQuery(
1003                        P_ORDER_ID,
1004                        U_ORDER_ID,
1005                        P_STATUS,
1006                        P_MSG_CODE,
1007                        P_CALLBACK_PROC_NAME,
1008                        P_CALLBACK_TYPE,
1009                        P_PROCESS_REFERENCE,
1010                        P_REFERENCE_ID,
1011                        P_CALLBACK_TIMESTAMP,
1012                        U_CALLBACK_TIMESTAMP,
1013                        P_REGISTERED_TIMESTAMP,
1014                        U_REGISTERED_TIMESTAMP,
1015                        P_WI_INSTANCE_ID,
1016                        U_WI_INSTANCE_ID,
1017                        P_FA_INSTANCE_ID,
1018                        U_FA_INSTANCE_ID) then
1019             XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_ERROR, XNP_cg$errors.GetErrors,
1020                                 'Callback Events'||' : '||'Callback Events', RL_BODY_ATTRIBUTES);
1021          return;
1022          end if;
1023 
1024          InitialiseDomain('STATUS');
1025          InitialiseDomain('CALLBACK_TYPE');
1026          InitialiseDomain('CLOSE_REQD_FLAG');
1027 
1028 
1029          I_CURSOR := dbms_sql.open_cursor;
1030          dbms_sql.parse(I_CURSOR, ZONE_SQL, dbms_sql.v7);
1031          dbms_sql.define_column(I_CURSOR, 1, CURR_VAL.ORDER_ID);
1032          dbms_sql.define_column(I_CURSOR, 2, CURR_VAL.STATUS, 10);
1033          dbms_sql.define_column(I_CURSOR, 3, CURR_VAL.MSG_CODE, 20);
1034          dbms_sql.define_column(I_CURSOR, 4, CURR_VAL.CALLBACK_PROC_NAME, 80);
1035          dbms_sql.define_column(I_CURSOR, 5, CURR_VAL.CALLBACK_TYPE, 20);
1036          dbms_sql.define_column(I_CURSOR, 6, CURR_VAL.PROCESS_REFERENCE, 512);
1037          dbms_sql.define_column(I_CURSOR, 7, CURR_VAL.REFERENCE_ID, 80);
1038          dbms_sql.define_column(I_CURSOR, 8, CURR_VAL.CLOSE_REQD_FLAG, 1);
1039          dbms_sql.define_column(I_CURSOR, 9, CURR_VAL.CALLBACK_EVENT_ID);
1040          dbms_sql.define_column(I_CURSOR, 10, CURR_VAL.CALLBACK_TIMESTAMP);
1041          dbms_sql.define_column(I_CURSOR, 11, CURR_VAL.REGISTERED_TIMESTAMP);
1042          dbms_sql.define_column(I_CURSOR, 12, CURR_VAL.WI_INSTANCE_ID);
1043          dbms_sql.define_column(I_CURSOR, 13, CURR_VAL.FA_INSTANCE_ID);
1044 
1045          I_VOID := dbms_sql.execute(I_CURSOR);
1046          I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1047       else
1048          I_ROWS_FETCHED := 0;
1049       end if;
1050       I_TOTAL_ROWS := I_ROWS_FETCHED;
1051 
1052       if I_ROWS_FETCHED <> 0 then
1053 
1054          XNP_WSGL.LayoutOpen(XNP_WSGL.LAYOUT_TABLE, P_BORDER=>TRUE);
1055 
1056          XNP_WSGL.LayoutRowStart;
1057          for i in 1..RL_NUMBER_OF_COLUMNS loop
1058       	    XNP_WSGL.LayoutHeader(10, 'RIGHT', 'Order ID');
1059       	    XNP_WSGL.LayoutHeader(10, 'LEFT', 'Status');
1060       	    XNP_WSGL.LayoutHeader(10, 'LEFT', 'Message');
1061       	    XNP_WSGL.LayoutHeader(30, 'LEFT', 'Callback Procedure');
1062       	    XNP_WSGL.LayoutHeader(10, 'LEFT', 'Callback Type');
1063       	    XNP_WSGL.LayoutHeader(20, 'LEFT', 'Process Reference');
1064       	    XNP_WSGL.LayoutHeader(20, 'LEFT', 'Reference Id');
1065       	    XNP_WSGL.LayoutHeader(1, 'LEFT', 'Close Reqd Flag');
1066       	    XNP_WSGL.LayoutHeader(25, 'LEFT', 'Callback Timestamp');
1067       	    XNP_WSGL.LayoutHeader(25, 'LEFT', 'Registered Timestamp');
1068       	    XNP_WSGL.LayoutHeader(25, 'RIGHT', 'WI Instance ID');
1069       	    XNP_WSGL.LayoutHeader(25, 'RIGHT', 'FA Instance ID');
1070          end loop;
1071          XNP_WSGL.LayoutRowEnd;
1072 
1073          while I_ROWS_FETCHED <> 0 loop
1074 
1075             if I_TOTAL_ROWS >= I_START then
1076                dbms_sql.column_value(I_CURSOR, 1, CURR_VAL.ORDER_ID);
1077                dbms_sql.column_value(I_CURSOR, 2, CURR_VAL.STATUS);
1078                dbms_sql.column_value(I_CURSOR, 3, CURR_VAL.MSG_CODE);
1079                dbms_sql.column_value(I_CURSOR, 4, CURR_VAL.CALLBACK_PROC_NAME);
1080                dbms_sql.column_value(I_CURSOR, 5, CURR_VAL.CALLBACK_TYPE);
1084                dbms_sql.column_value(I_CURSOR, 9, CURR_VAL.CALLBACK_EVENT_ID);
1081                dbms_sql.column_value(I_CURSOR, 6, CURR_VAL.PROCESS_REFERENCE);
1082                dbms_sql.column_value(I_CURSOR, 7, CURR_VAL.REFERENCE_ID);
1083                dbms_sql.column_value(I_CURSOR, 8, CURR_VAL.CLOSE_REQD_FLAG);
1085                dbms_sql.column_value(I_CURSOR, 10, CURR_VAL.CALLBACK_TIMESTAMP);
1086                dbms_sql.column_value(I_CURSOR, 11, CURR_VAL.REGISTERED_TIMESTAMP);
1087                dbms_sql.column_value(I_CURSOR, 12, CURR_VAL.WI_INSTANCE_ID);
1088                dbms_sql.column_value(I_CURSOR, 13, CURR_VAL.FA_INSTANCE_ID);
1089                L_CHECKSUM := to_char(XNP_WSGL.Checksum(''||CURR_VAL.CALLBACK_EVENT_ID));
1090 
1091 
1092                XNP_WSGL.LayoutRowStart('TOP');
1093                XNP_WSGL.LayoutData(CURR_VAL.ORDER_ID);
1094                XNP_WSGL.LayoutData(XNP_WSGL.DomainMeaning(D_STATUS, CURR_VAL.STATUS));
1095                XNP_WSGL.LayoutData(CURR_VAL.MSG_CODE);
1096                XNP_WSGL.LayoutData(CURR_VAL.CALLBACK_PROC_NAME);
1097                XNP_WSGL.LayoutData(XNP_WSGL.DomainMeaning(D_CALLBACK_TYPE, CURR_VAL.CALLBACK_TYPE));
1098                XNP_WSGL.LayoutData(CURR_VAL.PROCESS_REFERENCE);
1099                XNP_WSGL.LayoutData(CURR_VAL.REFERENCE_ID);
1100                XNP_WSGL.LayoutData(XNP_WSGL.DomainMeaning(D_CLOSE_REQD_FLAG, CURR_VAL.CLOSE_REQD_FLAG));
1101                XNP_WSGL.LayoutData(ltrim(to_char(CURR_VAL.CALLBACK_TIMESTAMP, 'DD-MON-RRRR HH24:MI:SS')));
1102                XNP_WSGL.LayoutData(ltrim(to_char(CURR_VAL.REGISTERED_TIMESTAMP, 'DD-MON-RRRR HH24:MI:SS')));
1103                XNP_WSGL.LayoutData(CURR_VAL.WI_INSTANCE_ID);
1104                XNP_WSGL.LayoutData(CURR_VAL.FA_INSTANCE_ID);
1105                XNP_WSGL.LayoutRowEnd;
1106 
1107                I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1108                if I_TOTAL_ROWS = I_START + RL_RECORD_SET_SIZE - 1 then
1109                   if I_ROWS_FETCHED <> 0 then
1110                      I_NEXT_BUT := TRUE;
1111                   end if;
1112                   exit;
1113                end if;
1114             else
1115                I_ROWS_FETCHED := dbms_sql.fetch_rows(I_CURSOR);
1116             end if;
1117 
1118             I_TOTAL_ROWS := I_TOTAL_ROWS + I_ROWS_FETCHED;
1119 
1120          end loop;
1121 
1122          XNP_WSGL.LayoutClose;
1123 
1124          if I_START = I_TOTAL_ROWS then
1125             htp.p(XNP_WSGL.MsgGetText(109,XNP_WSGLM.DSP109_RECORD, to_char(I_TOTAL_ROWS))||I_OF_TOTAL_TEXT);
1126          else
1127             htp.p(XNP_WSGL.MsgGetText(110,XNP_WSGLM.DSP110_RECORDS_N_M,
1128                                   to_char(I_START), to_char(I_TOTAL_ROWS))||
1129                   I_OF_TOTAL_TEXT);
1130          end if;
1131          htp.para;
1132       else
1133          htp.p(XNP_WSGL.MsgGetText(112,XNP_WSGLM.DSP112_NO_RECORDS));
1134       end if;
1135 
1136       if nvl(Z_ACTION, 'X') <> 'DONTQUERY' then
1137          dbms_sql.close_cursor(I_CURSOR);
1138       end if;
1139 
1140       htp.formOpen(curl => 'xnp_callback_events$xnp_callba.querylist', cattributes => 'NAME="frmZero"');
1141       XNP_WSGL.HiddenField('P_ORDER_ID', P_ORDER_ID);
1142       XNP_WSGL.HiddenField('U_ORDER_ID', U_ORDER_ID);
1143       XNP_WSGL.HiddenField('P_STATUS', P_STATUS);
1144       XNP_WSGL.HiddenField('P_MSG_CODE', P_MSG_CODE);
1145       XNP_WSGL.HiddenField('P_CALLBACK_PROC_NAME', P_CALLBACK_PROC_NAME);
1146       XNP_WSGL.HiddenField('P_CALLBACK_TYPE', P_CALLBACK_TYPE);
1147       XNP_WSGL.HiddenField('P_PROCESS_REFERENCE', P_PROCESS_REFERENCE);
1148       XNP_WSGL.HiddenField('P_REFERENCE_ID', P_REFERENCE_ID);
1149       XNP_WSGL.HiddenField('P_CALLBACK_TIMESTAMP', P_CALLBACK_TIMESTAMP);
1150       XNP_WSGL.HiddenField('U_CALLBACK_TIMESTAMP', U_CALLBACK_TIMESTAMP);
1151       XNP_WSGL.HiddenField('P_REGISTERED_TIMESTAMP', P_REGISTERED_TIMESTAMP);
1152       XNP_WSGL.HiddenField('U_REGISTERED_TIMESTAMP', U_REGISTERED_TIMESTAMP);
1153       XNP_WSGL.HiddenField('P_WI_INSTANCE_ID', P_WI_INSTANCE_ID);
1154       XNP_WSGL.HiddenField('U_WI_INSTANCE_ID', U_WI_INSTANCE_ID);
1155       XNP_WSGL.HiddenField('P_FA_INSTANCE_ID', P_FA_INSTANCE_ID);
1156       XNP_WSGL.HiddenField('U_FA_INSTANCE_ID', U_FA_INSTANCE_ID);
1157       XNP_WSGL.HiddenField('Z_START', to_char(I_START));
1158       htp.p ('<SCRIPT><!--');
1159       htp.p ('document.write (''<input type=hidden name="Z_ACTION">'')');
1160       htp.p ('//-->');
1161       htp.p ('</SCRIPT>');
1162 
1163       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,
1164                             'onClick="this.form.Z_ACTION.value=\''' || RL_FIRST_BUT_ACTION || '\''"');
1165       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,
1166                             'onClick="this.form.Z_ACTION.value=\''' || RL_PREV_BUT_ACTION || '\''"');
1167       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,
1168                             'onClick="this.form.Z_ACTION.value=\''' || RL_NEXT_BUT_ACTION || '\''"');
1169       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,
1170                             'onClick="this.form.Z_ACTION.value=\''' || RL_LAST_BUT_ACTION || '\''"');
1171 
1172       XNP_WSGL.RecordListButton(TRUE, 'Z_ACTION', htf.escape_sc(RL_REQUERY_BUT_CAPTION),p_dojs=>FALSE,
1173                             buttonJS => 'onClick="this.form.Z_ACTION.value=\''' || RL_REQUERY_BUT_ACTION || '\''"');
1174       htp.para;
1175 
1176       XNP_WSGL.RecordListButton(TRUE, 'Z_ACTION', htf.escape_sc(RL_QUERY_BUT_CAPTION),p_dojs=>FALSE,
1177                             buttonJS => 'onClick="this.form.Z_ACTION.value=\''' || RL_QUERY_BUT_ACTION || '\''"');
1181 
1178       XNP_WSGL.HiddenField('Z_CHK',
1179                      to_char(XNP_WSGL.Checksum('')));
1180       htp.formClose;
1182       XNP_WSGL.ReturnLinks('0', XNP_WSGL.MENU_LONG);
1183       XNP_WSGL.NavLinks;
1184 
1185       htp.p(htf.img('/OA_MEDIA/FNDLOGOS.gif'));
1186 
1187       XNP_WSGL.ClosePageBody;
1188 
1189    exception
1190       when others then
1191          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
1192                              RL_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.QueryList');
1193          XNP_WSGL.ClosePageBody;
1194    end;
1195 
1196 
1197 --------------------------------------------------------------------------------
1198 -- Name:        xnp_callback_events$xnp_callba.PreQuery
1199 --
1200 -- Description: Provides place holder for code to be run prior to a query
1201 --              for the 'XNP_CALLBACK_EVENTS' module component  (Callback Events).
1202 --
1203 -- Parameters:  None
1204 --
1205 -- Returns:     True           If success
1206 --              False          Otherwise
1207 --
1208 --------------------------------------------------------------------------------
1209    function PreQuery(
1210             P_ORDER_ID in varchar2,
1211             U_ORDER_ID in varchar2,
1212             P_STATUS in varchar2,
1213             P_MSG_CODE in varchar2,
1214             P_CALLBACK_PROC_NAME in varchar2,
1215             P_CALLBACK_TYPE in varchar2,
1216             P_PROCESS_REFERENCE in varchar2,
1217             P_REFERENCE_ID in varchar2,
1218             P_CALLBACK_TIMESTAMP in varchar2,
1219             U_CALLBACK_TIMESTAMP in varchar2,
1220             P_REGISTERED_TIMESTAMP in varchar2,
1221             U_REGISTERED_TIMESTAMP in varchar2,
1222             P_WI_INSTANCE_ID in varchar2,
1223             U_WI_INSTANCE_ID in varchar2,
1224             P_FA_INSTANCE_ID in varchar2,
1225             U_FA_INSTANCE_ID in varchar2) return boolean is
1226       L_RET_VAL boolean := TRUE;
1227    begin
1228       return L_RET_VAL;
1229    exception
1230       when others then
1231          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
1232                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.PreQuery');
1233          return FALSE;
1234    end;
1235 
1236 --------------------------------------------------------------------------------
1237 -- Name:        xnp_callback_events$xnp_callba.PostQuery
1238 --
1239 -- Description: Provides place holder for code to be run after a query
1240 --              for the 'XNP_CALLBACK_EVENTS' module component  (Callback Events).
1241 --
1242 -- Parameters:  Z_POST_DML  Flag indicating if Query after insert or update
1243 --
1244 -- Returns:     True           If success
1245 --              False          Otherwise
1246 --
1247 --------------------------------------------------------------------------------
1248    function PostQuery(Z_POST_DML in boolean) return boolean is
1249       L_RET_VAL boolean := TRUE;
1250    begin
1251        return L_RET_VAL;
1252    exception
1253       when others then
1254          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
1255                              DEF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.PostQuery');
1256           return FALSE;
1257    end;
1258 
1259 --------------------------------------------------------------------------------
1260 -- Name:        xnp_callback_events$xnp_callba.CreateQueryJavaScript
1261 --
1262 -- Description:
1263 --
1264 -- Parameters:
1265 --
1266 --------------------------------------------------------------------------------
1267    procedure CreateQueryJavaScript is
1268    begin
1269       htp.p(XNP_WSGJSL.OpenScript);
1270       htp.p('var FormType = "Query";');
1271 
1272       htp.p(
1273 'function MSG_CODE_LOV() {
1274    var filter = "";
1275    var the_pathname = location.pathname;
1276    var i            = the_pathname.indexOf (''/:'');
1277    var j            = the_pathname.indexOf (''/'', ++i);
1278 
1279    if (i != -1)
1280    {
1281 
1282      // Syntactically incorrect url so it needs to be corrected
1283 
1284      the_pathname = the_pathname.substring (j, the_pathname.length);
1285 
1286    }; // (i != -1)
1287 
1288    frmLOV = open("xnp_callback_events$xnp_callba.msg_code_listofvalues" +
1289                  "?Z_FILTER=" + escape(filter) + "&Z_MODE=Q" +
1290                  "&Z_CALLER_URL=" + escape(location.protocol + ''//'' + location.host + the_pathname + location.search) +
1291                  "&Z_ISSUE_WAIT=Y",');
1292       if LOV_FRAME is not null then
1293          htp.p('                 "'||LOV_FRAME||'");');
1294       else
1295          htp.p('                 "winLOV", "scrollbars=yes,resizable=yes,width=400,height=400");');
1296       end if;
1297       htp.p('   if (frmLOV.opener == null) {
1298       frmLOV.opener = self;
1299    }
1300 }
1301 ');
1302 
1303       htp.p(XNP_WSGJSL.CloseScript);
1304    exception
1305       when others then
1306          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
1307                              QF_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.CreateQueryJavaScript');
1308    end;
1309 
1310 --------------------------------------------------------------------------------
1311 -- Name:        xnp_callback_events$xnp_callba.CreateListJavaScript
1312 --
1313 -- Description:
1314 --
1315 -- Parameters:
1316 --
1317 --------------------------------------------------------------------------------
1318    procedure CreateListJavaScript is
1319    begin
1320       htp.p(XNP_WSGJSL.OpenScript);
1321       htp.p('var FormType = "List";');
1325          XNP_WSGL.DisplayMessage(XNP_WSGL.MESS_EXCEPTION, SQLERRM, 'Callback Events'||' : '||'Callback Events',
1322       htp.p(XNP_WSGJSL.CloseScript);
1323    exception
1324       when others then
1326                              RL_BODY_ATTRIBUTES, 'xnp_callback_events$xnp_callba.CreateListJavaScript');
1327    end;
1328 end;