Problem overloading "set data" function on Button DataGrid Renderer

Hi all, I'm hoping this is something simple.
I have a class that extends mx.controls.Button and implements mx.core.IDataRenderer.  I need to set the button icon whenever the Data property is set from the DataGrid.  My problem is that my overloaded set/get Data function are never called (I've stepped through the code in debug).  Instead the set/get functions in Container.as (Flex 3.4 SDK) get called.
Here's the basics code:
exportButtonRenderer.as
package controls
    import flash.events.Event;
    import flash.events.MouseEvent;
    import mx.controls.Button;   
    import mx.core.IDataRenderer;
    import mx.controls.dataGridClasses.DataGridListData;   
    import mx.controls.listClasses.BaseListData;
    import mx.events.FlexEvent;
    import mx.controls.Alert;
    import model.descriptors.compDescriptor;
    import events.exportClickedEvent;   
    public class exportButtonRenderer extends Button implements IDataRenderer   
        //    embed your icons
        [Embed(source='/assets/icons/export.png')]
        [Bindable]
        public static var imageExport:Class;
        [Embed(source='/assets/icons/blank.png')]
        [Bindable]
        public static var imageBlank:Class;
        public function exportButtonRenderer()
            super();
        private var _listData:DataGridListData;
        override public function get listData():BaseListData
            return _listData;
        override public function set listData(value:BaseListData):void
            _listData = DataGridListData(value);
        private var _data:Object;       
        override public function get data():Object
            return _data;
        override public function set data(value:Object):void
            _data = value;
        override protected function clickHandler(event:MouseEvent):void
            super.clickHandler(event);   
Now I know I'm using the Flexlib TreeGrid and not a standard DataGrid but when I trace through all the code all code firing the set/get functions is coming from the DataGrid anyway.
Here's the my Grid def in my main app mxml:
Header 1
<flexlib:TreeGrid
        id="MKTXGrid"
        dragEnabled="false" sortableColumns="false" showRoot="false"
        disclosureClosedIcon="@Embed(source='/assets/icons/arrow_right.png')"
        disclosureOpenIcon="@Embed(source='/assets/icons/arrow_down.png')"
        folderOpenIcon="@Embed(source='/assets/icons/psd.png')"
        folderClosedIcon="@Embed(source='/assets/icons/psd.png')"       
        click="MKTXGrid_clickHandler(event)"
         doubleClickEnabled="true" doubleClick="MKTXGrid_doubleClickHandler(event)" left="0" right="0" top="0" bottom="16">
    <flexlib:columns>
            <flexlib:TreeGridColumn dataField="Name" headerText = "Name" minWidth="200" width="200" editable="true"/>
            <mx:DataGridColumn dataField="ExportName" headerText = "Export Name"/>
            <mx:DataGridColumn dataField="Export" headerText = "Export" width="50" minWidth="20" resizable="false">
             <mx:itemRenderer>
                <mx:Component>
                    <mx:Box horizontalAlign="center" width="100%" verticalScrollPolicy="off" horizontalScrollPolicy="off">
                        <controls:exportButtonRenderer label="Export" icon="@Embed(source='assets/icons/export.png')" width="12" height="12" useHandCursor="true">                        
                            <controls:click>
                                <![CDATA[
                                    import events.exportClickedEvent;
                                    var e:exportClickedEvent = new exportClickedEvent();
                                    e.itemData = data;
                                    dispatchEvent(e);
                                ]]>
                            </controls:click>
                        </controls:exportButtonRenderer>
                    </mx:Box>
                </mx:Component>
            </mx:itemRenderer>
            </mx:DataGridColumn>
        </flexlib:columns>
    </flexlib:TreeGrid>
Nothing too special going on.
I know this can be done, I've seen examples in the SDK:
http://opensource.adobe.com/svn/opensource/durango/trunk/ExternalFlexTools/com/dougmccune/ containers/accordionClasses/AccordionHeader.as
By the way I've stepped through the code of the TreeGridItemRenderer class in Flexlib which works correctly and the class def starts like this:
TreeGridItemRenderer.as
import flash.display.DisplayObject;
import flash.display.InteractiveObject;
import flash.display.Shape;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.Point;
import flash.geom.Rectangle;
import flexlib.controls.TreeGrid;
import mx.controls.Image;
import mx.controls.dataGridClasses.DataGridListData;
import mx.controls.listClasses.BaseListData;
import mx.controls.listClasses.IDropInListItemRenderer;
import mx.controls.listClasses.IListItemRenderer;
import mx.core.IDataRenderer;
import mx.core.IFlexDisplayObject;
import mx.core.IToolTip;
import mx.core.SpriteAsset;
import mx.core.UIComponent;
import mx.core.UITextField;
import mx.events.FlexEvent;
import mx.events.ToolTipEvent;
import mx.events.TreeEvent;
import mx.managers.ILayoutManagerClient;
import mx.styles.IStyleClient;
public class TreeGridItemRenderer extends UIComponent
                                  implements IDataRenderer,
                                               IDropInListItemRenderer,
                                             ILayoutManagerClient,
                                               IListItemRenderer
Any help would be great!

That's because you put your component in a Box.  The DataGrid is setting the Box's .data property and no code is setting the one on your component.  You shouldn't really need Box.  You can override updateDisplayList to center your Button instead.
Alex Harui
Flex SDK Developer
Adobe Systems Inc.
Blog: http://blogs.adobe.com/aharui

Similar Messages

  • Set data function

    hi folks,
    i'm new to flex and that is why i don't know when the set data function of item renderer is called. means what causes the call for set data function of item renderer?
    i inherited a flex application (the developer left) and i am wondering why the set data function of one item renderer is called when an item of the item renderer was clicked but the set data function of another item renderer is called just one time (when the view is created) but never again even if an item of the item renderer was clicked.
    so please can someone explain me or mention a good ressource for reading about how it works?

    Whenever data changes in some way, for example when the dataprovider is changed, the set data function is called automatically.
    Some tips:
    1. Make sure the dataprovider is bound (<s:List dataprovider="{myDataCollection}"/>
    2. If you change the dataprovider, call the refresh() function (like when the dataprovider is a IListCollectionView)
    3. override the set data function in your itemRenderer to do additional things there.
    Hope this helps
    Dany

  • Keychain problem and "Set date and time automatically"

    Something very strange appened to me today. I spent a few hours to get it through.
    All starts when I decided to open System Preferences and *set date and time manually* (I lost date and time because I left my PowerBook without its battery for an hour). At the next login, Leopard was no more able to access keychain's stored passwords, even if all items on Keychain Access were right there. Everytime I tried to read one item's password, a pop-up window reminded me that I had not the right to do it. As soon as I set back "date and time" on automatic (time.euro.apple.com - for me) all became normal (all iCal reminders appeared at on time) and all services started to get their passwords from the stored list.
    Sorry for my English (I'm from Italy).
    Someone got the same issue?

    That looks like the correct IP address for the Apple NTP. Not sure why your AEBS is not getting the time stamp.
    Would you mind double-checking the following setting, using the AirPort Admin Utility?
    AirPort Tab - Base Station Options: Logging/NTP
    - Set Date & Time Automatically: time.apple.com (checked)
    Is it possible that you have UDP blocked on port 123? Is your AEBS connected to another Internet router?

  • Overloading a DATE function with TIMESTAMP to avoid "too many declarations"

    CREATE OR REPLACE PACKAGE util
    AS
      FUNCTION yn (bool IN BOOLEAN)
        RETURN CHAR;
      FUNCTION is_same(a varchar2, b varchar2)
        RETURN BOOLEAN;
      FUNCTION is_same(a date, b date)
        RETURN BOOLEAN;
      /* Oracle's documentation says that you cannot overload subprograms
       * that have the same type family for the arguments.  But,
       * apparently timestamp and date are in different type families,
       * even though Oracle's documentation says they are in the same one.
       * If we don't create a specific overloaded function for timestamp,
       * and for timestamp with time zone, we get "too many declarations
       * of is_same match" when we try to call is_same for timestamps.
      FUNCTION is_same(a timestamp, b timestamp)
        RETURN BOOLEAN;
      FUNCTION is_same(a timestamp with time zone, b timestamp with time zone)
        RETURN BOOLEAN;
      /* These two do indeed cause problems, although there are no errors when we compile the package.  Why no errors here? */
      FUNCTION is_same(a integer, b integer) return boolean;
      FUNCTION is_same(a real, b real) return boolean;
    END util;
    CREATE OR REPLACE PACKAGE BODY util
    AS
         NAME: yn
         PURPOSE: pass in a boolean, get back a Y or N
      FUNCTION yn (bool IN BOOLEAN)
        RETURN CHAR
      IS
      BEGIN
        IF bool
        THEN
          RETURN 'Y';
        END IF;
        RETURN 'N';
      END yn;
         NAME: is_same
         PURPOSE: pass in two values, get back a boolean indicating whether they are
                  the same.  Two nulls = true with this function.
      FUNCTION is_same(a in varchar2, b in varchar2)
        RETURN BOOLEAN
      IS
        bool boolean := false;
      BEGIN
        IF a IS NULL and b IS NULL THEN bool := true;
        -- explicitly set this to false if exactly one arg is null
        ELSIF a is NULL or b IS NULL then bool := false;
        ELSE bool := a = b;
        END IF;
        RETURN bool;
      END is_same;
      FUNCTION is_same(a in date, b in date)
        RETURN BOOLEAN
      IS
        bool boolean := false;
      BEGIN
        IF a IS NULL and b IS NULL THEN bool := true;
        -- explicitly set this to false if exactly one arg is null
        ELSIF a is NULL or b IS NULL then bool := false;
        ELSE bool := a = b;
        END IF;
        RETURN bool;
      END is_same;
      FUNCTION is_same(a in timestamp, b in timestamp)
        RETURN BOOLEAN
      IS
        bool boolean := false;
      BEGIN
        IF a IS NULL and b IS NULL THEN bool := true;
        -- explicitly set this to false if exactly one arg is null
        ELSIF a is NULL or b IS NULL then bool := false;
        ELSE bool := a = b;
        END IF;
        RETURN bool;
      END is_same;
      FUNCTION is_same(a in timestamp with time zone, b in timestamp with time zone)
        RETURN BOOLEAN
      IS
        bool boolean := false;
      BEGIN
        IF a IS NULL and b IS NULL THEN bool := true;
        -- explicitly set this to false if exactly one arg is null
        ELSIF a is NULL or b IS NULL then bool := false;
        ELSE bool := a = b;
        END IF;
        RETURN bool;
      END is_same;
      /* Don't bother to fully implement these two, as they'll just cause errors at run time anyway */
      FUNCTION is_same(a integer, b integer) return boolean is begin return false; end;
      FUNCTION is_same(a real, b real) return boolean is begin return false; end;
    END util;
    declare
    d1 date := timestamp '2011-02-15 13:14:15';
    d2 date;
    t timestamp := timestamp '2011-02-15 13:14:15';
    t2 timestamp;
    a varchar2(10);
    n real := 1;
    n2 real;
    begin
    dbms_output.put_line('dates');
    dbms_output.put_line(util.yn(util.is_same(d2,d2) ));
    dbms_output.put_line(util.yn(util.is_same(d1,d2) ));
    dbms_output.put_line('timestamps'); -- why don't these throw exception?
    dbms_output.put_line(util.yn(util.is_same(t2,t2) ));
    dbms_output.put_line(util.yn(util.is_same(t,t2) ));
    dbms_output.put_line('varchars');
    dbms_output.put_line(util.yn(util.is_same(a,a)));
    dbms_output.put_line(util.yn(util.is_same(a,'a')));
    dbms_output.put_line('numbers');
    -- dbms_output.put_line(util.yn(util.is_same(n,n2))); -- this would throw an exception
    end;
    /Originally, I had just the one function with VARCHAR2 arguments. This failed to work properly because when dates were passed in, the automatic conversion to VARCHAR2 was dropping the timestamp. So, I added a 2nd function with DATE arguments. Then I started getting "too many declarations of is_same exist" error when passing TIMESTAMPs. This made no sense to me, so even though Oracle's documentation says you cannot do it, I created a 3rd version of the function, to handle TIMESTAMPS explicitly. Surprisingly, it works fine. But then I noticed it didn't work with TIMESTAMP with TIME ZONEs. Hence, the fourth version of the function. Oracle's docs say that if your arguments are of the same type family, you cannot create an overloaded function, but as the example above shows, this is very wrong.
    Lastly, just for grins, I created the two number functions, one with NUMBER, the other with REAL, and even these are allowed - they compile. But then at run time, it fails. I'm really confused.
    Here is the apparently incorrect Oracle documentation on the matter: http://docs.oracle.com/cd/B12037_01/appdev.101/b10807/08_subs.htm (see overloading subprogram names), and here are the various types and their families: http://docs.oracle.com/cd/E11882_01/appdev.112/e17126/predefined.htm.
    Edited by: hotwater on Jan 9, 2013 3:38 PM
    Edited by: hotwater on Jan 9, 2013 3:46 PM

    >
    So, I added a 2nd function with DATE arguments. Then I started getting "too many declarations of is_same exist" error when passing TIMESTAMPs. This made no sense to me
    >
    That is because when you pass a TIMESTAMP Oracle cannot determine whether to implicitly convert it to VARCHAR2 and use your first function or implicitly convert it to DATE and use your second function. Hence the 'too many declarations' exist error.
    >
    , so even though Oracle's documentation says you cannot do it, I created a 3rd version of the function, to handle TIMESTAMPS explicitly. Surprisingly, it works fine. But then I noticed it didn't work with TIMESTAMP with TIME ZONEs.
    >
    Possibly because of another 'too many declarations' error? Because now there would be THREE possible implicit conversions that could be done.
    >
    Hence, the fourth version of the function. Oracle's docs say that if your arguments are of the same type family, you cannot create an overloaded function, but as the example above shows, this is very wrong.
    >
    I think the documentation, for the 'date' family, is wrong as you suggest. For INTEGER and REAL the issue is that those are ANSI data types and are really the same Oracle datatype; they are more like 'aliases' than different datatypes.
    See the SQL Language doc
    >
    ANSI, DB2, and SQL/DS Datatypes
    SQL statements that create tables and clusters can also use ANSI datatypes and datatypes from the IBM products SQL/DS and DB2. Oracle recognizes the ANSI or IBM datatype name that differs from the Oracle Database datatype name. It converts the datatype to the equivalent Oracle datatype, records the Oracle datatype as the name of the column datatype, and stores the column data in the Oracle datatype based on the conversions shown in the tables that follow.
    INTEGER
    INT
    SMALLINT
    NUMBER(38)
    FLOAT (Note b)
    DOUBLE PRECISION (Note c)
    REAL (Note d)
    FLOAT(126)
    FLOAT(126)
    FLOAT(63)

  • Javascript set date function sequence issue

    This is a javascript date error that occurs in FireFox, Chrome and IE.
    In setting the date using utc functions the order in which the functions are used can cause the wrong date set be set.
    var d = new Date();
    d.setUTCFullYear(2012,1,26);
    correctly sets the date:
    Sun Feb 26 2012 10:10:33 GMT-0500 (Eastern Standard Time)
    var d = new Date();
    d.setUTCFullYear( 2012 );
    d.setUTCMonth( 1 );
    d.setUTCDate( 26 );
    incorrectly sets the date:
    Mon Mar 26 2012 11:10:33 GMT-0400 (Eastern Daylight Time)
    var d = new Date();
    d.setUTCDate( 26 );
    d.setUTCMonth( 1 );
    d.setUTCFullYear( 2012 );
    correctly sets the date:
    Sun Feb 26 2012 10:10:33 GMT-0500 (Eastern Standard Time)
    It appears the full date isn't being used to re-validate/calc the date upon setting single utc parms.
    Thanks.
    This happens Windows 7, NOOK...

    Short answer; no, doesn't happen Apr 1.
    <br/>Longer answer; I set up a page to loop through everyday of a given month.
    <br/>(http://itriware.com/lab/test/datetest.html)
    <br/>Changing the machine date results in:
    * md:30-Mar - no good for the month of Feb.
    * md:31-Mar - no good for the months: Feb, Apr, Jun, Sep, Nov.
    * md:01-Apr - ok
    * md:30-Apr - no good for the month of Feb.
    * md:31-May - no good for the months: Feb, Apr, Jun, Sep, Nov.
    (md=machine date)
    Seems to be an end of the month issue, depending on the sequence of setting the utc parms, the month rolls over but isn't adjusted back when setting the next parm...sometimes.
    After thinking about it;
    Seems that if the machine day of month is greater than the # of days in the requested month it fails, hence feb always fails and only requested months with 30 days fail when the machine date is the 31st. In the sequence setUTCFullYear, setUTCMonth, setUTCDate.

  • Problem with setting date using java 1.4.2

    Is this a bug?
    under java 1.4.2,
    executing System.out.println(new java.util.Date("01-JAN-1950")) displays
    Sun Jan 01 00:10:00 SGT 1950
    but under java 1.3.1 the same statement displays as Sun Jan 01 00:00:00 SGT 1950 which is the desired result.

    I'm just citing an example using Date().
    In fact, whether I use DateFormat or Calendar, it shows the same result.
    When I set the date to 1 Jan 1950 0 hours 0 minutes 0 seconds,
    jdk1.4.2 will always return me 1 Jan 1950 0 hours 10 minutes 0 seconds.
    It works correctly under jdk1.3.1

  • I got problem to set date n time preferences ... :(

    hi. im using macbook pro. my mac hav been install with boot camp. so now i run two operating system. mac n windows 7 (64 bits) but i can set my clock time correctly for both my OS.. how can i solved this .? i hav doing  google search about this... but i found nothing.. can sumone help me

    You can always use Google Translate - we get a number of messages here in a variety of languages and I find that it's simple to both 'decipher' and answer those messages when I use Google Translate.
    Clinton

  • Flex override public function set data

    Hi,
    I have a datagrid with itemRenderer in datagridcolumn as my custom component(c1). I am getting the dataprovider data in custom component by overriding the set data function, it is fine. But now my custom component(c1) is also having another custom component(c2).
    Now the doubt is - how to get the dataprovider data in c2 component?
    Thanks in advance.

    Create a property with name custom_data in component c2
    set the value of  _customData in c2 object created in c1 with the data u get in c1 in commitProperties method of c1.
    c2.customData = this.data;

  • How to make sure override public function set data(item:Object) is called on vertical scroll

    Hi
    I am facing an issue with my datagrid with renderers on all its columns.I need to enable or disable the render components based on values in different columns in the row.Its works fine in most of the places .But in some places which is not visible without the scroll,it seems the set data function is not called,because of which the component will be enabled when it has to be disabled.How do i ensure it works fine all the time.
    Regards
    Sidd

    The set data is probably being called.   Keep in mind that renderers are recycled so the enabled/disabled state must be fully derived from the row's data.
    Alex Harui
    Flex SDK Developer
    Adobe Systems Inc.
    Blog: http://blogs.adobe.com/aharui

  • Javascript Date() function not working

    Hi,
    I'm experiencing some problems with the Date() function in javascript. The problem is that the function doesn't seem to work. For example when I do "var date = new Date(); xfa.host.messageBox(date);" in the enter event of a date field, I get "Date is not a function" error message in de javascript debugger.
    Is there anyone out there who knows how why the Date function is not working in LiveCycle Designer. Am I using the Date function in an improper way or maybe I am using the wrong function?
    Please can anyone help me out?

    Hi Paul,
    Thanx for you reply. It worked fine.
    I also found out that following works as well:
    var MyDate = util.scand("dd-mm-yyyy",new Date());
    console.println("this date: "+util.printd("dd-mm-yyyy", MyDate));

  • Set Data

    Hi
    1. I am trying to use the SET data functionality from the System- Userprofile.
    The data is getting"SET" but next time if i execute the same transaction then i dont see the set value.
    example: 1. In Tcode VA01 for me the plan and the sales area doesnt change so i am planning to use the SET data.
                   2. The data gets set only temporarily but next time when iput va01 again asking me for reentering.
    kindly let mek now your valuable inputs to solve this..
    reg
    satheesh

    Sorry.  The link given to me by another in this forum:
    http://support.apple.com/manuals/#appleremotedesktop
    first link is v2.2.  I thought the most recent would show up at the top...
    I should have looked at the bottom 

  • Problem in getting data on button submit

    I have 3 combo boxes in a form & a button on the other html form
    when the user will change the combo box, the form will be submitted with the values of all three combo boxes.
    And when the button is pressed it will again submit the form along with all the values of comboboxes & same values in different variables. I am doing this so the new variables can be used to call the discoverer sheet & old can be used to mantain the state of the combo boxes.
    The datasheet will not be populated on change of combo boxes, but will only show the data when the button is pressed.
    The problem i am getting the user is not getting the required data on the first click of the button, but when the button is pressed for the second time, the user will get the required result.
    Follwing is the chunk of code that I am using.
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <script type="text/javascript">
    function myFunc(){
         document.forms["form1"].elements["GRP"].disabled=false;
         document.forms["form1"].elements["RGN"].disabled=false;
         var i = document.forms["form1"].elements["GRP"].value;
         var j = document.forms["form1"].elements["RGN"].value;
         var k = document.forms["form1"].elements["BR"].value;
         if(j == 0){
              submitform();
         else{
              submitform();
         if(k == 0){
              submitform();
         else{
              //makeGRPDisable();          
              //makeRGNDisable();          
              submitform();
    function submitform()
    document.form1.submit();
    function submitform2()
    document.form2.submit();
    var queryString;
    function getParameter( parameterName ) {
    queryString = window.location.search.substring(1).toLowerCase();
    //alert(queryString);
    //if (queryString.length==0) {return "null";}
    var parameters = new Array();
    parameters = queryString.split('&');
    for(var i = 0; i < parameters.length; i++) {
    //alert(parameters);
    //alert(parameters[i].indexOf(parameterName));
    if (parameters[i].indexOf(parameterName.toLowerCase())>=0) {
    //alert(parameters[i]);
    var parameterValue = new Array();
    parameterValue = parameters[i].split('=');
    return parameterValue[1];
    return null;
    var Pgid = getParameter('_pageid');
    var Gid = getParameter('GRP');
    var Rid = getParameter('RGN');
    var Bid = getParameter('BR');
    var Gid2 = getParameter('GRP2');
    var Rid2 = getParameter('RGN2');
    var Bid2 = getParameter('BR2');
    var ALid = getParameter('AL');
    </script>
    </head>
    <body>
    <table width="100%" border="1" cellpadding="0" bordercolor="#F26520" bgcolor="#FFFFFF">
    <tr>
    <td>
    <form name="form1" action="http://cdbo:7778/portal/page? method="GET">
    <oracle>
    declare
    theUser varchar2(30) := portal.WWCTX_API.get_user;
    Uid2 varchar2(30);
    begin
    htp.p('<input type="hidden" name="_pageid" value="553,142908" />');
    htp.p('<input type="hidden" name="_dad" value="portal" />');
    htp.p('<input type="hidden" name="_schema" value="PORTAL" />');
    htp.p('<input type=hidden name="AL" value=' || :v_al_id || '>');
    IF :v_al_id=0 THEN
    IF :v_group_id=0 AND :v_region_id=0 AND :v_branch_id=0 THEN
         htp.p('<select name="GRP" onChange="submitform()">');
         htp.p('<option value=0>All</option>');
         for i in (select groupcode, groupshortname from GROUPS@cdb)
         loop
              htp.p('<option value="' || i.groupcode || '">' || i.groupshortname || '</option>');
         end loop;
         htp.p('</select>');
         htp.p('<select name=RGN onChange="myFunc()">');
         htp.p('<option value=0>All</option>');
              htp.p('</select>');
         htp.p('<select name=BR onChange="submitform()">');
         htp.p('<option value=0>All</option>');
         htp.p('</select>');
    END IF;
    END IF;
    END;
    </oracle>
    </form>
    </td>
    <form name="form2" action="http://cdbo:7778/portal/page? method="GET">
    <td>
    <oracle>BEGIN
    IF :v_group_id=0 AND :v_region_id=0 AND :v_branch_id=0 THEN
         htp.p('<input type="hidden" name="_pageid" value="553,142812" />');
         htp.p('<input type="hidden" name="_dad" value="portal" />');
         htp.p('<input type="hidden" name="_schema" value="PORTAL" />');
         htp.p('<input type=hidden name="AL" value=' || :v_al_id || '>');
         htp.p('<input type=hidden name="GRP" value=' || :v_group_id || '>');
         htp.p('<input type=hidden name="RGN" value=' || :v_region_id || '>');
         htp.p('<input type=hidden name="BR" value=' || :v_branch_id || '>');
         htp.p('<input type=hidden name="GRP2" value=' || :v_group_id || '>');
         htp.p('<input type=hidden name="RGN2" value=' || :v_region_id || '>');
         htp.p('<input type=hidden name="BR2" value=' || :v_branch_id || '>');
         htp.p('<input type=button value=Submit onClick=submitform2()>');
    END IF;
    END;
    </oracle>
    </form>
    </td>
    </tr>
    </table>
    </body>
    </html>
    Regards
    AkS!

    AkS,
    I think I get it. You want the user to be able to change the combo boxes as they like, but the report is only refreshed when they click on the submit button. I don't understand why you need to refresh the screen each time a combo is selected, but I'm guessing that the values in the second and third combo boxes will vary depending on the selection made in the first.
    You could achieve this using AJAX calls, but that gets into a whole new game.
    I'm puzzled about the if ... then test to see that the fields are all set to 0 (that equates to "all" I think. If I read your code right, that means the form is only displayed if the user selects all from each combo. There's also a closing " mark missing at the end of the form action (you should't need the question mark - it will be added automatically).
    Using a GET method is good because you can see the parameters on the url, but It might be helpful to change the type of the inputs in form2 from hidden to text fields so you can see what Portal is seeing. It won't change the functionality, but it may help you see if the values are being set at the correct time.
    Finally, have you checked the cache settings for the page?
    I can't think of anything else to suggest.
    Patrick.

  • Problem in Adhoc Query's set operation functionality.

    Hi Experts,
    I am facing problem executing Adhoc Query's set operation functionality.
    In Selection Tab, following operations are performed :-
    Execute a query and mark it as 'Set A'.(Say Hit list = X)
    Execute another query and mark it as 'Set B'.(Say Hit list = Y)
    In Set operation Tab, following operations are performed :-:-
    Carry out an Operations 'Set A minus Set B'.
    which results in Resulting Set = Z.
    Transfer the resulting set 'in hit list' and press the copy resulting set button.
    In Selection Tab, Hit list is populated with Z.
    And when output button is pressed, I get to see 'Y' list and not 'Z' list.
    Kindly help.
    Thanks.
    Yogesh

    Hi Experts,
    I am facing problem executing Adhoc Query's set operation functionality.
    In Selection Tab, following operations are performed :-
    Execute a query and mark it as 'Set A'.(Say Hit list = X)
    Execute another query and mark it as 'Set B'.(Say Hit list = Y)
    In Set operation Tab, following operations are performed :-:-
    Carry out an Operations 'Set A minus Set B'.
    which results in Resulting Set = Z.
    Transfer the resulting set 'in hit list' and press the copy resulting set button.
    In Selection Tab, Hit list is populated with Z.
    And when output button is pressed, I get to see 'Y' list and not 'Z' list.
    Kindly help.
    Thanks.
    Yogesh

  • Loss style when overriding the function 'set data' for a TileList

    Hi!
    In a TileList, I set the itemRenderer for a components from
    where I override the function set data like in this example:
    but, by doing this, I'm loosing all the built-in CSS
    behavior. The onMouseOver effect the change the backgroundColor and
    the hand pointer. I try to set it programmatically but without
    success.
    An idea?
    Thank you

    "FlexBin" <[email protected]> wrote in
    message
    news:gdaj4r$noj$[email protected]..
    > Hi!
    >
    > In a TileList, I set the itemRenderer for a components
    from where I
    > override
    > the function set data like in this example:
    >
    > but, by doing this, I'm loosing all the built-in CSS
    behavior. The
    > onMouseOver
    > effect the change the backgroundColor and the hand
    pointer. I try to set
    > it
    > programmatically but without success.
    >
    > An idea?
    >
    > Thank you
    >
    > public override function set data(value:Object):void
    > {
    > var xml:XML = new XML(value);
    >
    > if(this.backgroundIconName != null &&
    > this.ico != null &&
    > this.labelText != null) {
    >
    > if(xml.backgroundIconName != "") {
    >
    > this.backgroundIconName.source = "assets/" +
    xml.backgroundIconName;
    > }
    >
    > this.backgroundIconName.visible =
    (xml.backgroundIconName != "");
    >
    > this.ico.source = "assets/" + xml.iconName;
    > this.ico.width = Number(xml.width);
    > this.ico.height = Number(xml.height);
    >
    > this.labelText.text =
    resourceManager.getString('myResources',
    > xml.label);
    > }
    >
    > if(xml.@available == 'false')
    > {
    > this.enabled = false;
    > }
    > }
    There are examples of how to properly implement this kind of
    functionality
    in the itemRenderers here:
    http://flexdiary.blogspot.com/2008/09/groupingcollection-example-featuring.html
    http://flexdiary.blogspot.com/2008/09/extended-datagrid-with-stylefunction.html

  • Button in Bex Analyser 7.0 - problem with setting up Static Parameters

    Hello,
    I know a similar problem has been discussed here already, but I am still having problems with setting up Static Parameters of my Button in BEx Analyser 7.0, so that I can pass Variable values from that button to my query.
    This is what I do - in Static Parameters of my Button I set the following values:
    Name                          Index          Value
    DATA_PROVIDER        0               DP_1
    CMD                             0               PROCESS_VARIABLES
    SUBCMD                      0               VAR_SUBMIT
    VAR_NAME                 0               0RMA_FIP
    VAR_VALUE               0               004/2010
    As a result, I would like the value 004/2010 to be passed to variable 0RMA_FIP (which is mandatory) and the query to be executed with that value. For some reason, however, the value is not passed correctly, and instead the variable is filled with a blank or not filled at all, and I am getting a message "Specifiy value for variable Fiscal year/period". What do I do wrong?
    Just to give you a broader picture - I would like to later use this logic to pass more than one variables into a query, including a hierarchy node, and read the values from an Excel worksheet - however, after many attempts to do so, I started playing with just one variable to figure out what the problem was.
    I have already seen the following two threads and SAP notes on passing variable values from the button:
    Re: Button in BEx Analyzer 7.0
    Re: How to set variables values via VBA.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f0881371-78a1-2910-f0b8-af3e184929be?quicklink=index&overridelayout=true
    Can anyone please advise?
    Cheers,
    AL

    I managed to figure it out myself!
    Instead of VAR_VALUE I need to enter VAR_VALUE_EXT, and it works fine.
    I will mark this thread as "answered".

Maybe you are looking for

  • IPod can't be updated

    everytime i attempt to sync photos to my ipod i get this alert box: "The iPod cannot be updated. The disk could not be read from or written to." ive tried syncing through Adobe Photoshop Album 2.0 and through my disk drives. music transfers fine, i j

  • Can I set Time Machine to backup both my hard drive and an external hard drive?

    Hi. I've been working with a lot of family video lately and my internal hard drive has filled up significantly. iMovie doesn't seem to have a good archiving facility like Adobe InDesign which I use at work were all the relevant files are gathered tog

  • Dynamic image positioning in SAPScript

    Hi everyone! I have been searching the whole internet but unfortunately did not find a solution for my problem, maybe someone of you knows how to solve it: I want to print thumbnail pictures beside items of an inquiry. I know that there are variable

  • How do I download IOS 7 to my IPad?

    I want to download IOS 7 for my IPad. I would like to do this through my computer so I do not have to remove my apps. However, when I go into updates in my iTunes, the only selection I get is IOS 8. I do not want to use IOS 8 until it is fixed. So th

  • OSB jms 2 ftp/file

    Hello My configuration: JMS Proxy Service(byte stream) - > ftp/file Business service I can write stream to ftp/file without convert to array? Best Regards, lam