Cascading LOV submit

Hi.
I have a FORM that create or update table record.
In this form i have create a LOV (regions).
After we have another LOV (province).
I want that when i select my region, the "province lov" will be populated only with appropriate province.
Now i have setted region LOV as a Selected list WITH SUBMIT, but when i try to choose my region, the form will be submitted :( and i don't want that!
How can i do???
Thanks.
Edited by: 890410 on 18-ott-2011 7.36

Hi 890410,
In your "*LOV (regions)*" make sure you have the:
Page Action when Value Changed --> None (default)
In your "*LOV (province)*" make sure that the:
Cascading LOV Parent Item(s) --> LOV (regions) page item.
and that the:
Optimize Refresh --> Yes
This was the child LOV will be populated with the correct data set once the application user has selected a Region.
daniel
Edited by: zooid on 18-Oct-2011 11:23

Similar Messages

  • How to prevent apex 4.0 shuttle cleared by cascading LOV setting?

    I have a shuttle control for choosing a list of database users populated from a child table by an On Load - After Header process, which then repopulates the child table in an On Submit - After Computations and Validations process. Work fine.
    I then set the shuttle's Cascading LOV Parent Item(s) to a text item that could be used for filtering the shuttle's LOV, and revised the LOV SQL to a) use the filter and b) include items stored in the child table, i.e.:
    select username as dv, username as rv
    from all_users
    where username like upper(:P5_USERSFILTER) || '%'
    union
    select username, username
    from user_grouping_users
    where groupid = :P5_GROUPID
    order by 1
    Unfortunately, when the filter value changes (P5_USERSFILTER), the state of shuttle (as set in my On Load - After Header process) is cleared. The values from the child table are properly included in the LOV, but they are no longer selected -- so the appear in the left-hand list as candidate values but not in the right-hand list as selected values. Additionally, any items selected in the shuttle before changing the value of the LOV Parent (:P5_USERSFILTER) are no longer selected.
    Is there a way to prevent the selections of a Cascading LOV item from being cleared when the parent item is reset?
    Note, I've specified 'No' for Optimize Refresh, and 'P5_USERS' for Page Items to Submit and 'Yes' for Display Extra Values (which in general does not seem to have any affect on a shuttle LOV)

    Hallo all!
    I got a similar situation: a text item that filters the left side of an shuttle item (P11_IAG_ENUM), but the right side should stay the same - independet from the text item, where search-phrases are entered.
    So I tired with your example - thanks for that - but I changed the code that I only have one collection 'P11_IAG_VALUES' ... but right side seems to be still dependend from the search item. I also deleted the "set value" action of the "save current selection"-dynamic-action, because I supposed it's not needed.
    Here is my "save current selection"-dynamic-action:
    DECLARE
    c_collection CONSTANT VARCHAR2(30) := 'P11_IAG_VALUES';
    l_seq_id NUMBER;
    BEGIN
    IF NOT apex_collection.collection_exists(c_collection) THEN
    apex_collection.create_collection(c_collection);
    END IF;
    SELECT MIN(seq_id)
    INTO l_seq_id
    FROM apex_collections
    WHERE collection_name = c_collection
    IF l_seq_id IS NULL THEN
    apex_collection.add_member (
    p_collection_name => c_collection,
    p_c001 => :P11_IAG_ENUM );
    ELSE
    apex_collection.update_member (
    p_collection_name => c_collection,
    p_seq => l_seq_id,
    p_c001 => :P11_IAG_ENUM );
    END IF;
    COMMIT;
    END;
    ... and the "restore old selection"-dynamic-action:
    DECLARE
    l_selected_iag VARCHAR2(32767);
    BEGIN
    SELECT c001
    INTO l_selected_iag
    FROM apex_collections
    WHERE collection_name='P11_IAG_VALUES'
    RETURN l_selected_iag;
    EXCEPTION
         WHEN NO_DATA_FOUND THEN
    RETURN NULL;
    END;
    Where is my error in reasoning?
    (Meanwhile I try to create an example application...)
    [Edit: I got problems to acces my workspace, try to reset my password --> error, even try to find my workspace -->error .... everytime the same; I'll try it later again, but hoping that anyone can help me without example application]
    Edited by: kc7 on 10.09.2010 09:20
    [Edit II: I finally created a example-application: *http://apex.oracle.com/pls/apex/f?p=30216*
    workspace: kc7
    user: dummy
    pwd: doll
    Edited by: kc7 on 10.09.2010 12:28

  • 4.2.1 Bug: Current values of child cascading LOVs are LOST.

    Hello, ApEx Team!
    This bug affected 4.1.1 and 4.2.1 but with different behavior. It seems that someone was trying to fix it.
    According to docs "whats new in 4.1" a value of refreshed child cascading lov is derived from default value settings of select list.
    Please follow these steps to see the bug.l builder-work done for you here http://apex.oracle.com/pls/apex/f?p=14110:1
    1.Create primary select list P1_SEL1.
      Display null value: Yes
      LOV definition:
        select 'aaa' name,'a' id
          from dual
         union all
        select 'bbb' name,'b' id
          from dual
         union all
        select 'ccc' name,'c' id
          from dual2.Create child select list P1_SEL2.
      Cascading LOV Parent Item: P1_SEL1
      Page Items to Submit: P1_SEL2 (I strongly believe that this item should be submitted automatically along with Parent Item)
      Display Null Value: Yes
      LOV definition:
        select 'aaa' name,'a' id
          from dual
         union all
        select 'bbb' name,'b' id
          from dual
         where :P1_SEL1 in ('b','c')
         union all
        select 'ccc' name,'c' id
          from dual
         where :P1_SEL1 in ('c')
      Default: return :P1_SEL2;
      Default Value Type: PL/SQL Function Body3.Run app. and manually change P1_SEL1 and P1_SEL2 to 'bbb'.
    4.Manually change P1_SEL1 to 'ccc'.
    h2.
    In apex 4.1.1..
    you see that P1_SEL2 is resetted to NULL automatically. The value of P1_SEL2 is LOST. Although I tell apex to submit P1_SEl2 value to set its session state, but the session state still remains NULL.
    The session state of P1_SEL2 is always NULL and I have no idea how to set it as it is set in a browser at the moment of changing parent LOV P1_SEL1.
    h2.
    Now apex 4.2.1.
    It seems this bug is fixed. Indeed it is NOT fixed.
    To see this bug in 4.2.1 just...
    5.Create a third child select list P1_SEL3 which depends on P1_SEL2.
      Cascading LOV Parent Item: P1_SEL2
      Page Items to Submit: P1_SEL3 (Again, I hope you will always submit current item automatically as you do for the parent item)
      Display Null Value: Yes
      LOV definition:
        select 'aaa' name,'a' id
          from dual
         union all
        select 'bbb' name,'b' id
          from dual
         where :P1_SEL2 in ('b','c')
         union all
        select 'ccc' name,'c' id
          from dual
         where :P1_SEL2 in ('c')
        Default: return :P1_SEL3;
        Default Value Type: PL/SQL Function Body6.Run app. again. Manually set P1_SEL1, P1_SEL2 and P1_SEL3 to 'bbb'.
    7.Change P1_SEL1 to 'ccc' and see the bug:
    1) P1_SEL2 is reset to NULL for just a short time and than restored to 'bbb'.
    2) P2_SEL3 is reset to NULL. So the session state was NULL for this item at the moment of calculating default value. As a result the value of child cascading lov is LOST.
    So this bug is still present in 4.2.1.
    Can I hope to get workaround for this problem in 4.1 and 4.2?
    Thank you,
    Vladimir
    Edited by: vgoncharov on 17.12.2012 19:37
    Edited by: vgoncharov on 17.12.2012 22:45

    Good to hear this is already being worked on.
    When we tried to work around the "Automatic detection" bug - changing the "Application Language Derived From" to "Application Preference" or "Session" - we hit issue that some page processes were not firing in translated application.
    See Page processes not firing in Translated applications
    Jan

  • Cascade lov in a "form with a report"

    I am fairly new to HTMLDB and struggling with this one. Can anyone help?
    I have built a test application that uses a form with report, created using the wizard.On the form I have cascaded LOVs( SITEOWNER and SITE) . The second LOV should depend on the first in that only the sites belonging to the siteowner in the first LOV should be available for selection. I cannot get this to work. I have tried to use "select list" on bothe LOVs but in this case the second LOV is blank. I have also tried "select list with submit" and trap the submit with REQUEST != expression1 as described in some of the posts in this forum, but cannot stop the form from branching.
    Any help will be welcome !. My test application is at the Oracle HTMLDB site.
    MISTST1/[email protected]/bitotu

    Hi,
    If you edit your report region there in the report attributes you will be finding the "Link Column" Section.
    Under the link column section you will be referring the pencil icon image and target page number in the application.
    Brgds,
    Mini
    Mark Answers Promptly

  • APEX 4: Cascading LOV generic?

    Is it possible to have a "generic" cascading LOV?
    I prefer to have my LOV as shared components (reuse and such) but with a cascading LOV the detail list refers to the Parent item within the query. This makes for a not very reusable LOV in my opinion.
    Is it possible to use a more generic bind?
    select description d, id r
    from   table
    where parent = :B --<--- Not refering to any particular Page Item
    order by 1... and specify the actual item which is to be used in the detail query? (Page Items to Submit)

    Hi Learco,
    I doubt that this will work, because the "Cascading LOV Parent Item" has to be a page item which is actually rendered into the HTML page. The reason is that for those page items we register a "change" event to trigger the refresh of the childs. If it's an application item it would not exist on the page.
    I would also question if dealing with additional application items and additional dynamic actions would make the code better maintainable. If the LOV query is really that complicated that it would be beneficial to re-use it, I would suggest to define a database view for it and then again use a very simple LOV statement to access it. I think that would make it much more transparent and maintainable then trying some generic bind variables and placeholders.
    Just my 2 cents
    Patrick
    PS: yes, nice colors ;-)
    My Blog: http://www.inside-oracle-apex.com
    APEX 4.0 Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • Cascading LOVs (APEX 4.1) problem, using in report does not set values

    Hi,
    i am using APEX 4.1.0.00.32 and i have a simple report as
    SQL:*
    SELECT * from region
    WHERE region like '%'||P3_REGION||'%'
    and country like '%'||P3_COUNTRY||'%'
    and city like '%'||P3_CITY||'%'
    Items:*
    P3_REGION:
    select distinct region as d, region as r from region
    Display Null value: YES
    Null display value: - select -
    Null return value: +0+
    P3_COUNTRY:
    select distinct country as d, country as r from region where region = :P3_REGION
    Display Null value: YES
    Null display value: - select -
    Null return value: +0+
    Cascading LOV Parent Item(s): P3_REGION
    P3_CITY:
    +select distinct city as d, city as r from region where country = :P3_COUNTRY
    Display Null value: YES
    Null display value: - select -
    Null return value: +0+
    Cascading LOV Parent Item(s): P3_COUNTRY
    The LOVs work fine and the correct values are displayed if cascading through them
    So in the last step i want to filter the report with the values that were selected in the lovs. And this i get not working.
    I tried to add a button with SUBMIT of the page. After choosing values in all LOVs and clicking the SUBMIT button the page submits, alle LOVs are cleared (with value - select -) and the report shows all rows.
    I tried to change the button to "redirect to Page 3" and setting the values P3_REGION, P3_COUNTRY, P3_CITY to &P3_REGION., &P3_COUNTRY., &P3_CITY. but without success.
    I tried to use the setting "Page Action when Value Changed" to "Submit" and/or "Redirect and set value" for all Item LOVs and/or only the last item LOV, but then the cascade of the LOVs does not work properly and the report does not change too.
    I am confused as i don´t know what i can do until now. I think this should be an easy requirement to limit/filter the report with values in the LOVs.
    Furthermore it should be possible to choose only the region LOV and then limit the report with that region (without choosing country and city)
    Thanks in advance!

    Hi Dan,
    thank you for your answer. I have the solution now from Kleber_M, this works.
    Dan McGhan wrote:
    1. Use bind variables in my query. It would look something like:
    SELECT *
    FROM region
    WHERE region LIKE '%'|| :P3_REGION ||'%'
    AND country LIKE '%'|| :P3_COUNTRY ||'%'
    AND city LIKE '%'|| :P3_CITY ||'%'
    This was only a mistake when writing the post, i forgot the colon. I use bind variables of course.
    2. Make sure you have a comma separated list of item names that the report depends on beneath the SQL Query where it says Page Items to Submit. This will make sure that the value of those items on the page are bound into session state prior to the query executing.I tried this, too, but without success...
    3. Use Dynamic Actions to perform the refresh action when any of the three items changes. This would be both more performant and a better experience for the end user than a full page refresh.How can i do this. This sounds good, because when refreshing the page often some items oder actions are done that i don´t want to.
    Regards,
    Matze

  • APEX 4.0.2 Multi-selection on a cascade LOV select list only pass 1 value

    Hello everyone,
    I am struggling to make a cascading LOV select list has multi-selection.
    On one report page.
    I have 2 select list
    The first one lists the court name (P4_COURT_NAME), the second one (P4_DEFENDANT) list all defendants who currently engaged in the court.
    The problem is when I allow the defendant select list become multi-select, when it submit it only pass the first selected value.
    So I create just a simple select list based one list of value, and make it allow multi-selection. When it submit, the normal select list can pass selected values properly, while the cascade LOV select list pass only the first selected value.
    Please help if any of you have an idea why.
    We use APEX 4.0.2.00.07, Oracle data version iis 11g
    The some configuration settings I set for the P4_DEFENDANT IS
    Value required: Yes
    Page Action When value changed: None
    Allow Multi Selection: Yes
    Named LOV: --Select Named LOV-
    Display Extra value : Yes
    Display Null Value: Yes
    Null Display Value: --Select—
    Null return value:
    Cascading LOV Parents Items: P4_COURT_NAME
    Page Items to Submit: P4_DEFENDANT
    Optimize refresh: YES
    List of value definition
    SELECT def.first_name || ' ' || def.surname || ' (PRN: ' || def.prn || ' )' as d, def.def_id as r
    FROM defendant def INNER JOIN court_engagement ce
      ON def.def_id = ce.defendant_id
    WHERE (ce.date_joined_aodt_court IS NOT NULL
      AND (ce.date_terminated IS NULL OR to_date(ce.date_terminated,'dd/mm/yyyy') > to_date(sysdate,'dd/mm/yyyy'))
      AND UPPER(ce.court_name) LIKE UPPER(:P4_COURT_NAME)
      AND ce.active = 1)Source Used: Only when current value in session state is null
    Source Type: Static Assignment
    Maintain session state: Per session
    The rest is default.
    Thanks in advance.
    Ann

    Hi Chintan,
    The "Source used" for those items are "Always, replacing any value in the session state". To set them to "Only when current value in session state null" sounds a good solution to me.
    However, a strange thing just happened - now I will not lose the values of the items after the page reloading, although I have changed nothing in the page in my application since I asked the question. I don't understand why all of a sudden the reloading doesn't make me lose changed values any more. Let me dig it tomorrow to see what I'll find.
    Thanks so much for your help.
    Christine

  • Apex 4 Cascading LOV's how to set a child LOV back to null return value

    Hi,
    My problem is I am using the new Dynamic Actions to implement Cascading LOV functionality in Apex 4 which means not having to submit the page to update child LOVs after parent LOV changes.
    What I am finding is that when you change the parent LOV value then the child LOV (which has a null return value) is not defaulting to the null return value (in my case no selection should return -1) if its list is filtered to a different set of values which doesnt have a valid selection. The child LOV is left without a selection when I need it to default back to the null return value (-1, representing all values).
    Also I was hoping to do this before the page is submitted so the filtering down the hierarchy of LOVs will work where the child is null (-1, meaning all values) and in turn its child LOV(s) will filter also from the null child value.
    Any help would be much appreciated.
    Thanks

    Hi 804641,
    I'm not sure if I get your problem and I tried to reproduce it.
    http://apex.oracle.com/pls/apex/f?p=2672:6 is my example with a cascading LOV where I have also defined a dynamic action which fires when P6_EMPNO changes and it shows the current selection.
    Maybe it helps if you setup an example on apex.oracle.com and provide the workspace/user/pwd so that I can have a look. I'm also not sure about your sentence "using the new Dynamic Actions to implement Cascading LOV functionality", because dynamic actions are not needed for cascading LOVs. It's a feature of the item types themselves where you just have to set the "Cascading LOV Parent Item(s)" attribute.
    Regards
    Patrick
    My Blog: http://www.inside-oracle-apex.com
    APEX 4.0 Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • Session State Protection breaks Cascading LOV.

    Hi,
    Whenever I turn Session State Protection on my application , with option 'Arguments Must Have Checksum' on the page level,
    Items defined with a cascading LOV will not work. Once session state protection is on for the page, and I change the value of a parent
    LOV, the Child Item LOV (defined with Cascading LOV) will not show any value and the 'round working icon' will just keep on going
    and does not end, The Child/Cascading LOV seems to be just hanging and not return any values. This happens consistently (APEX 4.1.1.).
    There are no threads existing for this behavior, would like to know if this is a known issue and if there is a fix.
    Thanks,
    Ramon

    The documentation says, "If you need to set this item's value in session state using Ajax, then an Unrestricted protection level must be used for the item (for example in Dynamic Actions, Set Value, Page Items to Submit or Cascading LOVs, Page Items to Submit)." In practice, what this means (among other things) is that items that are identified as "Cascading LOV Parent Item(s)" must have "Session State Protection" set to "Unrestricted".

  • Resetting cascading LOVs

    Hi.
    I have a problem (who doesn't?). Picture this:
    I have 5 cascading LOVs. Each LOV includes a null value for "Not Defined", which is produced like this:
    select trim(name), value
    from table
    where column = :VAR_FROM_PREVIOUS_LOV
    union all
    select ' Not defined', null
    from dual
    order by 1
    Notice that the value ' Not defined' has a leading blank and will always be the one displayed in the LOV before a selection is made because that leading blank will sort before the other values. Each LOV is driven from a different table.
    Each LOV is a "Select with submit" with Source type "Only when current value in session state is null".
    Branching to same page is in place for the requests associated with these LOVs.
    This works fine, apart from one nasty detail:
    Imagine you set LOV1. LOV2 has now the values associated with the selection of LOV1, right?
    You then proceed selecting LOV2, LOV3, LOV4 and LOV5 in sequence. Ok, it works fine so far.
    But now the user changes his/her mind, and resets the value in LOV2. One would expect that LOV3 would now contain the values associated with the new value in LOV2. Well, that is, in fact, the case. But since LOV3 is showing ' Not defined', one would also expect LOV4 and LOV5 to be reset with the only value of 'Not defined'. Well, it doesn't happen! LOV4 and LOV5 still carry the previous selection, which is now unrelated with the selection of LOVs 1,2 and 3.
    The thing acts as if all LOVs were calculated at the same time on submit, instead of being reset in sequence, one after the other, which is what I hoped would happen, following their sequence number.
    Does anyone have any way around this behaviour?
    Thanks,
    Paulo Terca

    Hi, Scott.
    Thanks for replying. I realize my description may have been a bit confusing.
    I'll give an example: Imagine several tables, each one a detail of the previous, like, for instance:
    Regions
    Countries
    Country_regions
    Cities
    Suppliers
    Now picture 5 LOVs, one for each attribute. Only the "Regions" LOV has values. When you select a Region (e.g., EMEA), the LOV for Countries gets populated. You now select a country, and the LOV for Country_regions gets populated. Once you get to the city, you will get a list of suppliers from that city. You select a supplier and get the details of that supplier.
    Now the things is: imagine you are satisfied with your search and want to check on another supplier that lives in China. You want to select "Asia" from the first LOV and expect that the LOV for countries will be populated with all asian countries, but all other LOVs will be reset to a state of emptyness, right? You don't want to be seeing "Asia" and still see "Paris" for the city and whatever supplier was previously selected.
    So, what I did was that in each LOV I would have a SELECT that would have a WHERE clause dependent of an attribute taken from the previous LOV:
    LOV1: select name, id from regions
    LOV2: select name, id from countries where region_id = :P10_REGIONS
    LOV3: select name, id from country_regions where country_id = :P10_COUNTRIES
    LOV4: select name, id from cities where country_region_id = :P10_COUNTRY_REGIONS
    LOV5: select name, id from suppliers where city_id = :P10_CITY
    All selects have submit. Well, if you try this, you'll see that after making the first run through the LOVS, when you try a different selection on the first, the 4th and 5th will still have the previous city and supplier.
    I managed to solve this problem in the following way:
    LOV1: select name, id from regions
    LOV2: select name, id from countries where region_id = :P10_REGIONS
    LOV3: select name, id from country_regions where region_id = :P10_REGIONS and country_id = :P10_COUNTRIES
    LOV4: select name, id from cities where region_id = :P10_REGIONS and country_id = :P10_COUNTRIES and country_region_id = :P10_COUNTRY_REGIONS
    LOV5: select name, id from suppliers where region_id = :P10_REGIONS and country_id = :P10_COUNTRIES and country_region_id = :P10_COUNTRY_REGIONS and city_id = :P10_CITY
    It's messier, but works.
    Anyway, thanks again for your input.
    Regards,
    Paulo Terca

  • Problems with  4.1.1.00.23 Cascading LOVs

    I have a pages with 4 levels of cascading LOVs. These are:
    MEMBER_ID => ACCOUNT => COMMODITY => EXPIRY
    The issue I am running into is that these work fine up through the first three and then fails (or rather simply doesn't do anything) on EXPIRY. I have no idea what or what to do to get this last level to populate. I have confirmed, using the values present in the session that the query for EXPIRY should return data.
    The top level is a simply Select List Control using a Named LOV with this query:
    select
    case organization_type
      when 'Member' then NAME || Chr(32) || LEGAL_NAME
      when 'Bank' then LEGAL_NAME
    end d,
    ID r
    from mbrdata.ORGANIZATION
    order by name, legal_nameThe next level, ACCOUNT, is set up as a cascading LOV. The parent is the MEMBER_ID.
    Named LOV     
    Display Extra Values     
    Display Null Value     
    Cascading LOV Parent Item(s)     P15_MEMBERID
    Page Items to Submit     
    Optimize Refresh     YES
    List of values definition
    SELECT DISTINCT MARGINING_ACCOUNT d, MARGINING_ACCOUNT r
    FROM MBRDATA.INTRADAY_MARGIN_MONITOR
    WHERE ORG_ID = :P15_MEMBERID
    ORDER BY 1The next level, COMMODITY, is set up as a cascading LOV. The parent is the ACCOUNT.
    Named LOV     
    Display Extra Values     
    Display Null Value     
    Cascading LOV Parent Item(s)     P15_MEMBERID,P15_ACCOUNTID
    Page Items to Submit     
    Optimize Refresh     YES
    List of values definition
    SELECT DISTINCT PHYSICAL_COMMODITY D, PHYSICAL_COMMODITY R
    FROM
        SELECT PHYSICAL_COMMODITY,
               DENSE_RANK() OVER
                ( PARTITION BY ORIG_CLEARER_NAME, MARGINING_ACCOUNT
                  ORDER BY RUNTIME DESC ) AS RUNTIME_RANK
        FROM RISKDM2.INTRADAY_POSITION
        JOIN MBRDATA.ORGANIZATION
            ON ( INTRADAY_POSITION.ORIG_CLEARER_NAME = ORGANIZATION.NAME )
        WHERE ORGANIZATION.ID = :P15_MEMBER_OR_TRADER AND
              MARGINING_ACCOUNT = :P15_MARGINING_ACCOUNT
    WHERE RUNTIME_RANK = 1The next level, EXPIRY, is set up as a cascading LOV. The parent is the COMMODITY.
    Named LOV     
    Display Extra Values     
    Display Null Value     
    Cascading LOV Parent Item(s)     P15_MEMBERID,P15_ACCOUNTID,P15_COMMODITYID
    Page Items to Submit     
    Optimize Refresh     YES
    List of values definition
    SELECT DISTINCT EXPIRY_DATE AS D, EXPIRY_DATE AS R
    FROM
        SELECT EXPIRY_DATE,
               DENSE_RANK() OVER
                ( PARTITION BY ORIG_CLEARER_NAME, MARGINING_ACCOUNT
                  ORDER BY RUNTIME DESC ) AS RUNTIME_RANK
        FROM RISKDM2.INTRADAY_POSITION
        JOIN MBRDATA.ORGANIZATION
            ON ( INTRADAY_POSITION.ORIG_CLEARER_NAME = ORGANIZATION.NAME )
        WHERE ORGANIZATION.ID = :P15_MEMBER_OR_TRADER AND
              MARGINING_ACCOUNT = :P15_MARGINING_ACCOUNT AND
              PHYSICAL_COMMODITY = :P15_PHYSICAL_COMMODITY
    WHERE RUNTIME_RANK = 1Any ideas? I know I am just doing something dumb but, with me, I require and more specific example of my dumbness.
    Thanks,
    -Joe

    Hi Joe,
    looks like you don't reference the parent lov's items in the sql queries for ACCOUNT, COMMODITY and EXPIRY.
    Are there any processes (DA, Ajax etc.) that you use to populate the items :P15_MEMBER_OR_TRADER, :P15_MARGINING_ACCOUNT and :P15_PHYSICAL_COMMODITY in those queries?
    regards,
    Erik-jan

  • Set Cascading LOV Item using Dynamic Action

    Hi all,
    I have the following page item:
    P1_USERNAME
    P1_COMPANY  (LOV)
    P1_DIVISION (LOV)
    P1_DEPT (LOV)
    Item P1_COMPANY, P1_DIVISION, and P1_DEPT are cascading LOV on my page.
    I also have a table that contains the user and his/her company, division, and department.
    So I have a dynamic action that when P1_USERNAME is entered. The dynamic action will pull the COMPANY, DIVISION, and DEPT information from the table and populate the page item accordingly.
    I got the dynamic action working, I can confirm this by checking the Session State of the items.
    BUT I cannot get the LOVs to display the selected value from the session state. They always reset back to "- Please Select -", which is my display value when NULL.
    For example:
    I have a record like in the table:
    Username :alex
    Company : Finance Inc.
    Division : Admin
    Dept : HR
    When I entered the username into P1_USERNAME, this is what I see in the screen.
    Username :alex
    Company : - Please Select -
    Division : - Please Select -
    Dept : - Please Select -
    While the session states of the items have been set correctly as per the record in the database.
    Has anyone experienced this before?
    I think it's because the parent LOV (company), reset the child LOVs (division and dept), when the dynamic action kicks in.
    Thanks.

    I've just taken a look at your sample page and don't think this issue is actually too complicated to solve. (Actually, it was I who was mucking around in page 1, sorry for that. I was looking at it and then had to go. Picked it up again later on and just made a copy this time)
    You change the employee. The dynamic action fires, executes plsql and sets the values in the company2/division2/dept2 fields
    Company 1 is a cascading lov. Empo has changed? Company refreshes. Cascading for division and dept as well.
    You can see this happening in sequence as well when looking at the page. Select emp, it'll hang for a second. You then get the select list refresh icons.
    The sequence in which this happens is of course a bit wrong. You set the values for the items on the client side first, but then their refresh is kicked in, and so the value setting is simply lost again.
    What makes this annoying is how P1_EMPNO is a cascading lov parent of P1_COMPANY. Changing P1_EMPNO will refresh the lovs beneath it. However, you can't simply set their values after you've retrieved the user's company/division/dept, because each lov is dependent on the one above it. Eg you change the employee. The company lov is refreshed. Because the it is refreshed, the division lov will refresh. Now you can set the value of the company lov, but not that of the division one. Why is this? The lov for division requires the value of company in the session state. If you'd set the value for company after it has finished refreshing, it will already be too late for division to pick up the value set. .
    I made a copy of your page to page 5, “tom”.
    The first I did was removing the cascade from the company lov. You don’t need this. There are simply no parent lovs for this lov, as is evident from the sql for it. The companies always remain the same companies even when you select another person; it is not dependent on another item for its values.
    Then the timing issues come in play, and with them there is also the issue of the session state.
    So now companies always show. You pick a user, it runs the PLSQL block and put values in the P5_xxx2 items. P5_COMPANY can be set now, and this is in the set value of the dynamic action. By not suppressing the change event, a refresh will be triggered on its cascading lov, P5_DIVISION.
    Refreshing P5_DIVISION will only get the new lov values (constrained within the chosen company) for this item though, and not set the value. We already have the values in P5_DIVISION2 however, and thus can use the “After Refresh” dynamic action on P5_DIVISION to do this. In short: company gets set, divisions refresh to show the correct divisions, and then the selected value is set. Again, by not suppressing the change event on this item the depending lov on DEPT will be refreshed.
    Then by using another “After Refresh” dynamic action on P5_DEPT we can set the selected value once more.
    Also important is that I changed P5_DIVISION to submit P5_COMPANY when it is refreshed, and P5_DIVISION when P5_DEPT is refreshed. This makes sure that the correct set of values is retrieved and probably why you were struggling aswell. After company has changed and division has refreshed, the value on division is set. But the correct divisions are shown only because the chosen company has been set in the session state.
    The same for division - dept. After the refresh of division, the chosen value for division is set. This change will trigger the refresh on dept, and because dept has the division in its page items to submit list, the correct values will be retrieved.
    Take note that the “debug items” are required in this solution though. Just set them as hidden and unprotect their value. Your goal should be to reduce the amount of roundtrips to the server. Why do a plsql (ajax) call just to retrieve a session state, when the value is already on the page and all in one action? Three hidden items is just so much easier than 3 extra ajax calls, the tradeoff is plenty.
    There is one more noteworthy point, and that is the fact that dept is being retrieved twice. That makes sense because of the cascading lovs. Initially company is changed, and this will refresh division and this in turn will trigger a refresh on dept. At this point the lov for dept will be empty, because division will be empty. Because we set the value of division again after it has refreshed, this will trigger a second refresh on dept, though now the correct list of values is retrieved because division has a value set. Not that big an issue, but good to point out. If you’d have another cascading lov beneath dept, it would refresh three times.

  • Cascading LOV does not work when setting the value of the parent LOV with DA

    Hello All,
    Using APEX 4.2.2.
    I have tow LOVs
    Parent LOV item is: P50_TYPE
    Child LOV item is :  P50_PROJECT_ID
    In other words in the attributes of the item P50_PROJECT_ID we have :
    > Cascading LOV Parent Item(s): P50_TYPE
    > Page Items to Submit: P50_TYPE
    > List of values definition: something similar to:
    Select * from mytable where type = :P50_TYPE
    I use DA that execute JS code to set the value of the P50_TYPE item
    something similar to:
    > $('#P50_TYPE').val(2);
    Having done this, the P50_PROJECT_ID item does not get refreshed, when the value of P50_TYPE is changed. Namely, P50_PROJECT_ID remains empty, unless end user manually changes the value of P50_TYPE.
    Any help please ?
    Regards,

    Thanks Scott,
    By the way, I remember reading a thread posted by you about  Sumneva Drag & Drop Report Region plugin that was answered by Tom . But, I cannot find this plugin anywhere. Does not it supported in APEX 4.2 ? Is there any alternative out there ?
    If you use it, and it works find with you, can you please send it to me on [email protected] ?
    Regards,
    Fateh

  • Loading select list cascading lov

    I have three select list which each have a cascading parent lov, except the first one.
    1.- TOOL
    2.- CATEGORY
    2.- SUBCATEGORY
    Of those 3 select list items... what I save is the "return value" of the subcategory, which is an ID. So the problem appears when I try to edit the information after I save it. I tried to fetch the information in the "source type" area with a "sql return value" and also with the "default value" area, but it showed errors when I want to create a new record... So I'm wondering if I can bring the data with javascript or another manner... thanks
    regards, bernardo

    Hi Bernardo,
    the problem on your page 3 is that P3_CATEGORY isn't populated by a database column. That's why when you view an existing record it will not show anything. And because the value is NULL, your 3rd LOV (P3_CATEGORY_ID) will not find something because P3_CATEGORY is null or has an invalid value.
    You have two options:
    1) Add CATEGORY as database column to your PROBLEMS table or
    2) Use a computation or process to fetch the CATEGORY based on your sub category (P3_CATEGORY_ID) and populate P3_CATEGORY with that value. This computation/process has to fire after the "Fetch" process.
    See my example computation on page 3. In addition I have also set P3_TOOL as "Page Items to Submit" for LOV P3_CATEGORY_ID, because you should always specify all the columns which are used in the SQL statement in "Cascading LOV Parent Item(s)" or "Page Items to Submit".
    Hope that gives you a direction.
    Regards
    Patrick
    My Blog: http://www.inside-oracle-apex.com
    APEX Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • Get('XML') doesn't work, but get() does in javascript - CASCADING LOVs

    I'm trying to get cascading LOVs working in Apex 3.1.0 in Oracle 11g. When I call get.get('XML') it returns null in firefox and empty string in IE6. If I change it to call get.get() then it returns the XML as a string into Javascript.
    The Application process is getting called in both scenarios as i've put PL/SQL logging to disk in order to prove it. The XML being returned is very basic so i'm sure it's not a problem with formatting. I'm not getting any exceptions thrown in javascript either.
    Is it possible to use get.get() and then convert the text into an XML object which is returned as per get.get('XML') which at least will allow me to get something working ?
    thanks
    &lt;script language="JavaScript" type="text/javascript"&gt;
    function getBusinessFieldJS(pThis, pSelect)
    alert('getBusinessFieldJS');
    try
    var l_Return = null;
    var l_Select = html_GetElement(pSelect);
    var get = new htmldb_Get(null, html_GetElement('pFlowId').value, 'APPLICATION_PROCESS=GET_DATA_FIELDS_XML', 0);
    /*get.add('F120_GETBUSINESSFIELD_ITEM',pThis.value);*/
    gReturn = get.get('XML');
    alert('gReturn=' + gReturn);
    alert('gReturn.value=' + gReturn.value);
    if (gReturn == null)
    alert('gReturn is null');
    if(gReturn && l_Select)
    var l_Count = gReturn.getElementsByTagName("option").length;
    alert('l_count='+l_Count);
    l_Select.length = 0;
    for(var i=0;i&lt;l_Count;i++)
    var l_Opt_Xml = gReturn.getElementsByTagName("option")+;+
    + appendToSelect(l_Select, l_Opt_Xml.getAttribute('value'),+
    + l_Opt_Xml.firstChild.nodeValue)+
    + }+
    + }+
    +
    get = null;+
    + }+
    + catch (e)+
    + {+
    + alert('Exception : ' + e);+
    +
    }+
    +}+

    Hi,
    I've been trying to replicate your problem here: [http://apex.oracle.com/pls/otn/f?p=37055:1]
    My application process is:
    BEGIN
    OWA_UTIL.mime_header ('text/xml', FALSE);
    HTP.p('Cache-Control: no-cache');
    HTP.p('Pragma: no-cache');
    OWA_UTIL.http_header_close;
    HTP.prn('<select>');
    HTP.prn('<option value="-1">Please Select</option>');
    HTP.prn('</select>');
    END;(Just copied from your post and XML changed to xml, otherwise untouched)
    And my page has a simple HTML region with the source of:
    &lt;div id="XMLOUTPUT" style="border:1px solid blue; width:200px; height:200px;"&gt;&lt;/div&gt;
    &lt;div id="XMLOUTPUT2" style="border:1px solid blue; width:200px; height:200px;"&gt;&lt;/div&gt;
    &lt;script type="text/javascript"&gt;
    function getMyXML()
    var l_Return = null;
    var get = new htmldb_Get(null, html_GetElement('pFlowId').value, 'APPLICATION_PROCESS=RETURN_XML', 0);
    gReturn = get.get('XML');
    var d = html_GetElement('XMLOUTPUT');
    d.innerHTML = gReturn;
    var d2 = html_GetElement('XMLOUTPUT2');
    d2.innerHTML = get.get();
    var s = gReturn.getElementsByTagName("select");
    alert(s.length);
    &lt;/script&gt;
    &lt;a href="javascript:getMyXML();"&gt;Click&lt;/a&gt;Click on Click at the bottom of the page. The first DIV gets the get.get('XML') object and the second one the get.get() and a popup message tells you how many "select" items are in the XML version.
    As far as I can see, this works fine.
    Andy

Maybe you are looking for

  • Can I use Final Cut Studio 2 software on a MacBook Air?

    My old MacBook Pro was stolen a couple of years ago and I replaced it with a MacBook Air OSX 10.9.5. I still have the software from Final Cut Studio 2  which I used on my MacBook Pro. I haven't got around the replacing this and was looking at the Fin

  • Cannot Uninstall Quicktime

    I need help uninstalling Quicktime which will not uninstall using the standard Windows uninstall tools. I have Quicktime installed under Windows 7. It installed OK, but when I try to run it the process starts then finishes with neither a window openi

  • Manual CUP provisioning

    We are using CUP (BO AC 5.3 SP14) with role provisioning via SAP CUA. Whenever there is a system upgrade etc on our CUA systems, we would prefer if any role requests could be "put on hold" in CUP, ie keep all workflow functionality but just not provi

  • Defaulting % in search pages using personalizations

    Is it possible to default % in search pages of SSHR using personalizations?

  • Want to get a smartphone...but

    Hello everyone, I want to upgrade my phone to a better phone. I currently have a Samsung Reality and I want to upgrade to a smartphone. I have a $10.00 a month data plan at the moment and I believe this affords me 75mb of data. I want to get the Droi