Refresh a table

Dear all,

I use Jdeveloper 12.1.3.0 with a database of Oracle 12 c.

I created a tree with link that should refresh an ADF Table on the same page.

The Code of Action Bean of the link is:

package psmart.view.gl.bean;

import javax.faces.event.ActionEvent;
import oracle.jbo.ApplicationModule;
import oracle.jbo.RowSet;
import oracle.jbo.ViewObject;
import oracle.jbo.client.Configuration;
import oracle.jbo.server.ViewObjectImpl;
import psmart.model.am.AnalysisAMImpl;
import psmart.model.uview.AnaAccountBalVOImpl;
import psmart.view.gl.common.ADFUtil;


public class SetAnalysisCode {
    public SetAnalysisCode() {
    }
    public void GetTree(ActionEvent actionEvent) {
        String anaCode;
        anaCode = ADFUtil.evaluateEL("#{bindings.AnalysisCode1}").toString();
        String amDef = "psmart.model.am.AnalysisAM";
        String config = "AnalysisAMLocal";
        ApplicationModule am = Configuration.createRootApplicationModule(amDef, config);
        ViewObject vo = am.findViewObject("AnaAccountBalVO");
        vo.setNamedWhereClauseParam("PANA_CODE", anaCode);
        if (vo.hasNext()) {
            vo.executeQuery();
        }
    }
}

And the SQL code of the ViewObject is:

SELECT A.ACC_CODE, A.DESCR ACC_NAME, SUM(B.DR_LOCAL) - SUM(B.CR_LOCAL) BAL     
FROM PVT.ACC_CHART A, PVT.ACC_ALL_TRANS_D B     
WHERE A.ACC_CODE = B.ACC_CODE     
AND A.CO_CODE = B.CO_CODE    
AND B.ANALYSIS_CODE = :PANA_CODE 
HAVING SUM(DR_LOCAL) - SUM(CR_LOCAL) <> 0      
GROUP BY A.ACC_CODE, A.DESCR     
ORDER BY A.ACC_CODE

Debug and chek the variable anaCode in the java code is correct, so I think that the problem is only to refresh the table with the new value in the variable of liaison PANA_CODE.

Thank you and best regards

Only anaCode

User, let me summarize the replays, you already have (which are partly right) and explain why you do not see the table changes.

First, add a partial trigger to the table of the method won't help you if you use createRootApplicationModule(). That means that it creates a new instance of the model layer. In this new model, you update the AnaAccountBalVO view with the right data for the binding variable. The problem is that the table on the page is connected to a different application module that includes the old data only.

So the addition of a partial trigger not you will get the new data that the new data are not in the module you are using.

To do your use case, you must do the following:

(1) create a custom method in the application module object or view that you pass the PANA_CODE as a parameter.

(2) the method sets the parameter to the parameter bind in the vo and calls executeQuery to get new data

(3) expose this method in the interface of the client of the application module or the view object

(4) add an actionBinding to the method in the pageDef. An easy way to do this is to drag the method of control of data on the page and drop it in the button. then switch to source mode and remove the code for the button

(5) set the parameter of the method to the link #{bindings. AnalysisCode1} (be said in passing shouldn't be #{bindings.) AnalysisCode1.inputValue})

(6) now, if you bind this method to the key.

There is a sample on how to do to three ways to remove a line all to browse a set of lines. JDev & ADF Goodies (Solution 2)

This way you don't need any code of java!

Timo

Tags: Java

Similar Questions

  • Refresh the table after popup

    I have a popup that the user gets when they click my button 'Add '. The form inside the pop-up window is linked to the same database as the table.
    The table that his partialTrigger is configured for the popup and when I opened the popup, I see the new row in the table which is ok. However, when I click the ok button in my popup and data are saved in the database (with a commit), the table does not get updated.
    How can I do so?

    These are fragments of my code:

    the table:
    <af:table value="#{bindings.RekeningFullVO1.collectionModel}"
                                var="row"
                                rows="#{bindings.RekeningFullVO1.rangeSize}"
                                emptyText="#{bindings.RekeningFullVO1.viewable ? 'No data to display.' : 'Access Denied.'}"
                                fetchSize="#{bindings.RekeningFullVO1.rangeSize}"
                                rowBandingInterval="0"
                                filterModel="#{bindings.RekeningFullVO1Query.queryDescriptor}"
                                queryListener="#{bindings.RekeningFullVO1Query.processQuery}"
                                filterVisible="true" varStatus="vs"
                                selectedRowKeys="#{bindings.RekeningFullVO1.collectionModel.selectedRow}"
                                selectionListener="#{bindings.RekeningFullVO1.collectionModel.makeCurrent}"
                                rowSelection="single" id="t1"
                                partialTriggers=":::popAdd">
    the pop-up window:
    <af:popup id="popAdd" popupFetchListener="#{RekeningBean.addPopup}"
                      contentDelivery="lazyUncached"
                      popupCanceledListener="#{RekeningBean.cancelAdd}">
                <af:dialog id="dlgAdd" title="Rekening toevoegen" dialogListener="#{RekeningBean.addListener}"
                        affirmativeTextAndAccessKey="Toevoegen" cancelTextAndAccessKey="Annuleren">
    RekeningBean:
        public void addPopup(PopupFetchEvent popupFetchEvent) {
          BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
          OperationBinding createInsert = (OperationBinding) bindings.get("CreateInsert");
          createInsert.execute();
          
          if(createInsert.getErrors().size() > 0) {
              List errors = createInsert.getErrors();
              Iterator it = errors.iterator();
              while(it.hasNext()) {
                  System.out.println("Error: " + it.next());
              }
          }
        }
        
        public void cancelAdd(PopupCanceledEvent popupCanceledEvent) {
          BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
          OperationBinding createInsert = (OperationBinding) bindings.get("Rollback");
          createInsert.execute();
          System.out.println("Rollback");
        }
        
        public void addListener(DialogEvent dialogEvent) {
          if(dialogEvent.getOutcome().name().equals("cancel")) {
            BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
            OperationBinding createInsert = (OperationBinding) bindings.get("Rollback");
            createInsert.execute();
            System.out.println("Rollback");
          }
          else if(dialogEvent.getOutcome().name().equals("ok")) {
            BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
            OperationBinding createInsert = (OperationBinding) bindings.get("Commit");
            createInsert.execute();
            
             System.out.println("Commit");
          }
        }
    So when I run the validation, the table must be informed that the data has been updated but who can't... My popup closes and the blank line in the table remains the same. When I press F5 to refresh the page, I see my data. How can I do this without making the F5?

    I guess the problem is that the trigger part that you put on the table gets called before validating the data in the code of the bean.
    Try adding a partial trigger in the bean code that refreshes the table.
    Put an ID to your table (or link the table to the bean), then use the code below to trigger an update after the transaction commit or rollback.

    
               UIComponent ui = JSFUtils.findComponentInRoot("tableid");
               RequestContext.getCurrentInstance().addPartialTarget(ui);
      
    

    Here is the code for the findCommponentInRoot method:

        /**
         * Locate an UIComponent in view root with its component id. Use a recursive way to achieve this.
         * Taken from http://www.jroller.com/page/mert?entry=how_to_find_a_uicomponent
         * @param id UIComponent id
         * @return UIComponent object
         */
        public static UIComponent findComponentInRoot(String id)
        {
            UIComponent component = null;
            FacesContext facesContext = FacesContext.getCurrentInstance();
            if (facesContext != null)
            {
                UIComponent root = facesContext.getViewRoot();
                component = findComponent(root, id);
            }
            return component;
        }
    
        /**
         * Locate an UIComponent from its root component.
         * Taken from http://www.jroller.com/page/mert?entry=how_to_find_a_uicomponent
         * @param base root Component (parent)
         * @param id UIComponent id
         * @return UIComponent object
         */
        public static UIComponent findComponent(UIComponent base, String id)
        {
            if (id.equals(base.getId()))
                return base;
    
            UIComponent children = null;
            UIComponent result = null;
            Iterator childrens = base.getFacetsAndChildren();
            while (childrens.hasNext() && (result == null))
            {
                children = (UIComponent) childrens.next();
                if (id.equals(children.getId()))
                {
                    result = children;
                    break;
                }
                result = findComponent(children, id);
                if (result != null)
                {
                    break;
                }
            }
            return result;
        }
    

    Timo

  • What is the best way to refresh the table after autosubmit (10.1.3.4)

    What is the best way to refresh the table after autosubmit?

    I have a page that contains a table where if one of the fields is changed it autosubmitted where the view object changes some attributes, based on the field having been changed. I need these modified attributes that appear in the table. But without doing anything, the only way to see these values is to cause the iterator updated table.

    I've been refreshing the table is having a method in a grain of beacking called "getSystemSettingIter.getCurrentRow ();". This seems to be a bit of a hack for me and I was wondering if there is a better way to get the table to update.

    Thanks in advance!

    Have you tried setting between the two partial page refresh?
    http://www.Oracle.com/pls/as111120/lookup?ID=ADFUI385

    http://download.Oracle.com/docs/CD/E15523_01/Web.1111/b31974/web_form.htm#CACEIEEI

  • How to refresh a table using a text field

    I created a form in a table on a page. I have included a text field in the same region. I added a dynamic action to refresh my sub form of table when the text field is entered and corresponds to one of the field in the record. but the source of the region, will not take my where clause. It gives

    Failed to parse the SQL query:

    ORA-00911: invalid character

    error. I worked on this last days.

    How to fix it. Help, please.

    Thank you

    my simple code is

    Select * from 'EMAILLIST' WHERE

    (: P9_ENTER IS NULL)

    OR EMAILNAME AS: p9_enter)

    p9_enter is my text box. I have a dynamic action that refreshes the page on the unlock key. Help, please

    I found the answer myself...

    1. you have enable partial page refresh Yes No is the default

    2. on a dynamic action, no need to fire on the support page - choose No.

    That's what it takes to make the tabular form to refresh...

    works now

  • Refresh the table data blocks SQL Developer

    Hello

    I am facing a problem with SQL Developer Version 3.2.20.09 build HAND - 09.87 (we run it on OEL 6.4).

    When I click on the Refresh button in the tab "Data" from a table, SQL Developer crashes with the following stack.

    Sometimes it works but sometimes it crashes... and the table contains only 5 lines. Any ideas?

    Exception occurred during the transmission of the event:

    Impossible

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAtImpl(Container.java:2515)

    at java.awt.Container.findComponentAt(Container.java:2480)

    at java.awt.Container.findComponentAt(Container.java:2463)

    at sun.awt.X11.XGlobalCursorManager.findComponentAt(XGlobalCursorManager.java:159)

    at sun.awt.GlobalCursorManager._updateCursor(GlobalCursorManager.java:193)

    at sun.awt.GlobalCursorManager.updateCursorImmediately(GlobalCursorManager.java:95)

    at sun.awt.X11.XComponentPeer.updateCursorImmediately(XComponentPeer.java:795)

    at java.awt.Component.updateCursorImmediately(Component.java:3032)

    at java.awt.Container.validate(Container.java:1494)

    at java.awt.Window.dispatchEventImpl(Window.java:2516)

    at java.awt.Component.dispatchEvent(Component.java:4576)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:672)

    to java.awt.EventQueue.access$ 400 (EventQueue.java:96)

    in java.awt.EventQueue$ 2.run(EventQueue.java:631)

    in java.awt.EventQueue$ 2.run(EventQueue.java:629)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:116)

    in java.awt.EventQueue$ 3.run(EventQueue.java:645)

    in java.awt.EventQueue$ 3.run(EventQueue.java:643)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:642)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)

    in java.awt.Dialog$ 1.run(Dialog.java:1073)

    in java.awt.Dialog$ 3.run(Dialog.java:1127)

    at java.security.AccessController.doPrivileged (Native Method)

    at java.awt.Dialog.show(Dialog.java:1125)

    at java.awt.Component.show(Component.java:1672)

    at java.awt.Component.setVisible(Component.java:1624)

    at java.awt.Window.setVisible(Window.java:882)

    at java.awt.Dialog.setVisible(Dialog.java:1012)

    at oracle.dbtools.raptor.backgroundTask.TaskDialog.showDelayedDialog(TaskDialog.java:84)

    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.showModalDialog(RaptorTaskManager.java:290)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$ 600 (RaptorTaskManager.java:41)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ 2.run(RaptorTaskManager.java:272)

    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:670)

    to java.awt.EventQueue.access$ 400 (EventQueue.java:96)

    in java.awt.EventQueue$ 2.run(EventQueue.java:631)

    in java.awt.EventQueue$ 2.run(EventQueue.java:629)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:640)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)

    in java.awt.Dialog$ 1.run(Dialog.java:1073)

    in java.awt.Dialog$ 3.run(Dialog.java:1127)

    at java.security.AccessController.doPrivileged (Native Method)

    at java.awt.Dialog.show(Dialog.java:1125)

    at java.awt.Component.show(Component.java:1672)

    at java.awt.Component.setVisible(Component.java:1624)

    at java.awt.Window.setVisible(Window.java:882)

    at java.awt.Dialog.setVisible(Dialog.java:1012)

    at oracle.dbtools.raptor.backgroundTask.TaskDialog.showDelayedDialog(TaskDialog.java:84)

    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.showModalDialog(RaptorTaskManager.java:290)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$ 600 (RaptorTaskManager.java:41)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ 2.run(RaptorTaskManager.java:272)

    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:670)

    to java.awt.EventQueue.access$ 400 (EventQueue.java:96)

    in java.awt.EventQueue$ 2.run(EventQueue.java:631)

    in java.awt.EventQueue$ 2.run(EventQueue.java:629)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:640)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)

    in java.awt.Dialog$ 1.run(Dialog.java:1073)

    in java.awt.Dialog$ 3.run(Dialog.java:1127)

    at java.security.AccessController.doPrivileged (Native Method)

    at java.awt.Dialog.show(Dialog.java:1125)

    at java.awt.Component.show(Component.java:1672)

    at java.awt.Component.setVisible(Component.java:1624)

    at java.awt.Window.setVisible(Window.java:882)

    at java.awt.Dialog.setVisible(Dialog.java:1012)

    at oracle.dbtools.raptor.backgroundTask.TaskDialog.showDelayedDialog(TaskDialog.java:84)

    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.showModalDialog(RaptorTaskManager.java:290)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$ 600 (RaptorTaskManager.java:41)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ 2.run(RaptorTaskManager.java:272)

    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:670)

    to java.awt.EventQueue.access$ 400 (EventQueue.java:96)

    in java.awt.EventQueue$ 2.run(EventQueue.java:631)

    in java.awt.EventQueue$ 2.run(EventQueue.java:629)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:640)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)

    in java.awt.Dialog$ 1.run(Dialog.java:1073)

    in java.awt.Dialog$ 3.run(Dialog.java:1127)

    at java.security.AccessController.doPrivileged (Native Method)

    at java.awt.Dialog.show(Dialog.java:1125)

    at java.awt.Component.show(Component.java:1672)

    at java.awt.Component.setVisible(Component.java:1624)

    at java.awt.Window.setVisible(Window.java:882)

    at java.awt.Dialog.setVisible(Dialog.java:1012)

    at oracle.dbtools.raptor.backgroundTask.TaskDialog.showDelayedDialog(TaskDialog.java:84)

    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.showModalDialog(RaptorTaskManager.java:290)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$ 600 (RaptorTaskManager.java:41)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ 2.run(RaptorTaskManager.java:272)

    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:670)

    to java.awt.EventQueue.access$ 400 (EventQueue.java:96)

    in java.awt.EventQueue$ 2.run(EventQueue.java:631)

    in java.awt.EventQueue$ 2.run(EventQueue.java:629)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:640)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)

    in java.awt.Dialog$ 1.run(Dialog.java:1073)

    in java.awt.Dialog$ 3.run(Dialog.java:1127)

    at java.security.AccessController.doPrivileged (Native Method)

    at java.awt.Dialog.show(Dialog.java:1125)

    at java.awt.Component.show(Component.java:1672)

    at java.awt.Component.setVisible(Component.java:1624)

    at java.awt.Window.setVisible(Window.java:882)

    at java.awt.Dialog.setVisible(Dialog.java:1012)

    at oracle.dbtools.raptor.backgroundTask.TaskDialog.showDelayedDialog(TaskDialog.java:84)

    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.showModalDialog(RaptorTaskManager.java:290)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$ 600 (RaptorTaskManager.java:41)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ 2.run(RaptorTaskManager.java:272)

    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)

    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:670)

    to java.awt.EventQueue.access$ 400 (EventQueue.java:96)

    in java.awt.EventQueue$ 2.run(EventQueue.java:631)

    in java.awt.EventQueue$ 2.run(EventQueue.java:629)

    at java.security.AccessController.doPrivileged (Native Method)

    in java.security.AccessControlContext$ 1.doIntersectionPrivilege(AccessControlContext.java:105)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:640)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)

    in java.awt.Dialog$ 1.run(Dialog.java:1073)

    in java.awt.Dialog$ 3.run(Dialog.java:1127)

    at java.security.AccessController.doPrivileged (Native Method)

    at java.awt.Dialog.show(Dialog.java:1125)

    at java.awt.Component.show(Component.java:1672)

    at java.awt.Component.setVisible(Component.java:1624)

    at java.awt.Window.setVisible(Window.java:882)

    at java.awt.Dialog.setVisible(Dialog.java:1012)

    at oracle.dbtools.raptor.backgroundTask.TaskDialog.showDelayedDialog(TaskDialog.java:84)

    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.showModalDialog(RaptorTaskManager.java:290)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$ 600 (RaptorTaskManager.java:41)

    to oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ 2.run(RaptorTaskManager.java:272)

    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226) [...]

    Kind regards

    Sébastien

    Laurent,

    Thanks for the update - to be able to point the finger at something specific to the environment is always useful.  As noted above, the TaskDialog.showDelayedDialog has been rewritten to 4.0.  In addition, 4.0 requires jdk.1.7, so between the two of them maybe behaviour will improve without the need to limit the way in which the o/s assigns tasks to processors.  It is unclear if a particular flavor of the o/s may be more prone to this condition of StackOverflowError, or maybe just 64 - bit o/s in general.

    Anyway, no matter what output 4.0 comes out, at least we are two weeks closer to her now.

    Thank you

    Gary

  • Refresh the table after the creation of the new BO of Toplink

    Hello

    I have the following problem and I hope someone can help me. I use ADF11g/Taskflows with BOs TopLink-mapped (no ADF BC).

    Consider the Taskflow (s) following:

    the main activity is a (display) jsff page showing a table of BOs. From this point of view, two actions-defined results are called 'Edit' and 'create '. The edit action called an another Taskflow constisting of a pageFragment, showing the detailForm of the Soundtrack of data. This Taskflow has an input and output parameter (Soundtrack edit) and two are called "save" and "Cancel". Add Action calls a method called "createNewBO" first, and then calls the Taskflow mentioned also. Each Taskflow has ist own Bean managed in the pageFlowScope to work as a controller and DataControl to the TaskFlow and directly included views.

    The edit action works fine. The action also add except that the table of the default activity of the first taskflow does not update after return from the second Taskflow. I tried to put the property of refreshment in the PageDef of all possible values, in combination with the RefreshCondition, but no combination works. I can do a manual refresh or change the sort then the new Soundtrack is shown in the table.

    Is it possible to call a refresh of a jsff since a taskflow or I can force a refresh on entering the jsff?

    I am really stuck and appreciate any help ;)

    Friedrich

    You can try this:

    -on your taskflow diagram select the page that contains the table that you want to update, and add a Page parameter (from #{true} # {viewScope.refresh})
    -in pageDef page add an invokeAction in executable files and that it points to methodAction which fills the iterator to update
    -for newly created invokeAction, value refresh ifNeeded and condition of refreshment to #{viewScope.refresh}

    This should refresh the iterator each loading of the page (fragment).

    I hope this helps!

    Pedja

  • How to refresh the table after changing model

    12.1.3 JDEV

    My Table of the ADF is limited to a list of dataRows in my SampleDataModel class.

    My button is limited to a method of createDataRow of SampleDataModel class.

    Then click the button, a new item is added to the list of dataRows.

    There is a partial trigger button on the table.

    I expect after the button clicked, the table is updated with the newly added row.

    But what I see is: new dataRow is added to the list of dataRows and the flashes of the table, but it does not show the line.

    Anything I missed? Thank you.

    < af:toolbar id = 't3' >

    < af:button actionListener = "#{bindings.createDataRow.execute}" = "createDataRow" text "

    Disabled = "#{!}" Bindings.createDataRow.Enabled}"id ="b7"partialSubmit ="true"/ >

    < / af:toolbar >

    < af:table value = "#{bindings.dataRows.collectionModel}" var = 'row' "

    Rows = "#{Bindings.DataRows.rangeSize} '"

    emptyText = "#{bindings.dataRows.viewable?" "{'No data to display.': 'Access Denied.'}".

    rowBandingInterval = '0 '.

    selectedRowKeys = "#{bindings.dataRows.collectionModel.selectedRow} '"

    selectionListener = "#{bindings.dataRows.collectionModel.makeCurrent} '"

    rowSelection = 'unique' fetchSize = "#{bindings.dataRows.rangeSize}" id = "t1" "

    "partialTriggers =": b7 "editingMode ="clickToEdit">

    How you have implemented the createDataRow method to add the line?

    A table using an iterator in the pagedef, you have updated this iterator?

    Timo

  • Fastest approach refreshing a table

    Hello

    We got a table 'tab1' which is updated daily.

    At this moment we are a Truncate and insert. It would be faster if I fall and create? I have indexes on the table, so if you Drop and create is the best way to do that one of these approach would be faster?

    (1) create the empty table (create table tab1 in select * from source_tab where 1 = 2), then create indexes and then fill in the chart.
    or
    (2) create the entire table (create table tab1 in select * from source_tab), and then create the index

    Thank you
    CJM

    Hello

    Can you please explain what kind of index you use. There are constraints on this table?

    My suggestion: If there is no primary key, or not null constraint and then truncates the table and insert the data is the right solution.

    Thank you
    Suri

  • WRT1900ACS - is there a way to reset/refresh/clear/initialize the DHCP client table?

    I have a WRT1900ACS with the 1.0.1.174588 firmware.

    There are several things that are a little weird. I noticed thre were some features missing in the network map, so I looked at the table of the DHCP client to see if they were there. The customer table is a bit a mess.

    Rather than go into all the details, is there a way to reset/refresh/clear/initialize table of DHCP client? I would rather not reset the default router just to refresh a table? If the customer table is toast, it won't be very easy to track down the other expectant.

    Thanks Olivier. Details have been sent according to you demand.

    millerjr

  • Refresh the result table or rerun the query

    I have a requirement, simple but stuck somewhere.

    Jdev 11.1.1.17 Expert level: Mid-Senior

    I have a form of application and the associated result table. It works great and no problems.

    My requirement is that I have a commandlink on one of the column. Clicking on that will open a popup with an editable filed. OK will commit and Cancel will close the pop-up window.

    After that the popup is dismissed with partial trigger, my table refreshes but data is identical to the front. But if I click the Find (Search) button on the query, it shows the data with the results updated which are changed in the pop-up window above.

    How do I update table which re - runs the query and then refreshes the table after the popup is dismissed, or when the user clicks the OK button in the pop-up window.

    Get on the viewObject of this table and call the executeQuery method that

    Write this method in the method AMImpl and then call it in bean managed using the OperationBinding at the click on the Ok button of the dialog box

    ViewObject vo = this.getViewObjectName ();

    vo.executeQuery ();

    Ashish

  • [ADF, JDev12.1.3] ReadOnly af:table via edit form: why it is not refresh after insert/change?

    Hallo,

    in a tab, I have an af:table readonly manipulated by a form (as long as they are created from the same distance VO).

    The shape is a btf used as dialog box.

    The problem is that when the dialog box is closed the display: table isn't refresh.

    To see the update I need for example to change tab and re - enter the tab.

    In a previous thread Timo told me that maybe I need to update the iterator of FY: table.

    I opened this new topic because I'd like to understand who is safe and recommended to make way.

    The code handles the bean home dialog box 'appeal' is...

      public void onEditEmplFormReturn(ReturnEvent returnEvent) {
        Object confirmOrCancel = returnEvent.getReturnValue();
        if (((String) confirmOrCancel).equals("cancel")) {
          BindingsUtils.restoreAdfmSavePoint("EmployeesSavePoint");
        }
        else {
          // Code to refresh the table/iterator
        }
      }
    

    How can I fill it?

    Thank you

    Federico

    You can link your bean table or get it from ViewRoot by id, and then use: AdfFacesContext.getCurrentInstance () .addPartialTarget (yourTableComponent);

    Dario

  • problem of refreshment table in the Dvd rental applications (ADf essentials by Sten E.vesterli)

    Hi all

    I am going through essentials ADF Sten E.vesterli book. I'm done building BC component Tester BC Tester thing works very well.

    I build UI for it. I have specific problem

    one.png

    the code that I will carry out back button is

       public String returDvd() {
            RowKeySet sel = getFilmRentalTable().getSelectedRowKeys();
            Iterator selIter = sel.iterator();
            // get iterator for all data records
            BindingContainer bc =
                BindingContext.getCurrent().getCurrentBindingsEntry();
            DCBindingContainer dcb = (DCBindingContainer)bc;
            DCIteratorBinding rentalIter =
                dcb.findIteratorBinding("RentalUnreturnedIterator");
            RowSetIterator rsi = rentalIter.getRowSetIterator();
            // find the selected record in the data iterator
            Key key = (Key)((List)selIter.next()).get(0);
            RentalVORow r = (RentalVORow)rsi.getRow(key);
            r.registerReturn();
            OperationBinding ob = bc.getOperationBinding("Commit");
            ob.execute();
            //rentalIter.getViewObject().executeQuery();
    
            return null;
        }
    
    
    

    My expected behavior should DVD must go back to the database, it should not be visible on the user interface, only non-returned DVD must appear on this table.

    rentalIter.getViewObject().executeQuery();
    
    
    

    If I run this line after committing, it works fine, but there is no success of DB.

    (2) if I refresh the page as I can get the same result (but users won't)

    one.png

    My conclusion

    I'm sure that the table is refreshing

    I know not iterator runs after you refresh the table (I saw it at in Debug Mode).

    My question is without hitting the DB how can I get this expected behavior

    Thank you

    REDA

    Have not read this book (so I don't know what exactly makes r.registerReturn ()) but I guess you can use RowMatch or ViewCriteria to do in memory of filtering:

    https://blogs.Oracle.com/IMC/entry/adf_bussiness_components_in_memory

    https://blogs.Oracle.com/ADFProgrammers/entry/in_memory_filtering_and_rowmatch

    Dario

  • force refresh table

    Unlikely salvation the rest to refresh a table after deletion or insertion or update of data it's special

    the table was created to an arraylist, I create the datacontrol and then I use data showed but after clicking on the button to re-evaluate and create the data on the table isn't refresh data

    is shown on a popup, after debugging I have find the arraylist instance data is changing, but the data showed on the table is not

    can anyone helpme please

    My jdev is

    11.1.2.4.0

    Hello..

    You add partial trigger to the table and also refresh the iterator using the:

    yourTableIterator.executeQuery (); -to refresh your table.

    THX

  • Filter table, after refresh problem?

    Hello

    I use jdev 11.1.2.3

    My problem is that I have a table on the user interface with options blockable for each field, when I search for any domain name specific using existing word, it will come as usual

    but, when I refresh or open another form and then after arriving at this table that UI may not be updated... How get an idea...

    Thank you.

    Hello

    You can use the code to do so below.

    FilterableQueryDescriptor queryDescriptor = (FilterableQueryDescriptor) getYourTable () .getFilterModel ();

    If (queryDescriptor! = null & queryDescriptor.getFilterCriteria ()! = null) {}

    queryDescriptor.getFilterCriteria () .clear ();

    If you want to refresh the table also use the threshold

    getYourTable () .queueEvent (new QueryEvent (getYourTable (), queryDescriptor));

    otherwise use this line

    yourVoIter.getViewObject () .getViewCriteriaManager () .clearViewCriterias ();

    }

    Thank you

    Alisson

  • ADF not refresh table data

    Hello

    I create a table of adf using data control. value of adf table depend on the view object. where I bind a variable in the where clause.

    I now give the value of whereClauseParam using the instance of the view object supporting the bean method.

    When I pressed on the method of command button run correctly but adf table not updated and do not display data.

    Thanks in advance

    Manish,

    I prefer not to use createRootApplicationModule in managed bean. See the link below.
    http://radio-weblogs.com/0118231/2009/08/20.html

    So what you can do, it is write a custom app module impl class method that will run the view object, expose it in the client interface.
    When the invoke method custome button click.

    To refresh the data table add PPR (partial refresh the table).

    ~ Abhijit

Maybe you are looking for