Friday, July 07, 2006

A work-around for the Illegal restricted procedure error message

Post built is restricted with post-change:
Use the below procedure (PR_POST_TIMER) instead of post to work-around the Illegal restricted procedure error message
POST-CHANGE:
BEGIN
PR_POST_TIMER
END;


PROCEDURE PR_POST_TIMER IS
T_POST TIMER;
BEGIN
T_POST := CREATE_TIMER('T_POST',1);
END;

In the WHEN-TIMER-EXPIRED trigger write the following:
DECLARE T_TIMER TIMER;
BEGIN
T_TIMER := FIND_TIMER('T_POST');
IF NOT ID_NULL(T_TIMER) THEN
/* stop timer firing again */
delete_timer('T_POST');
POST;
END IF;
END;

NB: The WHEN-TIMER-EXPIRED trigger should be at the FORM level

You can use the same work-around to call most of the illegal restricted procedure error message,for example you can now call go_block in WHEN-VALIDATE-ITEM

Happy coding

No comments: