bbm Posted August 1, 2021 Share Posted August 1, 2021 Hi I'm using a UniDBGrid to display data. To limit the amount of data, there are some filters available in the grid. The data is read in again each time in the OnColumnFilter event. The data is read in via a REST server. In order to visualize the start of the process, I would like to output an information via ShowMask. Unfortunately, this message only appears after the data has been read in, but before it is displayed in the grid. Since the reading process can sometimes take a long time, it would be nice if the message appeared when the filter was changed. I am using the following source code: try ShowMask ('any text')); UniSession.Synchronize; ..... Reading data ..... finally HideMask; end; Unfortunately, this has no effect. Does anyone have any idea why this could be? Could that have something to do with the fact that I display individual frames in a UniPageControl component? I would be very open to an idea. Best regards Link to comment Share on other sites More sharing options...
picyka Posted August 1, 2021 Share Posted August 1, 2021 22 minutes ago, bbm said: Oi Estou usando um UniDBGrid para exibir dados. Para limitar a quantidade de dados, existem alguns filtros disponíveis na grade. Os dados são lidos novamente cada vez no evento OnColumnFilter. Os dados são lidos através de um servidor REST. Para visualizar o início do processo, gostaria de obter uma informação via ShowMask. Infelizmente, esta mensagem só aparece depois que os dados foram lidos, mas antes de ser exibido na grade. Como o processo de leitura às vezes pode levar muito tempo, seria bom se a mensagem aparecesse quando o filtro fosse alterado. Estou usando o seguinte código fonte: tentar ShowMask ('qualquer texto')); UniSession.Synchronize; ..... Leitura de dados ..... finalmente HideMask; fim; Infelizmente, isso não tem efeito. Alguém tem alguma ideia por que isso poderia ser? Isso poderia ter algo a ver com o fato de eu exibir quadros individuais em um componente UniPageControl? Eu estaria muito aberto a uma ideia. Atenciosamente Maybe it's the event where you're calling this code Link to comment Share on other sites More sharing options...
bbm Posted August 1, 2021 Author Share Posted August 1, 2021 Hi, this means what? Best regards Link to comment Share on other sites More sharing options...
picyka Posted August 1, 2021 Share Posted August 1, 2021 17 minutos atrás, bbm disse: Oi isso significa o quê? Atenciosamente Post your code, and in which event it is being used Link to comment Share on other sites More sharing options...
bbm Posted August 1, 2021 Author Share Posted August 1, 2021 Hi, the problem is, that the source is to big. The event is the OnColumnFilter of the DBGrid. Best regards Link to comment Share on other sites More sharing options...
irigsoft Posted August 1, 2021 Share Posted August 1, 2021 @bbmHello, If You try to remove " UniSession.Synchronize;" ? Link to comment Share on other sites More sharing options...
bbm Posted August 2, 2021 Author Share Posted August 2, 2021 Hi, this has no effect. I thought, that this is very important, that the client gets a refresh? Best regards Link to comment Share on other sites More sharing options...
eduardosuruagy Posted August 2, 2021 Share Posted August 2, 2021 I go through that too, in several places in my code it doesn't work. Link to comment Share on other sites More sharing options...
Sherzod Posted August 2, 2021 Share Posted August 2, 2021 3 hours ago, bbm said: this has no effect. I thought, that this is very important, that the client gets a refresh? Hi, How can we reproduce your issue? Can you make a simple testcase? Link to comment Share on other sites More sharing options...
Sherzod Posted August 2, 2021 Share Posted August 2, 2021 UniMainModule -> EnableSynchronousOperations = True ? Link to comment Share on other sites More sharing options...
bbm Posted August 2, 2021 Author Share Posted August 2, 2021 Hi Sherzod, I understand the question very well. The only problem is that the application is very complex at this point. Possibly the problem is the combination of different frames already described. I'll test a few more things myself. Is the UniSession.Synchronize approach basically the right approach? In the demo application, the supdate.exe, you can clearly see when debugging that the display is updated when UniSession.Synchronize is called. This does not happen in my application. Best regards Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now