Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 311
  • Last Modified:

Popup not displayed

This code is in Oracle Pl/Sql. It uses pl/sql web toolkit.

I want to pop-up a message to the user:NIM-33335 Error, please contact the administrator.
This is done by the following code,

   ASCK_Utility.AssignErrorMessage('NIM-33335',RecASCErrorMessage);
   sNIMS_ERROR:=''''||RecASCErrorMessage.error_code||' E: '||RecASCErrorMessage.error_message||'''';
   sURL := HTF.anchor(cURL=>'javascript:alert('||sNIMS_ERROR||')', cText=>htf.bold('ASC Order'));

ASCK_Utility.AssignErrorMessage is a package the retrieves the error message from a table when the
error code NIM-33335 is supplied to it.

I have commented all the code since i do not want any functionality here, all i want is a error message
in a alert.

This code is working in one of my procedures, however it does not work in this procedure. why??
Here is the code
=======================================================================================================
PROCEDURE ReturnURL(P_Job_No IN NUMBER)
IS
CURSOR CursorOrdHdr(CurJobNumber order_headers.job_number%type) IS
SELECT 1
FROM   ORDER_HEADERS
WHERE  JOB_NUMBER = CurJobNumber;
l_html  VARCHAR2(1000);
v_count NUMBER(1) := 0;

RecASCErrorMessage  asck_utility.AscErrorMessages;
sNIMS_ERROR         VARCHAR2(32000);
sURL                VARCHAR2(500):= 'ASC Order';
 
BEGIN
/*     l_html := NIMF_Get_URL('plsql') ;
     FOR rec IN CursorOrdHdr(P_Job_No)
      LOOP
        v_count := 1;
        EXIT;
      END LOOP;

     IF v_count = 0 THEN
        l_html:= RTRIM(l_html)||'nim2204w$o_hdrs.forminsert?P_JOB_NUMBER='||P_Job_No||'&Z_CHK=0';
        owa_util.redirect_url(l_html);
     ELSE
        l_html:=RTRIM(l_html)||'nim2204w$o_hdrs.queryview?P_JOB_NUMBER='||P_Job_No||'&Z_CHK=0';
        owa_util.redirect_url(l_html);
     END IF;*/

   ASCK_Utility.AssignErrorMessage('NIM-33335',RecASCErrorMessage);
   sNIMS_ERROR:=''''||RecASCErrorMessage.error_code||' E: '||RecASCErrorMessage.error_message||'''';
   sURL := HTF.anchor(cURL=>'javascript:alert('||sNIMS_ERROR||')', cText=>htf.bold('ASC Order'));

   
 END ReturnURL;
0
aman_greval
Asked:
aman_greval
  • 3
  • 3
1 Solution
 
aman_grevalAuthor Commented:
1.   ASCK_Utility.AssignErrorMessage('NIM-33335',RecASCErrorMessage);
2.   sNIMS_ERROR:=''''||RecASCErrorMessage.error_code||' E: '||RecASCErrorMessage.error_message||'''';
3.   asck_utility.showalert(' Can u c me?? '|| sNIMS_ERROR);            
4.   sURL := HTF.anchor(cURL=>'javascript:alert('||sNIMS_ERROR||')', cText=>htf.bold('asc ORDER'));

On testing i found that the upper 2 lines are working ok.It is showning me the message. The problem is with the 4 line.
Is it because ASC Order link in the web page is not able to map with cText=>htf.bold('asc ORDER')?
So when i click the link this message is not shown.
0
 
gops1Commented:
Looking at lines, the only guess here is the qoutes used in your syntax:

'javascript:alert('||sNIMS_ERROR||')'


Try re-writing in any of these ways if it is possible:
1. 'javascript:alert(\'||sNIMS_ERROR||\')'  --> Escape the quotes
2. "javascript:alert('||sNIMS_ERROR||')" --> Use different quotes (double quotes outside)
3. 'javascript:alert("||sNIMS_ERROR||")' --> Use different quotes (double quotes inside)
0
 
aman_grevalAuthor Commented:
I used the same technique in a function returnURL,
it returns the URL to a procedure nik_planning and nik_planning does the following
It seems I need to do this. Some code to drive the URL returned

htp.tabledata(htf.em('<FONT SIZE = 4 >'||ASCK_Validations.ReturnURL(p_job_number))
                ||'</FONT>');
htp.tabledata('&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp');
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
gops1Commented:
But here you do not have two similar qoutes repeated.
0
 
aman_grevalAuthor Commented:
can you give an example from the code given
0
 
gops1Commented:
Aman I do understand Procedure or Function you have written coz I am not a database person. Let me make you understand when I write the same alert for a hyperlink.

<a href="#" onClick="javascript:alert('Hello');">Click Me</a>

if you look at the above example, onClick is an attribute and the attribute values are given inside the quotes. Now look at the qoutes used for the attribute values it is double qoutes -->"
For onClick attribute values I am using " and for the word Hello inside alert I am using single quote (')

If I have define something in qoutes inside them, in a normal scenario it is not possible. It can be done only either by escaping them or using single qoute:

For example:
<a href="#" onClick="javascript:alert(\"Hello\");">Click Me</a>

or
<a href="#" onClick='javascript:alert(\'Hello\');'>Click Me</a>

or

<a href="#" onClick="javascript:alert('Hello');">Click Me</a>

or

<a href="#" onClick='javascript:alert("Hello");'>Click Me</a>



0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now