front-end user interface to view record edit history - user-interface

I have a web application that inserts/updates/deletes records from a database. Each time a transaction is made to a table, the change is recorded with the type of modification and the previous values from a trigger. What is a good web user interface layout to view such transactions to the users? Currently we just dump the whole history table to the user in a html table row and column format. I'm looking for some interface hints to present these edit history better.
Thanks for your input.

You can use a grid representation of the database table, plain html or produced by a js framework, plenty of options out there.
For the newly inserted records with no updates, just show the record with the insertion datetime.
For records that have been updated you can add a link/button at the end of the row with a title like "history" or "previous versions" or somethink like that and when a user clicks on it, then you can open a subgrid under this record or a pop up with a new grid (depends how you will implement your grid on the first place) which will show this record's history only.
The deleted records, you can add them (at the bottom of the table maybe) but grayed out or striked out. Again you can add the history option if you want it even for deleted records.
EDIT:
You could also add some filtering functionality above your grid for the user to select/see only the inserted/updated/deleted records and of course sorting functionality on the grid columns

Related

PowerApps for MS Teams - Duplicate record added to combobox when setting DefaultSelectedItems

I am developing a Power App using the Teams version. We have two tables in Dataverse acting as the main data sources. There is an inheritance relationship between these two tables, where one holds parent objects and the other child. I have an overview screen which displays a single record and it is important that a user can select both parent and child records from a single combobox and have the data associated to the selected record displayed.
In order to achieve this I have a collection which holds the ID and Parent/Child type of each record to form a full list of records from both tables. Collection is built as follows:
ClearCollect(Collection_RecordSelect,AddColumns(ShowColumns(record_parents,"recordID","recordID_numeric"),"type","parent")); Collect(Collection_RecordSelect, AddColumns(ShowColumns(record_children,"recordID","recordID_numeric"),"type","child"));
When a user selects a record from the combobox, the ID value from the collection is looked up against the respective data source to get the rest of the data for the record.
The issue I have now is, when a user makes a change to a record in another screen, the app returns to this overview screen to show the record they have just changed. To achieve this I used the DefaultSelectedItems property of the combobox which looks at a selectedRecord variable containing the record ID as a string, set after a user changes the record in another screen. As the combobox requires a record, the combobox uses the selectedRecord variable to Lookup into the collection I referenced earlier to get the full record, unless it's blank in which case it default to the first record. Shown below:
If(IsBlank(selectedRecordID),First(Collection_RecordSelect),Lookup(Collection_RecordSelect, recordID = selectedRecordID))
This results in the combobox displaying two instances of the selected record and showing the old version of the record before the user made changes on the overview screen. If you select another record, the duplicate disappears. If you select the other duplicate record in the combobox, the user's changes are then shown on the overview screen.
Screenshot of duplicate record in combobox.
I have tried creating a single collection, containing all records from both tables, however as they are slightly different due to the inheritance field in the child table they don't merge properly and data is missed. Unfortunately, I need the inheritance field on the overview screen so I can't use ShowColumns and remove it.
I have recently re-built the app in Teams as opposed to standard Power Apps. This solution worked fine in the standard Power Apps environment, so I have a suspicion it may be a bug with the Power Apps for Teams combobox? Unless I am making a mistake, I think this is probably true as I've just tested and the "Classic Control" combobox doesn't have the same behavior, shame because it looks rubbish compared to the Teams one!
I have turned off multi-select on the combobox and search and the problem still exists.
Any help would be hugely appreciated!

PL/SQL INSERT DATA TO TABLE IN ORACLE APEX

I created a blank page and inserted textfields and button which will serve as a form. I want to display the inserted data from user once the button save is clicked, and the data will also show on the interactive grid below the page. Please help me on this.
I'd suggest another approach: use the Wizard to create Report with a Form on a table. It will create an Interactive Report (and you'll use it to review data stored into a table) and a Form (you'll use to insert new records and to update/delete existing ones).
Apex does everything for you; you'll only have to make it pretty because it'll work "as is". With your approach, you'll have to program everything yourself.

Updating a Button in an MS Access 2013 Form

I have a form in MS Access 2013 that is associated with two tables. The form populates with various fields from each table. I also have several buttons to Add a Record, Find a Record (from one of the tables), Save, and Close Form. I want to add a button that allows me to find a record from the other table. I was successfull creating the button, but the button is looking at the wrong table. I want the button to look at the other table but I can't find a way to switch the table the button is looking at. I don't understand Macros very well but this appears to be a very easy problem. How can I make the button look at the right table?

Oracle Application Express empty edit page

I'm new to APEX. When I create pages in my app the edit pages that generate automatically work for some pages but not for others - they are blank except for the Create, Delete, Cancel buttons and the PK item (but that one's "Hidden"). There are no other items. I tried to add them manually but they don't connect to the respective rows - when I try to edit a row in the app it displays empty lines
Consequentially, I also can't delete any rows. I tried to compare everything in the settings of pages that have working edit pages but nothing worked
From my point of view, the simplest option is to create either
a form on a table with report whose wizard will create
an interactive report you'd use to view data; enable you to modify existing records using the "edit" icon at the beginning of each row; create new records using the Create button
a form used to modify and create new records
a tabular form (or an interactive grid) that enables you do do everything (insert, update delete) on the same page
If you create a form by yourself, you should create required processes which do different actions. I'm lazy to do it manually, so I always let the Wizard do the dirty job.
From your description, it seems that you created a form, included several items, possibly set them to be database items, but Apex doesn't know how to retrieve existing records (something like execute query in Oracle Forms). Therefore, try to use one of options I suggested and see how they behave.

How can I figure out the value of the clicked cell in a table which was generated in ASP?

I'm generating a large table on a webapp using ASP. I connect to an oracle database using ADODB.Recordset and fill a table with each row of data. Whenever you click on the ID number (the first column of each row), there are 15 boxes at the bottom that will fill up with more data from the database. I apologize for censoring the data, but you can see what I'm giong for. The table fills up with data, and then there's another table at the bottom that, when an ID number is clicked, should fill up with more info for that Id.
The problem I'm having is that, as the Recordset is stepped through to fill up the table, it gets to the end and keeps pointing at the last record in the database. I need to find a way to make it point at the record I clicked on so that it can get all of the data about that record. Any ideas how to do it?
Only 2 ways I know of that will do what you want.
Using JavaScript as #Ed suggested. This will give you results in
your bottom table without a page refresh.
Using VBScript, generate a URL with a querystring with the ID you
want. Use the ID to populate your bottom table. This will require a
page refresh.

Resources