Cascading LOV without setting autosubmit to be "true"

Does anyone know how to make the cascading LOV works on a JSF page without setting the autosubmit to be true?
Here is my usecase: An entity X has attribute A, B, C, in which the LOV of attribute C is dependent on A; however, all A, B, C are mandatory on the database constraint level. So, if I set the autosubmit to be true for A in order to make B knows the changes on A, the Validation Error message will be pop up saying that attributes A, B, C are needed for entity X.
Therefore, is there a way to make C knows the changes of A without setting the autosubmit of A to be true?
Thanks much,
Jinyan

Hi Predja,
After I set the immediate of A to be true, on the page, after I selected the value of A, the field of C does not have a LOV showing up.

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

  • 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 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

  • Can I set autoSubmit="true" and partial trigger in Application Def. Editor?

    Hello Expert,
    Can I set autoSubmit="true" and partial trigger or other properties through JHeadstart Application Definition Editor?
    If I have changed the layout or add item though the Def. Editor, I have to regenerate and the manually modification
    on jsff will be overridden. Any suggestion to solve this problem?
    So far I know the page generation can be disabled, however, what if I have to regenerate the definition but want
    to remain the manual modification in Jsff?
    Thanks
    Neon

    Neon,
    You can use the "Depends on Item" property in the application definition editor. You can set this property on an item, or an item region, region container.
    The items that is specified as depends on item, will get autoSubmit="true" and the dependent items of region will get partial triggers that listen to the depends on item.
    Even if you need settings you can't generate, there is no need to switch off generation of the entire page.
    We never do this, we always specify custom templates for the bits and pieces of the page that we want to customize.
    Have you read section 4.7 "Customizing Using Generator Templates" in JHeadstart Developer's Guide?
    Steven Davelaar,
    JHeadstart team.

  • 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

  • Cascading LOV in af:table will not refresh correctly

    Jdeveloper version 11.1.1.5.0
    I have spent quite a bit of time trying to understand why 2-level cascading LOV won't work in a particular situaion. I still haven't been able to fix it and so I turn to the ADF gurus on this forum.
    Here's the scenario:
    1. I have a ViewObject called AdjustDeltaValuesView. This VO contains attributes from its entity. It also has transient attributes called CategoryId and CodeId.
    2. There is LOV defined for CategoryId for VO CodeCategoryMasterView
    3. There is LOV defined for CodeId for LimitedCodeMasterView.
    3. View Criteria is created for LimitedCodeMasterView which sets a bind variable value from CodeCategoryMasterView.CodeCategoryId.
    4. I have wired all the LOVs correctly and it is working properly in ADF BC tester.
    5. In the UI, I have dropped AdjustDeltaValuesView data control as ADF Table where CategoryId and CodeId are displaying as af:selectOneChoice.
    6. CategoryId has autoSubmit=true and CodeId has partialTrigger set to component ID of CategoryId.
    7. The LOV inside editable af:table is working fine except one scenario that when user selects same categoryId from the category LOV in the second row, the CodeId LOV will not populate.
    Here's the code snippet of jspx:
            <af:table value="#{bindings.AdjustDeltaValuesView1.collectionModel}"
                      var="row" rows="#{bindings.AdjustDeltaValuesView1.rangeSize}"
                      emptyText="#{bindings.AdjustDeltaValuesView1.viewable ? 'No data to display.' : 'Access Denied.'}"
                      fetchSize="#{bindings.AdjustDeltaValuesView1.rangeSize}"
                      rowBandingInterval="0"
                      selectedRowKeys="#{bindings.AdjustDeltaValuesView1.collectionModel.selectedRow}"
                      selectionListener="#{bindings.AdjustDeltaValuesView1.collectionModel.makeCurrent}"
                      rowSelection="single" id="t1" editingMode="editAll"
                      rendered="false">
              <af:column sortProperty="CategoryId" sortable="false"
                         headerText="#{bindings.AdjustDeltaValuesView11.hints.CategoryId.label}"
                         id="c25">
                <af:selectOneChoice value="#{row.bindings.CategoryId.inputValue}"
                                    label="#{row.bindings.CategoryId.label}"
                                    required="#{bindings.AdjustDeltaValuesView11.hints.CategoryId.mandatory}"
                                    shortDesc="#{bindings.AdjustDeltaValuesView11.hints.CategoryId.tooltip}"
                                    id="soc3" autoSubmit="true">
                  <f:selectItems value="#{row.bindings.CategoryId.items}" id="si3"/>
                </af:selectOneChoice>
              </af:column>
              <af:column sortProperty="CodeId" sortable="false"
                         headerText="#{bindings.AdjustDeltaValuesView11.hints.CodeId.label}"
                         id="c27">
                <af:selectOneChoice value="#{row.bindings.CodeId.inputValue}"
                                    label="#{row.bindings.CodeId.label}"
                                    required="#{bindings.AdjustDeltaValuesView11.hints.CodeId.mandatory}"
                                    shortDesc="#{bindings.AdjustDeltaValuesView11.hints.CodeId.tooltip}"
                                    id="soc4" partialTriggers="soc3">
                  <f:selectItems value="#{row.bindings.CodeId.items}" id="si4"/>
                </af:selectOneChoice>
              </af:column>For example, where it DOES NOT Work
    1. User selects Category A from dropdown from the first row.
    2. code Id dropdown populates with corresponding values in the list based on CategoryId user selected.
    3. user selects Code X from the dropdown.
    4. User selects Category A from the dropdown from the second row.
    5. PROBLEM: In the second row, Code Id dropdown does not populate. Code dropdown is empty.
    Where it works:
    1. User selects Category A from dropdown from the first row.
    2. code Id dropdown populates with corresponding values in the list based on CategoryId user selected.
    3. User selects Category A from the dropdown from the second row.
    4. In the second row, Code Id dropdown populates correctly.
    Where it works:
    1. User selects Category A from dropdown from the first row.
    2. code Id dropdown populates with corresponding values in the list based on CategoryId user selected.
    3. user selects Code X from the dropdown.
    4. User selects Category B from the dropdown from the second row.
    5. In the second row, Code Id dropdown populates correctly.
    Has anyone come across this scenario? It's a very weird problem.
    I hope I have explained this well. If it's not clear please let me know.
    Edited by: Shah23 on Jan 14, 2013 6:42 PM
    Edited by: Shah23 on Jan 15, 2013 9:09 AM

    Hi,
    Always mention your JDev version.
    Try modifying your VOs as explained in this blog and see if it works fine : https://blogs.oracle.com/aramamoo/entry/how_to_create_multi_level
    -Arun

  • Cascading lovs in Jdeveloper  R2

    on Jdev R2.
    I was doing several different Test with Jdev R2 regarding to cascading Lov and lovs components.
    here are results.
    lets split them in two flavors.
    I. Forms.
    a) cascading lovs works fine only if you use : input text item with lovs. (this one works fine even if you do not set autosubmit on the master and partial trigger on dependent lovs, .......cool)
    b) if you choose selectOneChoise, "what is really nice for short list" it does not work. not even if you set autosubmit and partial trigger.
    II. af:table
    a) on editing mode: editAll
    * using input text with lov works (you do not need to set autosubmit/partial triggers) but every time when you select a value from a list, an ugly error araise saying : field1 is required. field2 is required...to all require attributes (you can work after click)
    * using selectOneChoise did not work. after you select the first lov the next lov is surrounded by red square and never get refreshed.
    b) on editing mode: clickToEdit :
    this is really cool and fast, but cascading lovs does not work at all. not even input text with lovs
    has anybody any feedback/workaround/idea on this one, or should we wait until these bug get fixed, hopefully in the new release.
    also I was wondering what is the best approuch to execute some java code on load/unload.?
    thank you for any help.
    Luis

    to call java on load use af:clientlistener along with af:serverlistener.. use the type as load
    http://blogs.oracle.com/jdevotnharvest/entry/how-to_call_server_side_java_from_javascript
    or use the beforephase and afterphase property of f:view, refer navaneeth code here
    popup on page load using managed bean, using jdev-11.4
    use af:document's onunload property for unloading event and java calls

  • Cascaded LOV loose value when pooling disabled

    Hi All,
    I am using jdev 11.1.1.5
    my scenario is i have search VO with transient attributes.Most of attribute are LOV using accessor.
    Few of LOV are dependent on each other. When i am running by enabling pooling true.it is working fine.
    But when pooling disabled, cascaded LOV are not persisting value in the VO. It is happening only for dependent LOVs . I am not sure  why is it so.?
    I am creating a new row of Search VO usng Create Method of VO operation.Should i try anything else?
    Is anyone faces this issue earlier?  any suggestion to handle this. All attribute are passivated and VO have key attribute.
    Please suggest?

    Hi Frank,
    Well all LOV are transient attribute.Problem is this - Everything working with AMPooling enbaled.But when AMPool disabled then only attribute whose value are depend on other LOV are not persist or loose.
    Yes they are marked passivate. and i also override afterRollback and beforeRollback in all ViewObjectImpl.java with commenting super call.
    Seems , variable are setting by bind variable are not passivated the value. I am not sure, is it some strange behavior or i am doing anything wrong.
    What you suggest  to investigate further more on this?
    Regards
    Vinay

  • How to use a cascading LOV as a Web Services Consumer?

    How to use a cascading LOV as a Web Services Consumer?
    We are trying to populate a prompt programmatically.
    Our program is a Web Services Consumer.
    As an example we use Island Resorts Marketing
    The cascading LOV for City is
    Country -> Region -> City
    The City object is key-aware to the customer table
    The query is
    Customer | Revenue
    (where) City = [prompt]
    In order to make the key-awareness work, we must select the value (rowIndex) from the LOV
    When we run our program below, the LOV for City is not populated, as expected since we must first select the Country, then the Region.
    The code snippet below shows that the LOV for Country is populated. We have no idea how to go from there.
    Any hint will be immensely appreciated.
    Let us know if anything is unclear in the code.
    Source       
    RetrieveMustFillInfo retrieveMustFillInfo = RetrieveMustFillInfo.Factory.newInstance();
            RetrievePromptsInfo retrievePromptInfo = RetrievePromptsInfo.Factory.newInstance();
            retrievePromptInfo.setPromptLOVRetrievalMode(PromptLOVRetrievalMode.ALL);
            retrievePromptInfo.setRefreshReturnedLOVs(true);
            retrievePromptInfo.setReturnLOVOnMustFillPrompts(true);
            retrieveMustFillInfo.setRetrievePromptsInfo(retrievePromptInfo);
            // *-- need the "Refresh" action to get the .promptToBeFilled
            Action[] boActions = new Action[1];
            boActions[0] = Refresh.Factory.newInstance();
            try {
                documentInformation = reportEngine.getDocumentInformation(Integer.toString(infoObject.getID()), retrieveMustFillInfo, boActions, null, null);
                m_Token = documentInformation.getDocumentReference();
            } catch (Exception ex) {
                System.out.println(GetWSError(ex));
                return;
            if (documentInformation.getMustFillPrompts()) {
                PromptInfo[] promptInfoS = documentInformation.getPromptInfoArray();
                for (PromptInfo promptInfo : promptInfoS) {
                    System.out.println(String.format("Prompt '%1$s', hasLOV=%2$s", promptInfo.getName(), (promptInfo.getHasLOV() ? "Yes" : "No")));
                    if (promptInfo.getHasLOV()) {
                        LOV boLOV = promptInfo.getLOV();
                        for (Value boLOVValue : boLOV.getValuesArray()) {
                            System.out.println(String.format(" LOV item '%1$s' RowIndex=%2$s", boLOVValue.getColumnsArray(0), (boLOV.getRowIndexed() ? boLOVValue.getRowIndex() : "")));
                    System.out.println("--End LOV");
                    PromptInfo[] promptInfoS2 = promptInfo.getPromptToBeFilledArray();
                    if (promptInfoS2.length > 0) {
                        PromptInfo promptInfo2 = promptInfoS2[0];
                        System.out.println(String.format(" linked to %1$s", promptInfo2.getName()));
                        if (promptInfo2.getHasLOV()) {
                            LOV boLOV2 = promptInfo2.getLOV();
                            for (Value boLOVValue : boLOV2.getValuesArray()) {
                                System.out.println(String.format(" LOV item '%1$s' RowIndex=%2$s", boLOVValue.getColumnsArray(0), (boLOV2.getRowIndexed() ? boLOVValue.getRowIndex() : "")));
                            System.out.println("--End LOV");
    Result
    Prompt 'Enter value(s) for City:', hasLOV=Yes
    --End LOV
    linked to Enter value for Country of origin
    LOV item 'Australia' RowIndex=6
    LOV item 'France' RowIndex=2
    LOV item 'Germany' RowIndex=4
    LOV item 'Holland' RowIndex=7
    LOV item 'Japan' RowIndex=5
    LOV item 'UK' RowIndex=3
    LOV item 'US' RowIndex=1
    --End LOV

    Hi,
    Refer SAP Note 1278947. You would require a Service Market Place logon to access this article.
    Let me know if this helps.
    Regards,
    Shreyans Surana

  • Cascading LoVs in Apex 4 based on a shuttle box

    I've set up cascading LoVs based on a shuttle box. When values are moved to the right-hand side of the shuttle box, the cascaded LoV items have their existing values cleared.
    Is this a bug? Is there a fix or a workaround?

    Hi again,
    I made an unconditional process, sequence 1, but the only
    thing working is the :P11_message is filled.
    BEGIN
    htp.prn('<script>alert(''Two is more then one'', Ok)</script>');
    htp.prn('<script language="JavaScript" type="text/javascript">alert(''TEST'')</script>');
    htp.p('<script>alert(''Two is more then one'', Ok)</script>');
    htp.p('<script language="JavaScript" type="text/javascript">alert(''TEST'')</script>');
    htp.p ('javascript:confirmDelete(htmldb_delete_message,''TEST'');');
    htp.prn ('javascript:confirmDelete(htmldb_delete_message,''TEST'');');
    htp.print ('javascript:confirmDelete(htmldb_delete_message,''TEST'');');
    htp.p('TEST');
    :P11_MESSAGE := 'TEST';
    end;
    Does any one have more suggestions.
    Hugo

  • Cascading LOV in a Tab Form Help

    version 4.0.2.00.07
    Hello,
    I've aquired an application that was written by someone else. I have a Tab Form that needs a Cascading LOV. There is code already in place, but I have questions about it that I'm hoping someone can help.
    There's a LOV called Product Group that has an onChange in the Element Attributes:
    onchange="f_load_platform(this.value,#ROWNUM#);"In the HTML Header is a javascript function:
    function f_load_platform(p_pg_id, p_rownum){
       if (p_pg_id) {
          v_new_list = html_GetElement('f04_'+ f_zero_pad(p_rownum,4));
          v_curr_value = v_new_list.value;
          var get = new htmldb_Get(null,&APP_ID.,'APPLICATION_PROCESS=Get_Platform_From_Product_Group',0);
          get.add('P21_PRODUCT_GROUP_ID_PARAM',p_pg_id);
          gReturn = get.get();
          if (gReturn) {
             // Separate each combination set of values
             var NameArray = gReturn.split(",");
             // Reset dropdown list by making its length to a needed value
             v_new_list.length = NameArray.length-1;
             for(i=0; i < NameArray.length; i++){
               NameArrayList = NameArray.split("~");
    if(NameArrayList[0] != "") {
    v_new_list[i].value = NameArrayList[0];
    v_new_list[i].text = NameArrayList[1];
    if(NameArrayList[0] == v_curr_value) {
    v_new_list.selectedIndex = i;
    else {
    v_new_list.length = 0;
    function f_zero_pad(num,count)
    var numZeropad = num + '';
    while(numZeropad.length < count) {
    numZeropad = "0" + numZeropad;
    return numZeropad;
    The Add Row button is set to:
    Action: Redirect to URL
    Execute Validations: Yes
    URL Target: javascript:addRow();
    When I debug the javascript the variable v_new_list shows as false. I can also see that p_rownum variable in the javascript function contains 0.  I don't know if that's correct.
    Can someone help me with why this function does not return the values into the select list for the f04 item?
    What other information can I provide?
    Thanks,
    Joe                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    Scott,
    Thank you for replying.
    While debugging the javascript, I can see that gReturn does contain a string of the Platforms for that Product Group ID.
    What I don't know if it's correct is the call to: v_new_list = html_GetElement('f04_'+ f_zero_pad(p_rownum,4));
    When I view source I see that f04_0000 is the Platform select list item.
    <td headers="PLATFORM_ID" class="t13data"><label for="f04_0000" class="hideMe508">PLATFORM_ID</label><select name="f04"  id="f04_0000">...I don't know why the previous developer wrote a function to append the four zero's to the item, but I get the same result when I take out the padding call and replace it with the four zero's so the statement looks like this: v_new_list = html_GetElement('f04_0000');
    I still can see that v_new_list is undefined in the debugger. Any other ideas?
    Thanks,
    Joe

  • Apex 4.2.1 - mobile theme display bugs and Cascading LOV bug

    I've setup a test at http://apex.oracle.com/pls/apex/f?p=35331 - username/password is test/test
    Simple page to show some issues I'm running into. Wondering if work-arounds exist or if a patch would be available before we'd go live.
    First and second issue are the same I believe. So - a normal text box (label1) looks fine. But, Label2 is a Display only item and Label3 is a read-only select list item. As you can see - both of the values appear smack dab right beside the label and not in line with the other fields. It's totally ugly and not usable as is. I've tried to move this over, but the label goes with it. I can see no way of doing it, but wondering if there's some hack I can put in to solve it...
    The last issues is with a cascading LOV. Simple table setup. Static on the first, the second a simple query that filters on the first. If you set the select list to Value Required and not to display null values - then when you click on the Second List button - it just hangs. The page is unusable. I suspect this has to do with the null or something. But - doesn't appear to matter if anything is chosen. Note - if the list is large - which I think then uses a different UI control, this is fine. Only when one of the lists is small does the issue reproduce.
    Any workarounds or fixes? Any ideas?
    Thanks

    Hi,
    I would suggest to not mix different questions and a thread for each of them. Makes it easier for others to follow.
    About your problem with the cascading LOVs, it appears that this is/was a bug in jQuery Mobile which we use under the hood. I was able to reproduce the problem with APEX 4.2.1 using jQM 1.2.0, but was not able to reproduce it with APEX 5.0 which will use jQM 1.3.0RC1 or higher. The problem occurs if a select list is empty.
    There are different workarounds available:
    1) set the attribute "HTML Form Element Attributes" of P1_CLOV_2 to data-native-menu="false"or
    2) set the attribute "Display Null Value" of P1_CLOV_2 to Yes and "Null Display Value" to - select - (or something similar). The "Value Required" = Yes will still guarantee that a value has to be picked. Having the extra null entry will guarantee that the select list always contains an entry, that seems to workaround the bug in jQuery Mobile.
    I have filed bug 16355963 - jquery mobile: empty select list causes javascript error
    to track that this is definitely fixed in APEX 5.0.
    Regards
    Patrick
    My Blog: http://www.inside-oracle-apex.com
    APEX Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • Bug in FB 4.7 when setting verbose-stacktraces to True

    Hello guys,
    When setting the verbose-stacktraces to true without setting the debug parameter to true, it has no effect. When I get a stacktrace it doesn't include any line numbers as stated on the documentation. I'm currently using Flash Builder 4.7, Adobe Flex 4.6 and Air 4 SDK to develop my mobile application. Also, I'm using the compiler options: -locale en_US -swf-version=23 -verbose-stacktraces=true.
    I need to be able to see the line numbers so I would really appreciate any help on this issue.
    Regards,
    Sebastian

    I also tried with replacing -verbose-stacktraces=true with -compiler.verbose-stacktraces=true as I've seen in some examples but nothing happens.
    Next you have an example of a stacktrace missing the line numbers:
    TypeError: Error #1009
            at components.visual::BaseECView/configureComponents()
            at views.home::Home/createChildren()
            at mx.core::UIComponent/initialize()
            at spark.components::View/initialize()
            at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::childAdded()
            at mx.core::UIComponent/addChildAt()
            at spark.components::Group/addDisplayObjectToDisplayList()
            at spark.components::Group/http://www.adobe.com/2006/flex/mx/internal::elementAdded()
            at spark.components::Group/addElementAt()
            at spark.components::Group/addElement()
            at spark.components::SkinnableContainer/addElement()
            at spark.components::ViewNavigator/createViewInstance()
            at spark.components::ViewNavigator/commitNavigatorAction()
            at spark.components::ViewNavigator/commitProperties()
            at mx.core::UIComponent/validateProperties()
            at mx.managers::LayoutManager/validateProperties()
            at mx.managers::LayoutManager/doPhasedInstantiation()
            at mx.managers::LayoutManager/doPhasedInstantiationCallback()
            at flash.utils::Timer/tick()

Maybe you are looking for