I will describe following scenario - two ADF Task Flows, second ADF Task Flow is opened as Isolated. First ADF Task Flow provides query functionality implemented as View Criteria, and second ADF Task Flow accepts current row key value and allows to edit data. Scenario is pretty simple, and can be implemented in Oracle ADF very fast. However, there is one trick if you open second ADF Task Flow as Isolated. I will describe it and provide solution.
At first, download sample application I have developed - TrackQueryPerformed.zip. First ADF Task Flow provides query screen and calls second ADF Task Flow. Nothing specific here:
Second ADF Task Flow is also basic, just using Method Call for setCurrentRowWithKeyValue action:
Only one thing, second ADF Task Flow is defined with Isolated Data Control Scope:
In some systems, its usual requirement to open CRUD style ADF Task Flow in Isolated mode, in order to get a new DataControlFrame for CRUD operations.
Ok, so far everything is simple and good. Let's open query page and select third record in results table:
When record is selected, press Edit button to navigate to a second ADF Task Flow, selected record is opened for editing:
Change First Name value, press Save to commit changes and navigate back by pressing Close. Data was updated, but when navigating back to query page it was not refreshed there (same data in third row as before):
In order to requery data correctly when navigating back, we need to change TrackQueryPerformed property value in Page Definition file for Query Criteria binding:
Change it from default PageFlow to Page:
This means, Query Criteria will be initialized and performed automatically each time query page will be opened, its what we need in our case. With this setting, when navigating back from Isolated scope CRUD ADF Task Flow to query ADF Task Flow, data changes will be retrieved and shown automatically (data in third row is up-to-date):