Jump to content

Recommended Posts

Posted

Hi, 

In a complex application, I need a tabular Data Entry, used also as Data Display instead Grids.

For several reasons, this system is preferable to the traditional grid when dealing with fairly complex data entry:
1) It is fully responsive, so it can also be used on tablets and phones, without losing its functionality for the operator (with the grid, data entry becomes difficult, if not impossible, when switching between devices).
2) It is fully programmable: Editors and labels can be enabled/disabled, visible/invisible on a record-by-record basis depending on the logic of the data entered, with visible/invisible buttons or the display of other components depending on the displayed record.
3) The layout of the data displayed is free, allowing you to add text, diagnostics, change the color, or programmatically manage the logic of the individual selected record.
4) Input is managed by various Dbedits and DBTexts.

It is essentially the web version of the Delphi component
TDBCtrlGrid, with a panel for each record, a free-form layout, and the ability to edit the selected record.

What you see in the photo is an example created with TMS Web Core in the testing phase.
My question is simple:
Is it possible to achieve the same in UNIGUI projects?
Is it possible to create an advanced component that does the same thing?

Basically, it's the component that eliminates the need for a DBgrid + separate form or panel required for editing, solving editing and displaying at the same time in an elegant way (and can be responsive).

Any comments are welcome 🙂

 

Screenshot 2025-08-28 174635

  • 2 weeks later...
Posted
53 minutes ago, Stemon63 said:

Any comments, suggestions, opinions, or anything else about my request? 🙂

Hello,

Options to simulate TDBCtrlGrid in UniGUI (in my opinion):

  1. RowWidget in TUniDBGrid
    You can embed a custom container inside each row. Useful for displaying editable fields directly per record.

  2. Dynamic TUniContainerPanel per record
    In my opinion, this is the closest to TDBCtrlGrid. You can loop through the dataset and create a panel for each record.
    Use Bookmark for simple read-only data, or CloneCursor for full per-record data binding.

  3. Manual (non-data-aware) controls
    For lightweight displays, create TUniEdit, TUniLabel, etc., and assign values manually.

Posted

Okay Sherzod, let's analyze your different solutions:

  1. RowWidget in TUniDBGrid
    You can embed a custom container inside each row. Useful for displaying editable fields directly per record.

    Very interesting. Can I show only the container and not the "original" grid's row?
    Can we have a little example how to obtain this?
    (Can we obtain this also with Hyergrid?)

     

  2. Dynamic TUniContainerPanel per record
    In my opinion, this is the closest to TDBCtrlGrid. You can loop through the dataset and create a panel for each record.
    Use Bookmark for simple read-only data, or CloneCursor for full per-record data binding.

    Yes, but is very important to have a DB component which does all the databinding work for us! 🙂

  3. Manual (non-data-aware) controls
    For lightweight displays, create TUniEdit, TUniLabel, etc., and assign values manually.

    This is the worst solution, especially in our case which has a lot of "DBware" fields


    For option 1 & 2, a working demo is necessary to verify the feasibility. Thanks

     

×
×
  • Create New...