Added row is not visible until scrolling - oracle-adf

I've built a simple master - detail form consisting of a form for the master element and table for the details.
In the toolbar of panel collection around the table I placed a CreateInsert button which ads a row to the table. My problem is that I this row is invisible until after I move my cursor over to the table and scroll down. Then it appears.
Before that a small scrollbar appear after pressing the button which can't be pressed.
Related to this is the problem when I press the delete button in the details, the table gets cut in half. I suspect these two problems are related.
This is my table:
This is after I press CreateInsert. The table should add another row below this one, and it does, but it is not visible until after I scroll. This happens only for the first row.
I am using JDeveloper 12c with Oracle ADF Fusion Web Applications.

This is a late answer I know , but try to programmatically refresh the PanelCollection and its container.
AdfFacesContext.getCurrentInstance()
.addPartialTarget (getThePanelCollection());
AdfFacesContext.getCurrentInstance()
.addPartialTarget (getThePanelCollectioncontainerLayout());
I tried this myself and it solved the problem after trying many other solutions.

Did u check with the Size.?
Try giving Styles for Table and Panel Collection "StyleClass=AFStretchWidth"

Add Execute in binding side of the jspx page for the particular table
Add invoke action for the execute in executables
Change the properties to render model in refresh condition of the invoke action
It will automatically make the master table to trigger the new values
Thanks

Related

ADF- Updating Row

We're trying to implement a very basic functionality in ADF 11g using Jdev(11.1.1.7). We have one table in database which is exposed to the UI layer using ADF BC.
The requirement is to update a table when user selects one of the row. It will open a popup and then user can update the value in that dialog box. This works well but along with the current row, ADF framework is also updating the first row with the previous value of the update.
To update a row, we're using the standard commit button from the data control and then overidiing the DoDml method in EO to update additional fields.
Can someone share the details why this happening with each update and any solution for this?
Thanks,
LG
First, remove the selectedRowKey value from the table properties otherwise this will always select first row.
After the commit refresh the page or relevant component to load updated data to UI.
If you are updating additional fields using doDML make sure to commit the data and refresh UI to load updated data.
Commit is transaction level, if the Status of EO row is changed that row will participate in transaction. Either you need to change the status of other row to un-modify or you can override beforeCommit in VOImpl .
Thank you,
TR

Sync up data in ADF table after update in DB table done outside ADF environment

I have a jsff page inside a bounded task flow. It displays a table. Each row of table has an edit icon. on click of which a new jsff page opens containing the information of the selected row ready to be edited.
Here user can update and save the information and check the information back on the first page by clicking a Done button on second page.Pretty much simple.
The problem is I have some complex implementation due to which I should not update the row information through ADF way. I take the information entered by the user and pass it to plane java file. There in the plane java file I instantiate an AM and update the information through this AM.
The problem with this approach is that when I click the Done button to come back on table page to check the saved data, the data on the table is stale.
This seems as If the table is being updated outside the ADF framework and so it is not aware of the underlying the data change hence the ADF UI table is not synced with physical table automatically.
JDev : 11.1.1.7.11
Options tried : Upon click of Done button I tried to requery the VO of ADF table by
1) Clearing the VO cache row and repopulating it
2) Re executing the iterator binding
3) Re executing the iterator binding programatically.
Thanks

Conditional Formatting based on layout view

Another question for you Filemaker Pro experts. The database I am developing starts with a Main layout with a number of buttons (e.g. insert new item, show all items, etc.). Each button is associated to a script, which takes the user to the relevant layout. In each of these layouts I show the buttons in a row, and highlight the current layout with inverse colour.
My problem is that some of the buttons lead to the same layout, viewed in different modes, and I don't know how to conditionally highlight the right button.
For instance, Insert new item and Show all items take to the same layout, however in the first case the script views the layout as a form and inserts a new record, while in the second I view as a list and show all records. The layout is the same, though, so I'd need to enact a conditional formatting based on something. How do I do that, and what should I check against?
Thanks in advance for any help.
Regards.
Presumably you are currently using the formula: Get (LayoutName) to decide on your conditional formula, why not try additionally using formulas: Get(WindowMode) and Get(LayoutViewState)?
You could conditionally format the button if (which sends user to MyLayout in browse mode):
Get(WindowMode)=0 and Get(LayoutName)="MyLayout"
Or (which sends user to MyLayout in form view):
Get(LayoutViewState)=0 and Get(LayoutName)="MyLayout"
.
Other functions which may help could be Get(FoundCount) and Get(TotalRecordCount). You can see the entire list of Get functions here.

Is it possible to move "Edit" and "Delete" buttons to the front in CRUD?

I created a model with ~30 columns, so every time I need to edit or delete something in CRUD, I have to scroll to the rightmost to find the edit or delete button. Is it possible to move them to the first 2 columns in the grid?
Also, it seems the CRUD class is derived from "View" rather than "Grid", so the addPaginator() function does not work here. Is there any way I can separate the data into different pages in CRUD? Thanks
CRUD is a container for both Grid and Form. Depending on how the page is called, it will initialize a proper sub-element. To do something with grid, such as adding pagination, you need this:
if($crud->grid)$crud->grid->addPaginatior();
Also if you are looking to re-order columns, then this is what you need to do:
if($crud->grid)$crud->grid->addOrder()
->move('edit','first')
->move('delete','after','edit')
->now();
Edit button moves just as Romaninsh said, but I'n not able to move the delete button...

Update database with Microsoft Access 2003

Hi guys i have a form with 3 tabs in it and every tab is supposed to update different table, can anyone tell how to do it with a button for every tab? Pretty much like a form built with HTML?
Access forms generally use bound data controls, which are quite different from HTML forms. If you want to use bound controls, place a sub-form on each tabsheet. Set the record source for each subform to the table you want to update. Then drop some fields from the table onto the subform.
If you want to use unbound controls, arrange some controls each tab as desired. At the bottom of each tab, place a button labeled Submit. In the CLICK event handler for each button, write code that does one of these two things:
Gather the values together, create an INSERT or UPDATE statement as appropriate, and have the database execute it with DoCmd.RunSQL.
or
Create an ADO or DAO recordset object for the row you wish to update or add and then write your values into the fields for that recordset.

Resources