Iterator Refresh

Hi,
I've created a rich client ADF App. My question is how can I refresh programaticaly an iterator?
cheers,
Bernhard

Hi,
you do not have enough information to have a better answer. what is the jdev version?
you can execute the iterator from your managed bean like below to refresh it.
DCBindingContainer bindings = (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
DCIteratorBinding iter = bindings.findIteratorBinding("ReceiptsIterator");
iter.executeQuery();~Abhijit

Similar Messages

  • Lov iterator refresh issue

    HI friends!
    I'm using JDeveloper 11g
    I've got a problem with a lov attribute in my application.
    I need to implement the following scenario:
    I have an adf table Licence in my jsf page. One of the table columns includes a lov attribute which values must be selected from a list box (a list data source is LicenceProducer lov view object).
    If there is no required licence producer in the drop down list we can trigger a pop up dilaog (kind of lov dialog) and create a new one row in the data source iterator.
    Then the required attribute value of the newly created row must be passed to the list in the source jsf page and become a currently selected value for the lov attribute of the Licence VO.
    SO i've have implemented almost the whole scenario:
    1. created an appropriate lov attribute in Licence VO with LicenceProducer VO as a list data source
    2. created a bounded adf task flow which is resonsible for displaying the pop up lov dialog with all insert/commit/return new value functionallity.
    Everything works just greate except that the lov iterator is never refreshed after returning from the pop up dialog.
    The updated content of the list box is only seen after reloading the source jsf page. Setting partial page rendering (for the Licence adf table) on returning from the pop up dialog does't work.
    I saw a number of posts on this issue but never found any good solutions.
    I think that i must somehow get an access to the lov iterator (data source vo) wich is not the same as the base LicenceProducer view object and refresh it programmatically.
    PS. if i brought my issue in a not sufficiently clear way. please answer the quite simplier question. Is it possible somehow to add a lov functionallity with the possibility to add new rows into lov iterator?
    Thanks in advance. Alex.

    Thanks friends.
    It is so greate to see somebody notice your question and even have the similar problem.
    First to Paul
    1. Yes I have a model driven LOV, i.e. i defined the lov functionalty for the attribute in a VO.
    2. I'm using JDeveloper 11g as you might be using.
    3. Actually i'm afraid i have not fully understood your approach with a row impl class. AS i could notice there were no worthy changes added into the row impl class after i had redefined VO's attribute to use a lov view object.
    it would be greatly appreciated if you let me know more detail about your solution.
    By the way i have noticed one interesting thing as I was experimenting with my issue. It turned out that the lov iterator refreshes just excellent on returning from a pop up "manually created lov dialog" after i click a rollback button of the data control
    where the VO iterator containing the attribute with the lov functionalty exists. Give it a try and you'll see, no other standard operation button gives the same effect!!!!! I realized it accidentially myself.
    To Hasim
    if i understand you right your assumption is to refresh a row iterator which is the basis for the lov attribute and then refresh a page element where the lov attribute has been dropped?
    If so than i've tried it because this is the first thing comes into mind. But it doesn't work, i think that this basis iterator we select for the list of values of the required attribute in VO is not the same as a real list Datasource iterator...
    If i understood you wrong please give me know and explain please your approach. Your opinion is interesting for me.
    I address our experts ones again with a rather simplier question. Is it possible to create a model driven lov attribute where it would be possible to insert new rows into the list of values during the ongoing user session?
    Alex.

  • Iterator refresh after commit

    Hi,
    I have three tabs in my page , and in each tab , i have separate taskflows.
    The first tab taskflow contains a jsff which has lets say master table iterator i.e departments iterator.
    In the second tab, i have a table based on read only query, but when i click on add button, i will be inserting in to detail VO (employee VO) and using postChanges() .
    so that read-only query based table gets the new data.
    now when i click on save button and commit , the iterators in taskflows of tab1, tab2 are pointing to first record rather than the current record.
    1) even i tried with having an action for the 'save' button and navigating to method activity which sets the iterator to current row.
    When i am returning back to taskflow,i am still seeing the iterator pointing to first record rather than the current record i intend to see.
    could anybody tell me why iterator is pointing to first row after commit()
    i don't have 'refresh' -- if needed for taskflows. its default.
    for transactions, datacontrols, its default for my taskflows.

    I generally retain the previously selected row using the following code in my VOImpl after every executeQuery().
    public void executeQuery()
    // current row key if any
    Key currentRowKey = null;
    Row currentRow = getCurrentRow();
    if ( currentRow != null )
    // get current row key
    currentRowKey = getCurrentRow().getKey();
    // super call
    super.executeQuery();
    if ( currentRowKey != null )
    // set current row now using previously stored key
    Row[] rows = findByKey( currentRowKey, 1 );
    if ( rows != null && rows.length == 1 )
    setCurrentRow( rows[0]);
    }

  • Keeping current record after refreshing iterator (iterator refresh)

    Greetings,
    I'm using the following code to refresh a master iterator, so that when data is saved\edited it is automatically refreshed in the user interface. I'm using BC for the model layer.
    public String commandButton_save_action() {
    BindingContainer bindings = getBindings();
    OperationBinding operationBinding =
    bindings.getOperationBinding("Commit");
    OperationBinding operationBinding2 =
    bindings.getOperationBinding("Execute");
    System.out.println("Now @ Global bean ... going to ...");
    operationBinding.execute();
    operationBinding2.execute();
    // It should be a error page
    if (!operationBinding.getErrors().isEmpty()) {
    return null;
    // Refresh main view object
    DCBindingContainer bc =
    (DCBindingContainer)FacesContext.getCurrentInstance().getExternalContext().getRe
    questMap().get("bindings");
    FirstCareAppModuleImpl fc =
    (FirstCareAppModuleImpl)bc.findDataControl("FirstCareAppModuleDataControl").getD
    ataProvider();
    ViewObject vo_SitSocProf = fc.findViewObject("EpisodiosMain");
    vo_SitSocProf.executeQuery();
    System.out.println(" All done. Ciao ");
    return "back";
    I just want to refresh data from database and still show the current record. This is always taking me to the first record in the iterator.
    The issue is: How to show the current record after the refresh? If the above
    code is not correct, or not the most adequate, please don't hesitate and tell
    me.
    Thanks.

    You can do this as follow:
    1) In your ApplicationModule (e.g ScottAM) define function:
    public void refreshView(){
    getMainViewObject().executeQuery();
    2) Expose this function to client
    3) In your manage bean define:
    public String commandButton_save_action() {
    String dc = "#{data.ScottAMDataControl.dataProvider}";
    FacesContext ctx = FacesContext.getCurrentInstance();
    ValueBinding vb = ctx.getApplication().createValueBinding(dc);
    ScottAM am = (ScottAM)vb.getValue(ctx);
    am.refreshView()
    return null;
    Note, that this solution will set you on the first row after invoke.

  • Variable Iterator Refresh Problem

    Hi,
    I have two method in application module that I dropped on a jspx page as two buttons and the method returns as af:outputtext on that page. When I press one of the buttons to invoke the related method, it clears the result of the other method. Both outputtexts are binded to same variable iterator on the binding site. There seems no relation between these two outputtexts other than being binded to same variable iterator. So why invoking one method clears the result of the other method? Is variable iterator is refreshed everytime a method is invoked? Any help is appreciated.
    Best Regards,
    Salim

    Hi,
    the variable iterator is refreshed as a whole. The binding container is in request scope, which also guarantees that the iterator survives. So the work around is to execute both of the methods from a single button
    Frank

  • Iterator Refresh Question

    Hello there,
    i have a case where i have a search screen that is based on a table , let's say employees, the results is an ADF Read Only table. I brought the department name from the deparments View object to the employees View object so i can see the name as well as the id in my Results. Now i have a button Create , when i create an employee and enter a department id and then press save , the page results to the search screen where the new record i created appears with the department id but without the department name.
    My primary thought was to set the refresh iterator property but i'm not being able to solve my problem.
    Anyone can help me ?

    In your backing bean, if you have access to the binding container, run something like the following:
    DCIteratorBinding iter = (DCIteratorBinding)bindings.get("MyIteratorName");
    iter.execute();You can gain access to the binding container by doing the following:
    1. Define an instance-level field in the backing bean:
    private BindingContainer bindings;2. Add a getter and setter for the field:
        public BindingContainer getBindings() {
            return bindings;
        public void setBindings(BindingContainer bindings) {
            this.bindings = bindings;
        }3. Add a managed-property to the definition of your backing bean in faces-config.xml:
      <managed-bean>
        <managed-bean-name>myBackingBean</managed-bean-name>
        <managed-bean-class>com.acme.backing.MyBackingBean</managed-bean-class>
        <managed-bean-scope>request</managed-bean-scope>
        <managed-property>
          <property-name>bindings</property-name>
          <value>#{bindings}</value>
        </managed-property>
      </managed-bean>If you don't want to add a managed property to the bean, you can locate the BindingContainer like this:
    FacesContext ctx = FacesContext.getCurrentInstance();
    Application app = ctx.getApplication();
    ValueBinding bind = app.createValueBinding("#{bindings}");
    BindingContainer bindings = (BindingContainer)bind.getValue(ctx);

  • ADF Mobile _back without iterator refresh (11.1.2.3.0)

    Hi Forum Group,
    In ADF Mobile, does anyone know how to prevent the iterator from refreshing if using the back built-in? Let me try to explain the scenario. I have an amx page with that has two results from two separate rest web services. Both of these rest web services are called with a URLDataControl via pageFlowScope variables assigned within the pageDef. The second result depends upon the result of the first for it to be called. All of this is not a problem as I'm navigating with taskflows and methods and can, therefore, properly populate the parameters (pageFlowScope variables) and call the web services. If, however, I want to iterate with previous and next (moving the rows from the default 0 row index while properly re-querying the second dependency) and then further navigate to a detail page, using the back causes the iterators to refresh (which would be out-of-sync if I did not use a taskflow method to reset everything). I would like, however, the state to remain the same on the "header" page, rather than requerying everything and having to have the user move to the appropriate row that they were wanting again. All I simply need to do is tell the iterator (or URLDataControl) to not requery if _back is used.
    Any ideas?

    Hi Frank,
    Thank you for your response. Is there a way then to execute a piece of code right before the rendering of the page, so that this "current row" can be set? Like in web adf development, the binding to the backing bean can be added to any component and the set serves as an initializer (where code can be added to process things like this).

  • ADF CreateInsert and Iterator refresh control

    Hi
    JDEV Version : 11.1.1.6
    I have a scenario where i have dragged and dropped updatable EMPLOYEESVIEW as a form on my page with fields EMP_ID (Invisible on JSPX page)and EMP_NAME.
    and have buttons called ADD EMPLOYEE and SAVE.
    I enter the Value to EMP_NAME input Text box and Click on "ADD EMPLOYEE" button
    On click of  ADD EMPLOYEE button i m Setting the value of EMP_ID through java method and invoking  createInsert Operation like this.
    And i Have set Immediate property of CreateInsert button as True also "ADD EMPLOYEE" button has immediate Property set to true, since i want to show User entered EMP_NAME text on the screen bcos i need to give use an option to Edit.
                BindingContainer bindings =
                    BindingContext.getCurrent().getCurrentBindingsEntry();
      BindingContext bctxtree = BindingContext.getCurrent();
                  BindingContainer bindingtree = bctxtree.getCurrentBindingsEntry();
                  List attributelisttree = (List)bindingtree.getAttributeBindings();
                  Iterator itrtree = attributelisttree.iterator();
                                 while (itrtree.hasNext()) {
                                         AttributeBinding attrbind = (AttributeBinding)itrtree.next();
                       String label = attrbind.getName();
                                         System.out.println("lable"+label);
                       if(label.equalsIgnoreCase("EMP_ID")) {
                                           Boolean flag =
                              attrbind.processNewInputValue(variable);
                           attrbind.setInputValue(empid);
                           fetchVal=(Object)attrbind.getInputValue();
                            System.out.println(""+fetchVal);
    here i m invoking the Operation CreateInsert and Though I would have inserted the value of EMP_ID programmatically as soon as i click on CreaetInsert/ Invoke CreateInsert Operation the Binding EMP_ID becomes Empty.
    Because of which when i say "Commit" It throws me an error saying "Null cannot be inserted into EMP_ID since its primary Key"
    How to retain the Value of EMP_ID binding?
    Is it anything to do with the refresh condition which i m suppose to set for EMPLOYESSVIEWITERATOR????
    Help
    Thanks

    This is the java class
        public String onClick(ActionEvent aet) {
                            variable= (getting empid)
                    DCBindingContainer bindingsImplafter= (DCBindingContainer) bindings;
                                                            DCIteratorBinding dciterafter = null;
                    dciterafter.getRowAtRangeIndex(0).setAttribute("IntegrationId", variable);
                           dciterafter.getRowAtRangeIndex(1).getAttribute("EMP_ID"));
    dciterafter.getRowAtRangeIndex(0).getAttribute("EMP_ID"));
          dciterafter.getRowAtRangeIndex(0).getAttribute("EMP_NAME"));
    dciterafter.getRowAtRangeIndex(1).getAttribute("EMPNAME"));
                    RichCommandButton t = (RichCommandButton)genericUtility.findComponentInRoot("createinsertbutton1");
                         ActionEvent actionEvent = new ActionEvent(t);
                         System.out.println("  ActionEvent actionEvent = new ActionEvent(component);");
                         actionEvent.queue();
            return null;
    Tried setting the getCurrentRow too!!
    my jspx page:
        <af:panelFormLayout id="pfl1">
        <af:inputText value="#{bindings.EMP_ID.inputValue}"
                            label="#{bindings.EMP_ID.hints.label}"
                            required="#{bindings.EMP_ID.hints.mandatory}"
                            columns="#{bindings.EMP_ID.hints.displayWidth}"
                            maximumLength="#{bindings.EMP_ID.hints.precision}"
                            shortDesc="#{bindings.EMP_ID.hints.tooltip}"
                            id="it44">
                <f:validator binding="#{bindings.EMP_ID.validator}"/>
              </af:inputText> 
              <af:inputText value="#{bindings.EMP_NAME.inputValue}"
                            label="#{bindings.EMP_NAME.hints.label}"
                            required="#{bindings.EMP_NAME.hints.mandatory}"
                            columns="#{bindings.EMP_NAME.hints.displayWidth}"
                            maximumLength="#{bindings.EMP_NAME.hints.precision}"
                            shortDesc="#{bindings.EMP_NAME.hints.tooltip}"
                            id="it4" >
                <f:validator binding="#{bindings.EMP_NAME.validator}"/>
              </af:inputText>
    </panelFormLayout>
      <af:commandButton actionListener="#{bindings.CreateInsert.execute}"
                                text="CreateInsert"
                                disabled="#{!bindings.CreateInsert.enabled}"
                                id="cb1ci" immediate="true"  visible="false"/>
                                     <af:commandButton actionListener="#{bindings.Commit.execute}"
                              text="Commit" disabled="#{!bindings.Commit.enabled}"
                              id="cb2" />
           <af:commandButton text="+ Click to Add" id="cb1"  actionListener="#{javaclassname.onClick}"  immediate="true">
    On click of "+ Click to Add" button i m setting integration id and i click the button createInsert pro grammatically and in the front page if i call commit it says null value cannot be inserted into INTEGRATION ID.
            dciterafter.getRowAtRangeIndex(1).getAttribute("EMP_ID")); gives me null hence the EMP ID in the jspx page hold empty value in the front end too.
    How to handle this?

  • Iterator Refresh Issue

    Hi,
    I'm seeing a weired behaviour when working with Iterator.
    Here are the thing what i have done & the problem that im facing with Iterator.
    Things what i have done
    ===============
    1.I have a DTO and a java class named ServiceDelegate in my model. And i have defined a method inside ServiceDelegate with the return type of DTO.
    2.And exposed this ServiceDelegate as Data Control.
    3.Using this DataControl, dragged the return type of the method(which is nothing but DTO) as a Search Form with a Submit button on to a jsff.
    4.Now, when the user enters the data for first time...the DTO is getting populated and able to retrieve the information which has been entered by the user into ServiceDelgate properly.
    5.This is fine.
    6.Now,if user tries to modify the data which was already entered .... and clicks submit button. This time, the modified data is not coming into the ServiceDelegate.
    Finally, i'm able to get the data from the Iterator(DTO) only for the first time. It is not working for the second time and further. If you open the page once again as fresh, it works fine.
    Does any one of you have any idea about this, why it is behaving so.
    Here is the code from my page Def.
    <methodIterator id="*borrowerDetailIterator*" Binds="editBorrowerDemographics.result" DataControl="BorrowerServiceDelegate" RangeSize="25"
    BeanClass="org.tgslc.defaultmanagement.domain.Borrower"/>
    <accessorIterator MasterBinding="*borrowerDetailIterator*" Binds="person"
    RangeSize="25" DataControl="BorrowerServiceDelegate"
    BeanClass="org.tgslc.defaultmanagement.domain.Person"
    id="personIterator"/>
    <accessorIterator MasterBinding="*borrowerDetailIterator*" Binds="address"
    RangeSize="25" DataControl="BorrowerServiceDelegate"
    BeanClass="org.tgslc.defaultmanagement.domain.PersonAddress"
    id="addressIterator"/>
    <accessorIterator MasterBinding="*borrowerDetailIterator*" Binds="phone1"
    RangeSize="25" DataControl="BorrowerServiceDelegate"
    BeanClass="org.tgslc.defaultmanagement.domain.PersonPhone"
    id="phone1Iterator"/>
    <accessorIterator MasterBinding="*borrowerDetailIterator*" Binds="phone2"
    RangeSize="25" DataControl="BorrowerServiceDelegate"
    BeanClass="org.tgslc.defaultmanagement.domain.PersonPhone"
    id="phone2Iterator"/>
    <accessorIterator MasterBinding="*borrowerDetailIterator*" Binds="email1"
    RangeSize="25" DataControl="BorrowerServiceDelegate"
    BeanClass="org.tgslc.defaultmanagement.domain.PersonEmail"
    id="email1Iterator"/>
    <accessorIterator MasterBinding="*borrowerDetailIterator*" Binds="email2"
    RangeSize="25" DataControl="BorrowerServiceDelegate"
    BeanClass="org.tgslc.defaultmanagement.domain.PersonEmail"
    id="email2Iterator"/>
    Regards,
    Kiran Konjeti

    Hi Amit,
    Thanks for the post. But you are too late. :) . I already tried that and it was working fine as expected. Anyhow, would like to mark your answer as Correct, because your post it correct.
    Thanks again.
    Regards,
    Kiran Konjeti

  • Iterator refresh issue : best approach?

    Hi,
    I have a java based bean data control which has a list to be displayed as a table.
    I also have a method called addObject() which actually adds to the list.
    Now to get the newly added row one of the ways was to call the "Execute" opetation binding in the action listener which i want to avoid.
    We may have to do this in quite a few places.
    Finally i found a declarative way using contextual events to achieve this.
    I raise a contextual event from the button which executes the addObject() method.
    Added a subscriber to this event with the standard "Execute" operation available for the list model as the handler.
    The table gets refreshed fine now.
    Will this approach have any issues like performance or anything else?
    Cheers,
    Raj

    As I understand, you are refreshing a simple table on addObject button click. Why not use PPR on table to listen to addObject button click by setting partialTrigger property of the table component to the button..? In my opinion, contextual events comes handy when you are trying to communicate across different page fragments/regions(task-flow).
    Did I miss something in your usecase..?
    regards,
    ~Krithika

  • How to refresh an iterator with PPR set to none after task flow operation?

    Using JDev 11.1.2.1.0.
    Doing the sample here: http://www.gebs.ro/blog/oracle/oracle-adf-creating-an-addedit-bounded-task-flow-using-a-new-transaction/
    For this to work, you've got to set your page iterator/executable's ChangeEventPolicy to "none". Otherwise, you can't set the selected row correctly due to the iterator refreshing on commit.
    I'm trying to extend this example to include a Delete operation setup in the task flow. However, I can't figure out how to refresh the page's iterator to display the updated results. The Delete doesn't run in a dialog so it doesn't invoke the calling button's returnListener.
    Any ideas?
    Thanks,
    Will

    Thank you for your response.
    I'm trying to call the delete operation from a task flow. Once the delete occurs, the page should somehow call a refresh on the iterator displayed. However, since the iterator can not have PPR set, the refresh doesn't happen automatically. Additionally, since the delete doesn't happen as part of a dialog window, the returnListener for the calling button does not fire.

  • VO LOV (and af:selectOneChoice) refresh. Can it be automatic?

    Hi!
    I'm using the build: JDEVADF_11.1.2.2.0_GENERIC_120418.2212.6183.1
    I defined an attribute in a ViewObject to use a LOV.
    When the page which uses the such attribute is loaded the current database records/information are loaded with no problem.
    But if there is some change in the data from where the LOV comes, it does not reflect in the items available (neither if the underlying record was deleted/inserted/updated). No matter what I do: reload the page, navigate to other and come back and so forth, the only way to refresh the combo box is starting a new session.
    Looking at the pagedef I could not find the iterator used to build the list of items in the combo box, but while debugging the page I could find a iterator (in fact a JUIteratorBinding) that had the name of the underlying view (from where the items to populate the combo box come) and an additional "List_XX" in the end of the name where XX is a number that varies with no apparent logic sometimes is 2, sometimes is 13, sometimes is 87 and so forth. So I guessed ADF generates it automatically.
    I wrote a small function linked to a button and called from there the iterator refresh method.
    Once this was done the refresh is processed and everything looks fine for all operations in the underlying data (insert/update/delete).
    While I found a partial solution, it looks too much complicated.
    What I mean is: Do we need to have all this amount of work to get a simple combo box refreshed?
    Is there any approach that is simpler?
    I can't believe that a framework like ADF don't have an easier way to solve this use case, but I read the documentation and searched a lot this forum and found no solution, although many posts helped me in building this "solution" (did I miss something?).

    Duplicate af:selectOneChoice refresh problem

  • Re-Query Iterator is not working (I tried everything)

    Hi,
    I'm trying to re-query an iterator with not luck, the first time it works well, but the second time it return the same data, this is the actual code:
        private static Row[] getSystems(String releaseId) {
            BindingContainer bc = BindingContext.getCurrent().getCurrentBindingsEntry();       
            OperationBinding op = bc.getOperationBinding("ExecuteWithParams3");
            op.getParamsMap().put("param_id", paramId);
            op.execute();
            DCIteratorBinding iter = (DCIteratorBinding)bc.get("Iterator");
            Row[] mappedSystems = rowSetItertor.getAllRowsInRange();
            return mappedSystems;
        }I tried things like this:
    In the property inspector set the iterator's refresh property to never never and cache to false false, the result its that the first time everything is fine, second time I don't have more info at the iterator.
    Call this metods:
    // Nothing
    iter.executeQuery();
    // It clears the data, but after that I can't obtain data from db.
    iter.getViewObject().clearCache();
    // Nothing
    iter.getViewObject().resetExecuted();
    // Nothing
    iter.executeQuery();
    iter.refresh(DCIteratorBinding.RANGESIZE_UNLIMITED);
    // Nothing
    iter.setRefreshOption(0);
    //Nothing
    iter.setRefreshOption(8192);
    // Tried to close the iterator set, second time it doesn't contain anything.
    RowSetIterator rowSetItertor = iter.getRowSetIterator();
    Row[] mappedSystems = rowSetItertor.getAllRowsInRange();
    rowSetItertor.closeRowSetIterator()Basically when the user clicks a button this code is call with the appropriate parameter, this must retrieve a row's list. This code is called in a ManageBean with TaskFlow scope.
    Any help would be great, thanks in advance.
    -Daniel
    P.S JDeveloper 11.1.1.4.0 & I also tried all the suggestions listed in this thread: Refresh Vo Iterator
    Edited by: 910260 on Jan 25, 2012 2:49 PM

    I did this but nothing (because I need to send the "param_id").
    private static Row[] getSystems(String releaseId) {
            BindingContainer bc = BindingContext.getCurrent().getCurrentBindingsEntry();       
            OperationBinding op = bc.getOperationBinding("ExecuteWithParams3");
            op.getParamsMap().put("param_id", paramId);
            op.execute();
            DCIteratorBinding iter = (DCIteratorBinding)bc.get("Iterator");
            iter.executeQuery();
            Row[] mappedSystems = rowSetItertor.getAllRowsInRange();
            return mappedSystems;
        }The properties for the iterator were Refresh = referred (default) and Cache Results = true. // Nothing
    And Refresh = never and Cache Results = false // Nothing.
    Edited by: 910260 on Jan 25, 2012 2:48 PM
    Edited by: 910260 on Jan 25, 2012 2:52 PM

  • [UI Shell] Tab Iterators being refreshed un-necessarily

    Hi,
    I have a noticed a strange but a grave problem in the UI Shell. When I open BTFs in my UI shell implementation say BTF-1, BTF-2 ,BTF-3; and I try creating a new record(any actoin) in BTF-3, then I notice that the iterators/bindings of BTF-1, BTF-2 along with BTF-3 to be refreshed.
    Any recommendations to stop this propagating behavior.
    Regards,
    Ansuman

    Hi,
    There are some attributes for iterator refresh and refresh condition did you try with them.
    (Select bindings tab in your page then you can see available iterators)

  • Table record is not updated correctly after navigate back from detail page

    I have 2 jspx pages one (page A) has a table displaying the employee record, another one (page B) is used to update the selected employee record. On page A, when selecting a record and clicking the 'Details' button I can be navigaed to pag B on which I can modify the record information in a form component. I have one table column 'teamName' which is binding to a LOV at VO layer and on pageB I am using <af:inputComboboxListOfValues> to show a editable LOV list for this attribute, when I input a new value here and save it, I can go back to page A but the team name for this record shows empty, by querying the database I do find the record updated successfully with the changed value. And when I reloaded the page the record can show the new team name value. Why it is not updated in the employee table when immediately navigating back from page B? I have set the table iterator refresh attribut to "always" but still failed. Can anyone help on this issue? Thanks!!
    BTW, for other columns (not LOV) they are ok, the table can show the changed value correctly.
    Edited by: user774592 on Jul 14, 2011 7:56 PM
    Edited by: user774592 on Jul 14, 2011 9:59 PM

    Thanks for reply!
    I did exactly the same as what you said. I d&d the data control Commit operation on page B to generate a 'Save' commandToolbarButton with the action attribute set to 'save' which is the from outcome for navigating back to page A. Is there any business logic I need to write here? Currently I have no.
    Note: In this case I used an editable LOV, I have a requirment that besides selecting a existing value from the lov, user can also input a new value in the LOV. When going back to page A, I do find the LOV list is updated to contain the new vaule. Just the record in the table shows an empty value instead of the new value. Still do not know why.

Maybe you are looking for

  • Error while deploying log4j example

    Hi, I try to run <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/36085e78-0801-0010-678d-8b4e89ddff3c">this example</a> to establish a bridge from log4j to SAP Logging. It works

  • Backing up documents without Time Machine

    Could someone please explain to me how to back up my pictures without using Time Machine? I bought an external hard drive but when I plug it in, it immediately connects to Time Machine every time. I don't want my entire computer backed up, just pictu

  • Why do 2 diff. undo tablespace required in RAC

    Hi - 1 - I can understand that we do require 2 diff. log files as 2 process can not write on the same redo log files. But I could not understand the logic of using 2 diff. undo tablespaces, when tablespaces can be in shared mode. They what is the rea

  • Updating INVALID status of objects in procedure

    Hi guys. I'm trying to create a procedure to update/recompile all invalid objects. I am having a few issues with the syntax, and was wondering if any of you have done anything like thsi before. I obviously have not. :) Here's teh code: CREATE OR REPL

  • Garageband and Electronic Drum DTXPlorer300

    i have a macbook pro whit garageband 08 installed and i have a electronic drum Yamaha DTXPlorer300, my problem is that i am connecting my drum using a "M-audio Midisport UNO" it is an midi interface (midi-usb)... it is detected by GB but when i play