CONTROL GRID - Refresco de información muy lento

HMG en Español

Moderator: Rathinagiri

Izdeo
Posts: 17
Joined: Sat Jun 28, 2014 7:17 am

Re: CONTROL GRID - Refresco de información muy lento

Post by Izdeo »

Hola Claudio
Muchas gracias por tu aportación.

Felicidades, efectivamente ahora el control GRID se muestra sin parpadeos, pero continúa muy lento al mostrar la información, y no es aceptable.

Existe una gran difrencia de velocidad comparativamente con la versión 3.0.39 que uso actualmente.

Ademas al usar variables dinamicas en el control GRID los campos no muestran la información correctamente. Aparecen caracteres extraños de forma aleatoria. No puedo utilizar este parche.

Las nuevas mejoras realizadas en los controles deberian contemplar la posible pérdida de rendimiento.

Conoces si existe algún parche que evite los parpadeos en la version 3.0.39??

Gracias

_____________________________________
(Google)

Hello Claudio
Thank you very much for your input.

Congratulations, now effectively GRID control is displayed without flickering, but still very slow to display information, and is not acceptable.

There is a comparatively high speed difrencia with version 3.0.39 I currently use.

Also when using dynamic variables in GRID Control fields do not display the information correctly. Strange characters appear randomly. I can not use this patch.

The new enhancements to the controls should consider the potential loss of performance.

Know if there is a patch that prevents flicker in version 3.0.39 ??

Thank you
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: CONTROL GRID - Refresco de información muy lento

Post by Javier Tovar »

Hola Izdeo,

Tienes que instalar la versión HMG.3.3.1 e intalar el parche 3, que sugirió el Dr. Claudio Soto, Ese parche no sirve en la versión 3.0.39, se que es un poco laborioso pasarse de la versión que tienes a la actual, pero tienes que actualizarte! y la velocidad del Grid en HMG.3.3.1 es aceptable con gran cantidad de información, los caracteres que te salen es por que no corresponden con la versión de HMG. Tienes que:

1.- Descargar la nueva versión, HMG.3.3.1
2.- Sustituir las carpetas que vienen en el parche 3 por las que están en HMG\
3.- Recompila todas las librerias, BuildAllLib.bat. Al compilar te pedirá que si quieres compilar en ANSI o UNICODE, si decides compilar en Unicode... tus *.prg deben de tener la codificación en UTF-8 sin Bom (esta característica lo tiene los editores como el Notepad++), ya que de lo contrario acentos y otros caracteres no se visualizaran bien en los Label, Grid...., Al inicio de tu *.prg principal poner SET CODEPAGE TO UNICODE.
4.- Listo!

Saludos
//////////////////////////////////////////////////////////////////////////////////////////////////////
Hello Izdeo,

You have to install the version HMG.3.3.1 and install the patch 3, suggested Dr. Claudio Soto, This patch does not work in version 3.0.39, it is a bit laborious passed the version you have on the current but you have to upgrade! and speed of Grid HMG.3.3.1 is acceptable with lots of information, the characters come to you is that do not match the version of HMG. You have to:

1. Download the new version, HMG.3.3.1
2. Replace the folders that come in patch 3 which are in HMG \
3. Recompile all libraries, BuildAllLib.bat. When compiling it will ask you if you want to compile in ANSI or UNICODE, if you compile in Unicode ... your * prg must be encoded in UTF-8 without Bom (this feature has editors like Notepad ++) because otherwise accents and other characters are not displayed well in the Label, Grid ...., * at the beginning of your main prg put CODEPAGE tO SET UNICODE.
4. Done!

regards
Izdeo
Posts: 17
Joined: Sat Jun 28, 2014 7:17 am

Re: CONTROL GRID - Refresco de información muy lento

Post by Izdeo »

Hola Javier,

Agradezco toda tu atención y ayuda.
Quizá no me explique bien anteriormente.

El parche fue instalado y compilado correctamente para la version 3.3.1.
Todos los pasos que describes ya los hice de forma correcta tras instalar la nueva versión 3.3.1, tal y como también describió el Dr.Claudio.

Tengo claro que el parche no sirve para la versión 3.0.39. Yo sólo preguntaba si existía algún parche válido para la versión que utilizo 3.0.39.

Con el parche instalado efectivamente el control grid ya no tiene el problema del parpadeo y es perfecto, pero la velocidad de refresco sigue siendo inaceptable y muy molesto de operar.
Mi aplicación opera fundamentalmente con un grid que contiene cierta catidad de campos y filas (12columnas x 40 filas). Tres de los campos o columnas son dinámicos y el control grid ocupa toda la dimensión de la pantalla normalmente 1024x768 puntos.

Respecto de los caracteres aleatorios solo ocurre en los campos dinámicos del control grid, es decir, en el dato que muestra el control grid, contenido en la base de datos.
Todo el resto de texto se muestra correctamente en el control grid y en la aplicación.

Este problema solo ocurre si se instala el parche con cualquiera de las codificaciones ansi o unicode y sólo en el control grid. En el resto de controles todo se visualiza correctamente con cualquiera de las codificaciones ansi o unicode que están correctamente cargadas.

Si no se instala el parche, toda la aplicación funciona correctamente, con el único problema del parpadeo en el grid.

Por estas razones entiendo que hay un problema en el parche, y que por otro lado el control grid se ha convertido en un elemento muy complejo tras las nuevas y multiples implementaciones que se han añadido en este control, que ahora sólo puede ser usado en ordenadores muy rápidos y de última generación donde este problema se minimiza.

Como ya he comentado m aplicación opera fundamentalmente con un control grid. Se trata de una aplicación profesional ya utilizada por multiples usuarios multiples paises, y no es posible por tanto, dentro de un ámbito profesinal y serio, ofrecer actualizaciones de menor calidad y rendimiento.

Si no es posible mejorar el rendimiento del grid y el problema del parpadeo en las nuevas versiones, creo que estoy condenado a continuar con la versión 3.0.39.
Desde luego, confío en que con la ayuda de este foro y la de los maestros, esto no será así.

Gracias
____________________________________
(Google)

Hi Javier,

I appreciate all your attention and help.
Perhaps I did not explain well above.

The patch was successfully installed and compiled for version 3.3.1.
All the steps you described and did correctly after installing the new version 3.3.1, as also described Dr. Claudio.

I am clear that the patch does not work for version 3.0.39. I was just wondering if there was a valid use for the version 3.0.39 patch.

With the patch installed grid control actually no longer flicker noise and perfect, but the refresh rate is still unacceptable and very annoying to operate.
My application works mainly with a grid that contains certain fields catid and rows (12columnas x 40 rows). Three of the fields or columns are dynamic grid control and fills the screen dimension usually 1024x768 pixels.

Regarding the random character only occurs in the dynamic fields of grid control, ie the data that shows the grid control contained in the database.
All other text is displayed correctly in the grid control and application.

This problem only occurs if the patch with either ANSI or Unicode encodings and only in the grid control is installed. In all other controls are displayed correctly with either ANSI or Unicode encodings that are loaded correctly.

If the patch is installed, the entire application works fine, the only problem with flicker on the grid.

For these reasons I understand that there is a problem with the patch, and on the other side of the grid control has become a very complex element after the new and multiple implementations that have been added in this control, which can now only be used on computers very fast and last generation where this problem is minimized.

As I said m application works mainly with a grid control. It is a professional application and used by multiple users multiple countries, and therefore it is not possible within a profesinal and serious level, provide updates of lower quality and performance.

If you can not improve the performance of grid and flicker noise in the new versions, I think I'm doomed to continue with version 3.0.39.
Of course, I am confident that with the help of this forum and the teachers, it will not.

Thank you
User avatar
Agil Abdullah
Posts: 204
Joined: Mon Aug 25, 2014 11:57 am
Location: Jakarta, Indonesia
Contact:

Re: CONTROL GRID - Refresco de información muy lento

Post by Agil Abdullah »

Hi Izdeo,

To make your problem simple and easy to overcome, this is my advice:

1. Copy your programs only those containing of codes of GRID with problem you are facing. Remove anything else.

2. Copy your DBF then replace all records with fake records on the copied DBF. Make all records same if you wish.

3. BUILD the copied prg with HMG.3.3.1. Test it.

4. If you find it ok, your problem is fixed.

5. If error remains the same or it works too slow as you don't expect, upload the copied progs and the copied dbf. This community will help after examining your codes.

I Wish you luck.
Agil Abdullah Albatati (just call me Agil)
Programmer Never Surrender
User avatar
mol
Posts: 3774
Joined: Thu Sep 11, 2008 5:31 am
Location: Myszków, Poland
Contact:

Re: CONTROL GRID - Refresco de información muy lento

Post by mol »

I think it's internal problem with grid. Maybe adapting to Unicode slowed down this control? We should review code.
But, it's only my humble opinion
User avatar
srvet_claudio
Posts: 2220
Joined: Thu Feb 25, 2010 8:43 pm
Location: Uruguay
Contact:

Re: CONTROL GRID - Refresco de información muy lento

Post by srvet_claudio »

Izdeo wrote:Hola Claudio
Muchas gracias por tu aportación.

Felicidades, efectivamente ahora el control GRID se muestra sin parpadeos, pero continúa muy lento al mostrar la información, y no es aceptable.

Existe una gran difrencia de velocidad comparativamente con la versión 3.0.39 que uso actualmente.

Ademas al usar variables dinamicas en el control GRID los campos no muestran la información correctamente. Aparecen caracteres extraños de forma aleatoria. No puedo utilizar este parche.

Las nuevas mejoras realizadas en los controles deberian contemplar la posible pérdida de rendimiento.

Conoces si existe algún parche que evite los parpadeos en la version 3.0.39??

Gracias

_____________________________________
(Google)

Hello Claudio
Thank you very much for your input.

Congratulations, now effectively GRID control is displayed without flickering, but still very slow to display information, and is not acceptable.

There is a comparatively high speed difrencia with version 3.0.39 I currently use.

Also when using dynamic variables in GRID Control fields do not display the information correctly. Strange characters appear randomly. I can not use this patch.

The new enhancements to the controls should consider the potential loss of performance.

Know if there is a patch that prevents flicker in version 3.0.39 ??

Thank you
You could upload a complete example where you can appreciate the problem.

Sometimes the problems are due to the new version of HMG, the new version of MinGW and / or the new version of Harbor Used in last releases.
Sometimes MinGW gives me some headaches.
Izdeo wrote:Know if there is a patch that prevents flicker in version 3.0.39 ??
In file source\c_grid.c change in function HB_FUNC (INITLISTVIEW) the line:

Code: Select all

SendMessage(hbutton,LVM_SETEXTENDEDLISTVIEWSTYLE, 0, (LPARAM) (hb_parni(9)  | LVS_EX_FULLROWSELECT)  );
for this line:

Code: Select all

ListView_SetExtendedListViewStyle ( hbutton, hb_parni(9) | LVS_EX_FULLROWSELECT | LVS_EX_DOUBLEBUFFER);
Best regards.
Dr. Claudio Soto
(from Uruguay)
http://srvet.blogspot.com
Izdeo
Posts: 17
Joined: Sat Jun 28, 2014 7:17 am

Re: CONTROL GRID - Refresco de información muy lento

Post by Izdeo »

Hola,

Respecto a la versión 3.0.39
He intentado la propuesta del Dr.Caludio, modificando la linea indicada, montando los modulos en las carpetas 'includes' y 'sources', y compilando de nuevo todos los prg, sin éxito.

In file source\c_grid.c change in function HB_FUNC (INITLISTVIEW) the line:
SendMessage(hbutton,LVM_SETEXTENDEDLISTVIEWSTYLE, 0, (LPARAM) (hb_parni(9) | LVS_EX_FULLROWSELECT) );
for this line:
ListView_SetExtendedListViewStyle ( hbutton, hb_parni(9) | LVS_EX_FULLROWSELECT | LVS_EX_DOUBLEBUFFER);

_________________________
Por otro lado para la versión 3.3.1,

Finalmente he conseguido que el parche aportado por el Dr.Claudio funcione correctamente con el control grid.
Pero efectivamente sólo con codificación Unicode.

Ahora el refresco del contenido del control grid es perfecto y sin los molestos pardadeos.
Muchas gracias al Dr.Claudio por toda la ayuda aportada en este punto. :D

Ahora el control Grid funciona correctamente, aunque tengo que decir que continua siendo muy lento a la hora de desplazarse por la lista registro a resgistro,

Comparativamente:
V3.3.1 = 5 registros / Seg.
V3.0.39= 15 registros /Seg.

Hay posibilidad de aumentar la velocidad de desplazamiento de la lista del control Grid??

Gracias a todos de nuevo por todo vuestro interés. :D

___________________________
(Google)

hi,

With respect to version 3.0.39
I tried the proposed Dr.Caludio, changing the line indicated by mounting modules on folders 'includes' and 'sources' and recompiling all prg unsuccessfully.

In file source \ c_grid.c HB_FUNC change in function (INITLISTVIEW) the line:
SendMessage (hbutton, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, (LPARAM) (hb_parni (9) | LVS_EX_FULLROWSELECT));
For This line:
ListView_SetExtendedListViewStyle (hbutton, hb_parni (9) | LVS_EX_FULLROWSELECT | LVS_EX_DOUBLEBUFFER);

_________________________
In addition to version 3.3.1,

I eventually got the patch provided by Dr. Claudio function properly with the grid control.
But actually only Unicode encoding.

Now refresh the contents of the grid control is perfect and without pardadeos annoying.
Thank you very much to Dr. Claudio for his help at this point. :D

Now the Grid control works well, although I have to say remains very slow to scroll through the list of record resgistro,

comparatively:
V3.3.1 = 5 records / sec.
V3.0.39 = 15 records / sec.

Can be increased to some extent the speed of the Grid control list ??

Thank you :D
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: CONTROL GRID - Refresco de información muy lento

Post by Javier Tovar »

Hola Izdeo,

Puedes subir tu programa o un demo para verificar la velocidad?

Saludos

P.D.: Quiero probar mi cronometro! :)
Last edited by Javier Tovar on Sun Nov 16, 2014 8:19 pm, edited 1 time in total.
User avatar
andyglezl
Posts: 1461
Joined: Fri Oct 26, 2012 7:58 pm
Location: Guadalajara Jalisco, MX
Contact:

Re: CONTROL GRID - Refresco de información muy lento

Post by andyglezl »

In addition to version 3.3.1,

I eventually got the patch provided by Dr. Claudio function properly with the grid control.
But actually only Unicode encoding.

Now refresh the contents of the grid control is perfect and without pardadeos annoying.
Thank you very much to Dr. Claudio for his help at this point.
Hola Izdeo

Pero no has publicado tu solucion o si ? :roll:
Digo, para que el Dr. Claudio o alguien mas la implemente en la nueva version de HMG.
------------------------------------------------------------------------------------------------------
hi Izdeo

But you have not posted your solution or do you? :roll:
I mean, for Dr. Claudio or someone else implements it in the new version of HMG.
Andrés González López
Desde Guadalajara, Jalisco. México.
Izdeo
Posts: 17
Joined: Sat Jun 28, 2014 7:17 am

Re: CONTROL GRID - Refresco de información muy lento

Post by Izdeo »

hola,

Realizando algunas pruebas he podido observar que todo el software en general se relentiza al compilar en codificación Unicode. Aunque esto normalmente no es apreciable en el software, resulta muy considerable en el el control Grid cuando el software esta bajo esta codificación.
Quizá sea debido a la dificultad de manejar una codificación de mayor tamaño como es Unicode frente al reducido tamaño de Ansi.
Es necesario que el software siga siendo operarivo y mantenga cierta agilidad de uso incluso en máquinas más antiguas. Ciertamente existen muchos lugares donde todavia se usa xp para aprovechar el uso hardware antiguo.

Actualmente sigo obligado a complilar bajo la version 3.0.39 muy ágil, rápida y fiable con el único inconveniente de importancia del parpadeo del control grid.
No he conseguido quitar el parpadeo con la modificación propuesta por Dr.Claudio para la versión 3.0.39, quizá este haciendo algo mal.
Hay alguna otra forma de evitar parpadeo del control grid en esta versión??

Si alguien precisa ver la diferencia de velocidad del control grid en ambas versiones puedo preparar unos enlaces para descarga.

Saludos y muchas gracias

__________________________________________
(Google)

hi,

Doing some tests I have observed that all software generally slows when compiling in Unicode encoding. Although this is usually not noticeable in the software, it is very significant in the Grid control when the software is under this encoding.
Perhaps it is due to the difficulty of handling a larger coding as compared to the small size Unicode Ansi.
It is necessary that the software remains operarivo and maintain some agility for use even on older machines. Certainly there are still many places where xp is used to take advantage of using older hardware.

Currently I am still under the obligation to version 3.0.39 complilar very agile, fast and reliable with the only major drawback Flicker grid control.
I did not manage to remove the flicker with the amendment proposed by Dr. Claudio for version 3.0.39, this maybe doing something wrong.
Is there another way to avoid flashing grid control in this version ??

If someone needs to see the speed difference grid control in both versions I can prepare some links to download.

Greetings and thank you very much
Post Reply