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

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

Related

How To Allow Right Click Functionality With React-Virtualized Table API

Basically I know there is a onRowClick and onRowRightClick property I can use. But what I am really looking for is this. I want to set a function to trigger when I click the row. That is what onRowClick does for me. But what I also want is to be able to right click on a row and have the option to open in new tab.
I know I can make one of the columns be a link and that will kinda meet me half way there but I was hoping to be able to do that for the whole row

Added row is not visible until scrolling

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

Push view infront of another one?

Is it possible to push a view over the active view and remove that pushed view when we are done with it? (something like a slide panel?)
I'd prefer doing that to destroying and recreating view all day?
You can use a card layout to define multiple components and display only one of them at a time. Or maybe you're rather looking for a modal container that doesn't completely hide the content beneath it (but prevent to interact with it)?

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.

ExtJS - Nested Window/FormPanel

This is sort of a subjective question, but I'd like to get some ideas on the best way to lay this out. I'll set up the situation for you.
I have a grid with a column that allows the user to "View Details" on a particular item. The grid also allows the user to select multiple rows and "View Details" on those items. When the user clicks "View Details", a Window will pop over the grid, with a form inside it and controls to navigate between the multiple items (if they selected multiple items).
Here's a picture for an example:
I have no problem creating the Window, but I'm curious as to how to handle multiple "FormPanels", if that makes sense? Would I need to create another Panel inside the container Panel for each item they have selected, and then hide/show based on the active item (shown as "Item #1" in the dropdown)?
I'm thinking of it like a deck of cards in which you can navigate through, but I've never done something like this before. Also note that each item/card will be prepopulated with information from the grid, but that should be easy enough to do if I'm using the same Store.
Thoughts?
Yes you're right, and the layout you're looking for is the CardLayout.
You can read about it in the API here. The basic idea is like you said, a stack of cards that contain components, and you shuffle through them by calling the relevant methods.

Resources