<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Oracle APEX 4.0: How to create a Plug-in</title>
	<atom:link href="http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/</link>
	<description>Inside Oracle APEX - a blog that helps to get more out of Oracle Application Express (APEX) for your daily development work!</description>
	<lastBuildDate>Mon, 19 Dec 2011 12:04:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Nandini THakur</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-105001</link>
		<dc:creator>Nandini THakur</dc:creator>
		<pubDate>Tue, 07 Dec 2010 14:42:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-105001</guid>
		<description>when i commented the DEBUG_PAGE_ITEM part and executed it.

The Plugin got created without any error .

But when i created the Item of this type , it threw me error as follow :-



ORA-06550: line 160, column 46: PLS-00222: no function with name &#039;RENDER_MASK&#039; exists in this scope ORA-06550: line 160, column 1: PL/SQL: Statement ignored
	Error 	Error in PLSQL code raised during plug-in processing.
OK 	
&lt;!--lastQuery (1st 1000 chars):declare l_item wwv_flow_plugin.t_page_item; l_plugin wwv_flow_plugin.t_plugin; - The render procedure is responsible for the rendering of the actual HTML control - of the new widget. APEX still takes care of the table cell for the layout, - the label, pre- and post element text. Only the html code between the pre- and - post element text is rendered by the plug-in. The render procedure has a - defined interface which every plug-in has to implement. It&#039;s designed in a way - that future enhancements to the interface will not break existing plug-ins. procedure render_mask ( p_item in apex_plugin.t_page_item, p_plugin in apex_plugin.t_plugin, p_value in varchar2, p_is_readonly in boolean, p_is_printer_friendly in boolean ) is - It&#039;s very important to escape the value and only use that version for the HTML output! l_escaped_value varchar2(32767) := sys.htf.escape_sc(p_value); l_name --&gt;</description>
		<content:encoded><![CDATA[<p>when i commented the DEBUG_PAGE_ITEM part and executed it.</p>
<p>The Plugin got created without any error .</p>
<p>But when i created the Item of this type , it threw me error as follow :-</p>
<p>ORA-06550: line 160, column 46: PLS-00222: no function with name &#8216;RENDER_MASK&#8217; exists in this scope ORA-06550: line 160, column 1: PL/SQL: Statement ignored<br />
	Error 	Error in PLSQL code raised during plug-in processing.<br />
OK<br />
<!--lastQuery (1st 1000 chars):declare l_item wwv_flow_plugin.t_page_item; l_plugin wwv_flow_plugin.t_plugin; - The render procedure is responsible for the rendering of the actual HTML control - of the new widget. APEX still takes care of the table cell for the layout, - the label, pre- and post element text. Only the html code between the pre- and - post element text is rendered by the plug-in. The render procedure has a - defined interface which every plug-in has to implement. It's designed in a way - that future enhancements to the interface will not break existing plug-ins. procedure render_mask ( p_item in apex_plugin.t_page_item, p_plugin in apex_plugin.t_plugin, p_value in varchar2, p_is_readonly in boolean, p_is_printer_friendly in boolean ) is - It's very important to escape the value and only use that version for the HTML output! l_escaped_value varchar2(32767) := sys.htf.escape_sc(p_value); l_name --></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nandini THakur</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-104893</link>
		<dc:creator>Nandini THakur</dc:creator>
		<pubDate>Tue, 07 Dec 2010 14:09:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-104893</guid>
		<description>ORA-06550: line 160, column 46: PLS-00222: no function with name &#039;RENDER_MASK&#039; exists in this scope ORA-06550: line 160, column 1: PL/SQL: Statement ignored
	Error 	Error in PLSQL code raised during plug-in processing.
OK 	


Hi Patrick,

I again faced the problem when i tried to comment the DEBUG_PAGE_ITEM process ,as this was specified for debugging purpose .

I cud create the Plugin , when i created a item of this plugin  type and  executed the page , i got the above error.

Regards,
Nandini Thakur.</description>
		<content:encoded><![CDATA[<p>ORA-06550: line 160, column 46: PLS-00222: no function with name &#8216;RENDER_MASK&#8217; exists in this scope ORA-06550: line 160, column 1: PL/SQL: Statement ignored<br />
	Error 	Error in PLSQL code raised during plug-in processing.<br />
OK 	</p>
<p>Hi Patrick,</p>
<p>I again faced the problem when i tried to comment the DEBUG_PAGE_ITEM process ,as this was specified for debugging purpose .</p>
<p>I cud create the Plugin , when i created a item of this plugin  type and  executed the page , i got the above error.</p>
<p>Regards,<br />
Nandini Thakur.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nandini THakur</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-104791</link>
		<dc:creator>Nandini THakur</dc:creator>
		<pubDate>Tue, 07 Dec 2010 13:41:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-104791</guid>
		<description>Hi Patrick ,

I m very new to the concept of plugins and i m trying to learn from the examples pdfs given by u ..

But in the creation of the item plugin , i m getting this error , though i did it exactly same.

can u please ! help me out .

ORA-06550: line 26, column 21: PLS-00302: component &#039;DEBUG_PAGE_ITEM&#039; must be declared ORA-06550: line 26, column 9: PL/SQL: Statement ignored ORA-06550: line 109, column 21: PLS-00302: component &#039;DEBUG_PAGE_ITEM&#039; must be declared ORA-06550: line 109, column 9: PL/SQL: Statement ignored</description>
		<content:encoded><![CDATA[<p>Hi Patrick ,</p>
<p>I m very new to the concept of plugins and i m trying to learn from the examples pdfs given by u ..</p>
<p>But in the creation of the item plugin , i m getting this error , though i did it exactly same.</p>
<p>can u please ! help me out .</p>
<p>ORA-06550: line 26, column 21: PLS-00302: component &#8216;DEBUG_PAGE_ITEM&#8217; must be declared ORA-06550: line 26, column 9: PL/SQL: Statement ignored ORA-06550: line 109, column 21: PLS-00302: component &#8216;DEBUG_PAGE_ITEM&#8217; must be declared ORA-06550: line 109, column 9: PL/SQL: Statement ignored</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-92429</link>
		<dc:creator>Victor</dc:creator>
		<pubDate>Sun, 21 Nov 2010 19:13:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-92429</guid>
		<description>BTW,I&#039;m using jquery selector in dynamic action and tried other action type like set value and hidden etc., they all work fine.

If I just create select list via the builder, it works fine. In source code following code got generated.
-------------------------
apex.jQuery(document).ready(function(){
(function(){apex.widget.selectList(&quot;#P1_XLIST&quot;,{&quot;ajaxIdentifier&quot;:&quot;4EA9F6B4CAC842F4356C68B74402C56E682B6E2A061C6EB768417C9C685749CB&quot;,&quot;nullValue&quot;:&quot;&quot;});})();
-------------------------

And I can use following code to generate identical code for ‘ATTR_2&#039; as well, but it didn&#039;t work.
---------code in plsql----------------
apex_javascript.add_onload_code(p_code =&gt; ‘apex.widget.selectList(’ &#124;&#124;
‘”#ATTR_2′ &#124;&#124; ‘”,’ &#124;&#124; ‘{’ &#124;&#124;
apex_javascript.add_attribute(’ajaxIdentifier’
,apex_plugin.get_ajax_identifier) &#124;&#124;’”nullValue”:”&quot;});’);
-----------generated code in html--------------
(function(){apex.widget.selectList(&quot;#ATTR_2&quot;,{&quot;ajaxIdentifier&quot;:&quot;4EA9F6B4CAC842F4356C68B74402C56E682B6E2A061C6EB768417C9C685749CB&quot;,&quot;nullValue&quot;:&quot;&quot;});})();</description>
		<content:encoded><![CDATA[<p>BTW,I&#8217;m using jquery selector in dynamic action and tried other action type like set value and hidden etc., they all work fine.</p>
<p>If I just create select list via the builder, it works fine. In source code following code got generated.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
apex.jQuery(document).ready(function(){<br />
(function(){apex.widget.selectList(&#8220;#P1_XLIST&#8221;,{&#8220;ajaxIdentifier&#8221;:&#8221;4EA9F6B4CAC842F4356C68B74402C56E682B6E2A061C6EB768417C9C685749CB&#8221;,&#8221;nullValue&#8221;:&#8221;"});})();<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>And I can use following code to generate identical code for ‘ATTR_2&#8242; as well, but it didn&#8217;t work.<br />
&#8212;&#8212;&#8212;code in plsql&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
apex_javascript.add_onload_code(p_code =&gt; ‘apex.widget.selectList(’ ||<br />
‘”#ATTR_2′ || ‘”,’ || ‘{’ ||<br />
apex_javascript.add_attribute(’ajaxIdentifier’<br />
,apex_plugin.get_ajax_identifier) ||’”nullValue”:”&#8221;});’);<br />
&#8212;&#8212;&#8212;&#8211;generated code in html&#8212;&#8212;&#8212;&#8212;&#8211;<br />
(function(){apex.widget.selectList(&#8220;#ATTR_2&#8243;,{&#8220;ajaxIdentifier&#8221;:&#8221;4EA9F6B4CAC842F4356C68B74402C56E682B6E2A061C6EB768417C9C685749CB&#8221;,&#8221;nullValue&#8221;:&#8221;"});})();</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-92426</link>
		<dc:creator>Victor</dc:creator>
		<pubDate>Sun, 21 Nov 2010 19:05:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-92426</guid>
		<description>Hi Patrick,

Thank you so much for such quick respond.
Actually I&#039;m learning the way that you demonstrated in how-tos to build my own ones.
I&#039;m currently dealing with apex_item.select_list_from_query. I has been trying to make it work with dynamic action - refresh, but after a lot of research, seems like the answers link me to ajax callback and then I found this page. :)
My code is as following. I created dynamic action on change of &#039;ATTR_1&#039; to refresh &#039;ATTR_2&#039;, but it didn&#039;t work.
-------------plsql region---------------
 htp.p(apex_item.text(p_idx     =&gt; 1
                                ,p_item_id =&gt; &#039;ATTR_1&#039;));
 htp.p(apex_item.select_list_from_query(p_idx     =&gt; 1
                                                ,p_item_id =&gt; &#039;ATTR_2&#039;
                                                ,p_query     =&gt; &#039;select to_char(sysdate,&#039;&#039;mmddyyyy hh24:mi:ss&#039;&#039;) as value , 1 as id from dual&#039;)); 
----------------------------------------
I am also digging out some code like following, but have no idea how to use it yet. Seems like it&#039;s part of plugin creation.
apex_javascript.add_onload_code(p_code =&gt; &#039;apex.widget.selectList(&#039; &#124;&#124;
                                              &#039;&quot;#ATTR_2&#039; &#124;&#124; &#039;&quot;,&#039; &#124;&#124; &#039;{&#039; &#124;&#124;
                                              apex_javascript.add_attribute(&#039;ajaxIdentifier&#039;
                                                                           ,apex_plugin.get_ajax_identifier) &#124;&#124;&#039;&quot;nullValue&quot;:&quot;&quot;});&#039;);

I also noticed that you mentioned some related topic in
http://forums.oracle.com/forums/thread.jspa?threadID=1101985&amp;tstart=1
,but I still didn&#039;t get clue about my issue...

Many Thank,
Victor</description>
		<content:encoded><![CDATA[<p>Hi Patrick,</p>
<p>Thank you so much for such quick respond.<br />
Actually I&#8217;m learning the way that you demonstrated in how-tos to build my own ones.<br />
I&#8217;m currently dealing with apex_item.select_list_from_query. I has been trying to make it work with dynamic action &#8211; refresh, but after a lot of research, seems like the answers link me to ajax callback and then I found this page. <img src='http://www.inside-oracle-apex.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
My code is as following. I created dynamic action on change of &#8216;ATTR_1&#8242; to refresh &#8216;ATTR_2&#8242;, but it didn&#8217;t work.<br />
&#8212;&#8212;&#8212;&#8212;-plsql region&#8212;&#8212;&#8212;&#8212;&#8212;<br />
 htp.p(apex_item.text(p_idx     =&gt; 1<br />
                                ,p_item_id =&gt; &#8216;ATTR_1&#8242;));<br />
 htp.p(apex_item.select_list_from_query(p_idx     =&gt; 1<br />
                                                ,p_item_id =&gt; &#8216;ATTR_2&#8242;<br />
                                                ,p_query     =&gt; &#8216;select to_char(sysdate,&#8221;mmddyyyy hh24:mi:ss&#8221;) as value , 1 as id from dual&#8217;));<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
I am also digging out some code like following, but have no idea how to use it yet. Seems like it&#8217;s part of plugin creation.<br />
apex_javascript.add_onload_code(p_code =&gt; &#8216;apex.widget.selectList(&#8216; ||<br />
                                              &#8216;&#8221;#ATTR_2&#8242; || &#8216;&#8221;,&#8217; || &#8216;{&#8216; ||<br />
                                              apex_javascript.add_attribute(&#8216;ajaxIdentifier&#8217;<br />
                                                                           ,apex_plugin.get_ajax_identifier) ||&#8217;&#8221;nullValue&#8221;:&#8221;"});&#8217;);</p>
<p>I also noticed that you mentioned some related topic in<br />
<a href="http://forums.oracle.com/forums/thread.jspa?threadID=1101985&#038;tstart=1" rel="nofollow" target="_blank" class="liexternal">http://forums.oracle.com/forums/thread.jspa?threadID=1101985&#038;tstart=1</a><br />
,but I still didn&#8217;t get clue about my issue&#8230;</p>
<p>Many Thank,<br />
Victor</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrick Wolf</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-92413</link>
		<dc:creator>Patrick Wolf</dc:creator>
		<pubDate>Sun, 21 Nov 2010 18:17:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-92413</guid>
		<description>Hi Victor,

these plug-ins examples are rather old and have been written for the early adopter version of APEX 4.0. Please have a look at our up-to-date plug-ins at http://apex.oracle.com/plugins

Regards
Patrick</description>
		<content:encoded><![CDATA[<p>Hi Victor,</p>
<p>these plug-ins examples are rather old and have been written for the early adopter version of APEX 4.0. Please have a look at our up-to-date plug-ins at <a href="http://apex.oracle.com/plugins" rel="nofollow" target="_blank" class="liexternal">http://apex.oracle.com/plugins</a></p>
<p>Regards<br />
Patrick</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-92407</link>
		<dc:creator>Victor</dc:creator>
		<pubDate>Sun, 21 Nov 2010 17:49:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-92407</guid>
		<description>Seems like in apex 4.0, Oracle changed the APIs of apex_plugin
(apex_plugin.debug_dynamic_action has been changed to apex_plugin_util.debug_dynamic_action, but no idea about REGISTER_DYNAMIC_ACTION)

I got following error when trying to create plugin source by highlight_plugin.sql
And I checked the doc from Oracle, there is no such function any more...
Anybody get ideas?

1 error has occurred
ORA-06550: line 38, column 22: PLS-00302: component &#039;REGISTER_DYNAMIC_ACTION&#039; must be declared ORA-06550: line 38, column 5: PL/SQL: Statement ignored

Thanks,
Victor</description>
		<content:encoded><![CDATA[<p>Seems like in apex 4.0, Oracle changed the APIs of apex_plugin<br />
(apex_plugin.debug_dynamic_action has been changed to apex_plugin_util.debug_dynamic_action, but no idea about REGISTER_DYNAMIC_ACTION)</p>
<p>I got following error when trying to create plugin source by highlight_plugin.sql<br />
And I checked the doc from Oracle, there is no such function any more&#8230;<br />
Anybody get ideas?</p>
<p>1 error has occurred<br />
ORA-06550: line 38, column 22: PLS-00302: component &#8216;REGISTER_DYNAMIC_ACTION&#8217; must be declared ORA-06550: line 38, column 5: PL/SQL: Statement ignored</p>
<p>Thanks,<br />
Victor</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michiel</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-90682</link>
		<dc:creator>Michiel</dc:creator>
		<pubDate>Mon, 15 Nov 2010 15:30:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-90682</guid>
		<description>Hi Patrick,

Do you have a solution for my question posted on November 9th, 2010 at 23:38? (create a region plugin to control the subregions linked it).

Thanks!</description>
		<content:encoded><![CDATA[<p>Hi Patrick,</p>
<p>Do you have a solution for my question posted on November 9th, 2010 at 23:38? (create a region plugin to control the subregions linked it).</p>
<p>Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dante</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-89535</link>
		<dc:creator>Dante</dc:creator>
		<pubDate>Thu, 11 Nov 2010 15:08:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-89535</guid>
		<description>Hi, Patrick
Thank you for returning!
I want just to install a plugin to implement masked fields with placeholders. Maybe i am making the wrong thing! I will try the other form you suggested.
thank you, best regards. I am a fan of your website
Dante</description>
		<content:encoded><![CDATA[<p>Hi, Patrick<br />
Thank you for returning!<br />
I want just to install a plugin to implement masked fields with placeholders. Maybe i am making the wrong thing! I will try the other form you suggested.<br />
thank you, best regards. I am a fan of your website<br />
Dante</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrick Wolf</title>
		<link>http://www.inside-oracle-apex.com/oracle-apex-4-0-how-to-create-a-plug-in/comment-page-1/#comment-89515</link>
		<dc:creator>Patrick Wolf</dc:creator>
		<pubDate>Thu, 11 Nov 2010 14:13:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.inside-oracle-apex.com/?p=999#comment-89515</guid>
		<description>Hi Dante,

what do you want to do? Develop a plug-in or just install one? If you want to install a finished plug-in go to &lt;a href=&quot;http://apex.oracle.com/plugins&quot; rel=&quot;nofollow&quot;&gt;http://apex.oracle.com/plugins&lt;/a&gt;. The jquery.maskedinput-1.2.2.min.js file is not an APEX plug-in file, it&#039;s just a JavaScript library.

Regards
Patrick</description>
		<content:encoded><![CDATA[<p>Hi Dante,</p>
<p>what do you want to do? Develop a plug-in or just install one? If you want to install a finished plug-in go to <a href="http://apex.oracle.com/plugins" rel="nofollow" target="_blank" class="liexternal">http://apex.oracle.com/plugins</a>. The jquery.maskedinput-1.2.2.min.js file is not an APEX plug-in file, it&#8217;s just a JavaScript library.</p>
<p>Regards<br />
Patrick</p>
]]></content:encoded>
	</item>
</channel>
</rss>

