Stemon63
-
Posts
488 -
Joined
-
Last visited
-
Days Won
35
Content Type
Profiles
Forums
Events
Posts posted by Stemon63
-
-
I repost the question:
Is full responsive?
There is an English demo?
Can we have a tutorial video or advanced capabilties video, in english?
Thanks in advance! -
Why make our lives easy?
This should be the basic component (DB and otherwise) used by everyone. And instead it is ignored, making our lives very difficult for simple cases...
🙂
++++++++++++1- 1
- 1
-
22 hours ago, Muhammad Idris said:
Applications using Hyper Server become slow when there are more than 200 sessions
What happened to me is that I have used a hyperserver but the application problem is still slow.
So finally I used a load balancer on Nginx to divide several services with different ports and IPs
Hi,
Haven't found a solution to your problem? -
Those are good numbers. Especially without HyperServer and with just one executable. But it all depends on how you manage datasets and application logic on the server side.
The smaller the datasets resident in memory (coming from queries, tables or other) the less resources are consumed (memory and cpu), always having to multiply everything by the number of active users.
And clearly, the less "useless" traffic is generated between client and server, the better resources are managed.
I hope that with the management of "disconnected" datasets, as promised by Farshad for new lightweight DBgrids, much of the "in-memory persistent" data resources can be managed by shifting the dataset load to the client, freeing up resources on the server.
This should further improve Unigui's already excellent performances. -
14 hours ago, Sherzod said:
OK Sherzod,
but with light grid, what operations we can perform on client WITHOUT involve server?
And then, how to synchronize the updated and modified data on the client on the server?
Is it possible to have some previews on the applied logic?
Is there some kind of UniClientDataset and then some kind of Applyudates, for example (which would be optimal)?
Or events that allow you to synchronize modified records?
Any news or predictions are welcome.
I won't hide the fact that, for a project that requires very fast grid input and immediate quick calculations (sums and checks directly line by line) I'm testing TMS Web Core which manages the datasets entirely on the client.
But I would prefer to continue this project with Unigui, if possible.
Good work. Thanks in advance! -
HI Abaksoft,
thank you for the help!
But I think an analysis by Farshad or Sherzod is necessary to explain how to interact with the Js routines that they have created, in order to be able to carry out client operations on grids and stores (client dataset) in an "official" way and in a to then be able to update the data on the server dataset.
Only in this way can we develop truly powerful and fast applications since we can divide the load between calculations on the client (sometimes very fast and immediate) and server-side operations. I ask for their analysis on the problem, which is certainly good for Unigui's performances and tuning. Thank you!- 1
-
Hi,
ABAKSoft, thank you for the idea.
There is also a solution for DBgrid calculation in ChatGpt? 🙂 -
Hi Kurt,
yes I use calculation in Dbgrids.
But I can use also in "normal" UniDb components.
In short I want to say how to perform calculation at store level or at field level, WITHOUT call the server;
I cannot call the server every time for perform fieldc= fielda+ fieldb, if all value are on the client. Especially on fast insertion in Grids (like invoices or expense reports);
Server calculation are ok, but for IMMEDIATE calculation I must perform them on the client (same also for immediate checks or limits).
Have you a solution?
Thanks -
Fred, you always have lots of interesting news, well done!
-
calm down, calm down, don't rush, one solution at a time, please!
:-)- 1
-
Hi,
How can perform calculations (or checks) only on the client side?
I mean field c=field a+field b, but directly in the client store or on the values present directly in the editors (DB) that are in the form.
But all on client side, without making ajax calls to the server?
(Server dataset must be updated on post record)Thank you
- 1
-
Hi Sherzod, any way for solve my traffic problem (which is useful to everyone)?
This is all that's missing to be able to distribute my application 🙂
Thanks -
Yes, Sherzod.
(we could have users who work for the competition, who would continue endlessly scrolling the grids while holding down the up and down keys).
I want to align the server only on single actions, and double click (or enter) already works perfectly.
I just need the same key action from buttons (on mobile it is mandatory). But selectionchange must be disabled. I clearly need this to prevent users from crashing the system simply by holding down the arrow keys. -
So no way to simulate (or perform) a double click from a button (or any other action on the grid)?
-
Or a javascript command that tells the server to synchronize the position of the current record in the dataset...
-
I should send you a simple form with a button to a UniDbgrid...
What I want to achieve is to double-click on the grid, not with the mouse, but through the code under the pressure of a button (or an action). So I get the server to synchronize again on the current grid record.
No possible solution? -
Hi Sherzod,
is a standard TUnidbGrid;
object gridLista: TUniDBGrid
Left = 16
Top = 16
Width = 761
Height = 307
Hint = ''
ClientEvents.ExtEvents.Strings = (
'selectionchange=function selectionchange(sender, selected, eOpts' +
')'#13#10'{'#13#10' return false;'#13#10'}')
PagingBarAuxControl = lblTotRecord
DataSource = D_Lista
Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgRowSelect, dgConfirmDelete, dgAutoRefreshRow]
ReadOnly = True
LoadMask.Message = 'Caricamento Dati...'
LayoutConfig.Region = 'center'
BorderStyle = ubsFrameLowered
TrackOver = False
TabOrder = 1
PreventWrap = True
Exporter.Enabled = True
OnAjaxEvent = gridListaAjaxEvent
OnColumnSort = gridListaColumnSort
OnDblClick = gridListaDblClick
OnClearFilters = gridListaClearFilters
OnColumnFilter = gridListaColumnFilter
Columns = <
item
FieldName = 'id'
Title.Caption = 'ID'
Width = 47
Sortable = True
Menu.MenuEnabled = False
Menu.ColumnHideable = False
end
item
FieldName = 'com_comune'
Title.Caption = 'Comune'
Width = 304
Sortable = True
Menu.MenuEnabled = False
Menu.ColumnHideable = False
end
item
Flex = 1
FieldName = 'com_prov'
Title.Caption = 'Prov'
Width = 67
Sortable = True
Menu.MenuEnabled = False
Menu.ColumnHideable = False
end>
end
-
Hi Sherzod,
thanks, I have already tested this solution. But that solution don't works for me for this scenario. It permits to call the server for every scroll (also non continuous).
I want that dataset records on server are syncronized only with doubleclick. Ant this already works optimal because there are no calls on grid scroll, but server is updated on doubleclick..
I need simply a way for "force" pressing doubleclick on the grid from JS (called from a button or an action) 🙂
Thanks a lot -
HI,
for "security" reasons (I don't know my users), I have inhibited the repeated calls to the server that occur when the user continuously scrolls through the records ("return false" in Mygrid.ClientEvents.ExtEvents.Values['selectionchange ']).
When I double-click on the record, UNigui calls the server and synchronizes the current record so I can show the detail form.
I need to perform the same operation from a UniButton.
I need to call doubleclick event on the client from a Unibutton.
Thanks -
Hi, I need to simulate doubleclick press for select a row in UniDbgrid, but from a UniButton, so I need help on the JS code to inject.
Thanks in advance!
-
OK, Norm. I understand 🙂
-
Hi Norm,
Thanks so much for the detailed explanation. Very interesting.
But a spontaneous question arises in my mind:
At this point, if Unigui must basically act as a backend server, why not use VueJs as a frontend and specialized tools written in Delphi, such as Xdata, Mormot, KbmMW, DelphiMVCFramework, as backend?
Thanks a lot -
Interesting topic...
Is there any example of how you use Unigui as a backend? -
Hi,
I have always ask for a Combobox or Lookup with a list of display values and and corresponding values to be assigned in the field below.
Now I can with dataset lookups; I need also a simple editor with a list of display values and a list of corrispondent keys.
I add the request (made many times) for a well-formatted and multi-column table in the popup (with headers and separation lines).
If it already exists tell me where I can find it 🙂
Good job!- 2
- 2
How to Integrate flat bed scanner with UniGui
in General
Posted
Hi,
You can create a unigui application (localhost:8000 for example) in which the scanner or printer is managed, as if it were a normal desktop VCL application. This application must run on the PC where the scanner is installed.
In the application that runs in the browser you need to call "localhost:8000" and pass the necessary parameters and receive the desired output.