mardi 21 novembre 2017

Oracle Apex nested IF pl/sql

declare
 l_body_html varchar2(4000);

BEGIN
IF :P45_VALUE_TYPE = 'D' and :P45_ATTRIBUTE7 is null and :P45_ATTRIBUTE4 is not null or :P45_ATTRIBUTE6 IS NOT NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);

:P45_APPROVAL_STATUS := 'FINAL';
end if; 



IF :P45_VALUE_TYPE = 'S' and :P45_ATTRIBUTE7 is null and :P45_ATTRIBUTE4 is not null or :P45_ATTRIBUTE5 IS NOT NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'FINAL';
end if;


IF :P45_VALUE_TYPE = 'A' and  :P45_ATTRIBUTE7 is null  and :P45_ATTRIBUTE4 is NULL and :P45_ATTRIBUTE5 IS NOT NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'Center';

ELSIF :P45_VALUE_TYPE = 'A' and  :P45_ATTRIBUTE4 is not null and :P45_ATTRIBUTE7 is null  and :P45_ATTRIBUTE5 IS NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'FINAL';
end if;


IF :P45_VALUE_TYPE = 'M' and  :P45_ATTRIBUTE7 is null  and :P45_ATTRIBUTE4 is NULL and :P45_ATTRIBUTE5 IS NOT NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'Center';
ELSIF :P45_VALUE_TYPE = 'M' and  :P45_ATTRIBUTE4 is not null and :P45_ATTRIBUTE7 is null  and :P45_ATTRIBUTE5 IS NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'FINAL';
end if;

IF :P45_VALUE_TYPE = 'F' and  P:45_ATTRIBUTE7 is null  and :P45_ATTRIBUTE4 is NULL and :P45_ATTRIBUTE5 IS NOT NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'Center';
ELSIF :P45_VALUE_TYPE = 'F' and  :P45_ATTRIBUTE4 is not null and :P45_ATTRIBUTE7 is null  and :P45_ATTRIBUTE5 IS NULL THEN

  l_body_html := '<p>A new request, number '||:P45_Request_ID||' has '||
    'been SUmbimitted.  To review this request, click the '||
    'link below.</p><p><a href="http://'||OWA_UTIL.GET_CGI_ENV('HTTP_HOST')||
    OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME')||'/f?p='||:APP_ID||':11:6495753734862::NO'||'">View Request'||:P45_Request_ID||
    '</a></p>';
  HTMLDB_MAIL.SEND(
    P_TO        => 'testing.test@testing.com',
    P_FROM      => 'testing.test@testing.com',
    P_BODY      => l_body_html,
    P_BODY_HTML => l_body_html,
    P_SUBJ      => 'New Request Number '||:P45_Request_ID);
:P45_APPROVAL_STATUS := 'FINAL';
end if;

end;

I am trying to make a pl/sql that sends email to users in certain condition, and setup :P45_APPROVAL_STATUS values depends on the IF statements. However I am getting "ORA-01461: can bind a LONG value only for insert into a LONG column" error prompt. Is there any issues with my code? If so, how can I make it work?

Anything helps!

Aucun commentaire:

Enregistrer un commentaire