0 Replies Latest reply on Jul 24, 2017 3:49 PM by Tony Andrews

    p_param.value is always null when item-type plug-in used in Interactive Grid

    Tony Andrews

      I am trying to develop an item-type plug-in for use in an Interactive Grid in APEX 5.1.2.  However I can't fathom how to obtain the item's current value from within the render procedure - p_param.value always returns null.

       

      By hacking a copy of the Modern Star Rating plug-in - which works - I can see that p_param.value is always null in its render function too.  In fact, I've modified it to (a) write out the value of p_param.value, and (b) ignore the value of p_param.value and use the text "Hello world" instead:

       

              -- render the text field widget

              sys.htp.prn (

                  'p_param.value="'||p_param.value||'"<input type="text" ' ||

                  wwv_flow_plugin_util.get_element_attributes(p_item, l_name, 'apex-item-starrating apex-item-plugin', false) ||

                  'id="'    || p_item.name|| '" ' ||

                  'value="Hello world" />' );

       

      It still works perfectly well, though I can see "Hello world" via Chrome's Inspect tool:

       

      <div class="a-GV-columnItem">p_param.value=""<input type="text" name="18541337687439737242" class="apex-item-starrating apex-item-plugin js-ignoreChange js-tabbable" id="C18541337687439737242" value="Hello world" tabindex="-1"></div>

       

      I can only assume from this that the Javascript function starRatingItemInit is doing all the real work, and whatever you render in the PL/SQL is irrelevant to obtaining the item value?

       

      My requirement is to take a delimited value like 'AAA.BBBBB.CC' and present it broken up into a number of select lists, one with current value 'AAA' etc.  From what I've seen it appears I will need to set these current values from Javascript code which can get the delimited value using $v('MY_ITEM') after the select lists have been rendered, because during rendering the value appears to be null.  Am I right?  Is there any documentation, or blog post etc., on building item-type plug-ins in Interactive Grids?