In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Error en Browse
-
- Mensajes: 192
- Registrado: Vie Mar 15, 2013 12:32 am
Error en Browse
Hola Equipo
Quisiera saber donde está mi error al editar un browse
El Código es :
METHOD BrowseColumn4PostEdit( oSender, Value, lCanceled, nKey ) CLASS DepuraInve
WITH OBJECT ::oMovi
:Refresh()
:Refresh()
:FastEdit()
:Ajus := Value - :Princi
:FastUpdate()
:FastEdit()
:Importe := Round(:Costo * Value,0)
:FastUpdate()
END
El mensaje es:
En la versión 6.2 al segundo intento acepta el dato.
En la versión 7.2 falla totalmente
Gracias por su apoyo
Daniel Pechir Tager
Quisiera saber donde está mi error al editar un browse
El Código es :
METHOD BrowseColumn4PostEdit( oSender, Value, lCanceled, nKey ) CLASS DepuraInve
WITH OBJECT ::oMovi
:Refresh()
:Refresh()
:FastEdit()
:Ajus := Value - :Princi
:FastUpdate()
:FastEdit()
:Importe := Round(:Costo * Value,0)
:FastUpdate()
END
El mensaje es:
En la versión 6.2 al segundo intento acepta el dato.
En la versión 7.2 falla totalmente
Gracias por su apoyo
Daniel Pechir Tager
- Adjuntos
-
- ERROR.png (68.16 KiB) Visto 2527 veces
- ignacio
- Site Admin
- Mensajes: 9256
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Error en Browse
Código: Seleccionar todo
WITH OBJECT ::oMovi
:FastEdit()
:Ajus := Value - :Princi
:Importe := Round(:Costo * Value,0)
:FastUpdate()
END WITH
-
- Mensajes: 192
- Registrado: Vie Mar 15, 2013 12:32 am
Re: Error en Browse
Gracias Ignacio
Ya cambié el código y ahora muestra 2 errores y ya no cambia el valor del campo ni con la versión 6.2
Saludos
Ya cambié el código y ahora muestra 2 errores y ya no cambia el valor del campo ni con la versión 6.2
Saludos
- Adjuntos
-
- ERROR2.png (37.02 KiB) Visto 2490 veces
-
- ERROR3.png (55.81 KiB) Visto 2490 veces
- ignacio
- Site Admin
- Mensajes: 9256
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Error en Browse
Hola,
Mande un pequeño ejemplo que reproduzca el error. Le ruego no mande su propio código. Ha de ser un ejemplo realizado específicamente para mostrar el error con el menor número de líneas de código. Gracias de antemano.
Un saludo
Mande un pequeño ejemplo que reproduzca el error. Le ruego no mande su propio código. Ha de ser un ejemplo realizado específicamente para mostrar el error con el menor número de líneas de código. Gracias de antemano.
Un saludo
-
- Mensajes: 192
- Registrado: Vie Mar 15, 2013 12:32 am
Re: Error en Browse
Estimado Ignacio
Como lo comenté desde que se lanzó la versión 7, nunca se me presentó éste problema en mi código
Es curioso que no sucede en todos los TBrowses de mi ERP aunque tengan las mismas propiedades y operaciones similares
Lo estoy resolviendo con comandos directos a MySQL como el siguiente
METHOD RegActualClick( oSender ) CLASS Ajusaldos
cCmdQuery := "update "+cArch+" set tven = 1 where nucuenta = '"+cThis+"'"
AppData:oMySqlDS:Execute( cCmdQuery )
WITH OBJECT ::oAjustes
:Refresh()
:Skip()
END
RETURN Nil
Pero insisto que algo cambió de la versión 6 a la 7
¿ Le suena que haya habido algún cambio en las nuevas versiones ?
Quisiera ya poder migrar ahasta la versión 8, ya que me estoy quedando atrás
Saludo afectuoso
Como lo comenté desde que se lanzó la versión 7, nunca se me presentó éste problema en mi código
Es curioso que no sucede en todos los TBrowses de mi ERP aunque tengan las mismas propiedades y operaciones similares
Lo estoy resolviendo con comandos directos a MySQL como el siguiente
METHOD RegActualClick( oSender ) CLASS Ajusaldos
cCmdQuery := "update "+cArch+" set tven = 1 where nucuenta = '"+cThis+"'"
AppData:oMySqlDS:Execute( cCmdQuery )
WITH OBJECT ::oAjustes
:Refresh()
:Skip()
END
RETURN Nil
Pero insisto que algo cambió de la versión 6 a la 7
¿ Le suena que haya habido algún cambio en las nuevas versiones ?
Quisiera ya poder migrar ahasta la versión 8, ya que me estoy quedando atrás
Saludo afectuoso
- ignacio
- Site Admin
- Mensajes: 9256
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Error en Browse
Buenos días,
Es usted la única persona que se ha quejado de este problema. Le insisto, que nos mandé un pequeño ejemplo que muestre el error. Eso es todo lo que le puedo decir. Lo siento.
Un saludo
Es usted la única persona que se ha quejado de este problema. Le insisto, que nos mandé un pequeño ejemplo que muestre el error. Eso es todo lo que le puedo decir. Lo siento.
Un saludo
-
- Mensajes: 192
- Registrado: Vie Mar 15, 2013 12:32 am
Re: Error en Browse
Hola Ignacio
Muchas gracias po sus atenciones y perdón por mi necedad pero:
Exactamente el mismo código compilado con versión 6 funciona y con versión 7 falla
Quiero probar si con la versión 8 desaparece el problema pero ahora tengo problemas
con el Setup de la versión 8 que ya reporté en otro Post
Saludo afectuoso
Daniel Pechir Tager
Muchas gracias po sus atenciones y perdón por mi necedad pero:
Exactamente el mismo código compilado con versión 6 funciona y con versión 7 falla
Quiero probar si con la versión 8 desaparece el problema pero ahora tengo problemas
con el Setup de la versión 8 que ya reporté en otro Post
Saludo afectuoso
Daniel Pechir Tager
- ignacio
- Site Admin
- Mensajes: 9256
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Error en Browse
Ya respondido.
En cualquier caso, su código no es correcto, No tienen sentido esas llamadas a Refresh(), ni tampoco la operación de Update() en dos pasos.
Insisto, mande un ejemplo. Sin él, nada podemos hacer para ayudarle.
Saludos
En cualquier caso, su código no es correcto, No tienen sentido esas llamadas a Refresh(), ni tampoco la operación de Update() en dos pasos.
Insisto, mande un ejemplo. Sin él, nada podemos hacer para ayudarle.
Saludos
-
- Mensajes: 192
- Registrado: Vie Mar 15, 2013 12:32 am
Re: Error en Browse
Gracias Ignacio por sus atenciones
Ya cambié código y funcionó.
Ahora el Browse no está respetando el ancho de las columnas, las abre y las hace mas anchas y hay que reducirlas manualmente
Ya revisé todas las propiedades y no encuentro como evitar dicho comportamiento
Saludos cordiales
Daniel Pechir Tager
Ya cambié código y funcionó.
Ahora el Browse no está respetando el ancho de las columnas, las abre y las hace mas anchas y hay que reducirlas manualmente
Ya revisé todas las propiedades y no encuentro como evitar dicho comportamiento
Saludos cordiales
Daniel Pechir Tager
-
- Mensajes: 154
- Registrado: Vie Mar 14, 2008 7:25 am
- Ubicación: Almería
Re: Error en Browse
Buenos días Daniel,
Prueba a desmarcar Soporte de pantallas de alta resolución (HRD) en Herramientas-opciones generales-interfaz.
Saludos.
Miguel.
Prueba a desmarcar Soporte de pantallas de alta resolución (HRD) en Herramientas-opciones generales-interfaz.
Saludos.
Miguel.
-
- Mensajes: 192
- Registrado: Vie Mar 15, 2013 12:32 am
Re: Error en Browse
Muchas gracias Miguel
Dios te Bendice
Daniel
Dios te Bendice
Daniel
Re: Error en Browse
Hola a todos,
con respecto a esto:
1) El escalado que hace windows es más preciso, en el sentido de que todo lo ajusta exactamente al tamaño que tenía originalmente pero escalado a lo que tengamos definido. P.ej., si tenemos una escala de 125%, un formulario que tenga el tamaño de 800x600 pixels originalmente, Windows lo mostrará en un tamaño de 1000x750, para que se vea más grande en pantalla, de acuerdo con la escala que tenemos configurada. Pero el método para escalarlo es simplemente proyectar cada pixel del formulario original al espacio que ocupa con la nueva escala. En el caso de una escala del 125% cada 4 píxeles originales se tienen que convertir en 5 píxeles, y windows hace "lo que puede". El resultado es bastante bueno, pero esto produce que tanto las imágenes como, sobretodo, los textos se vean borrosos, incluido el editor de código. Aquí tenéis un ejemplo de cómo se ve (lo he ampliado al 200% para que ve aprecie mejor):
2) Cuando se marca la opción HRD y es el propio IDE el que hace el escalado, no es tan preciso como el de windows, en términos de píxeles. Si usamos una escala del 125%, significa que un formulario de 800x600 píxeles se va a mostrar a un tamaño de 1000x750, sin proyectar nada, simplemente ocupando ese espacio realmente. Por supuesto, esto tiene algunos problemas, como que al volver a guardar el formulario el IDE tiene que "desescalar" todo, y teniendo en cuenta que los píxeles son valores enteros, no decimales, se pierde siempre algo de precisión. Claro que no son solamente las coordenadas las que hay que escalar y desescalar; también hay que hacerlo con algunas propiedades, como el tamaño de las columnas de un browse. Y seguramente este es el problema que estáis detectando, que esa propiedad no se está escalando bien. Por otro lado, al hacerse el pintado sobre los píxeles reales y no sobre una proyección, tanto las imágenes como los textos son perfectamente nítidos. Aquí tenéis la misma captura pero con la opción HRD marcada:
Como podéis ver, cada opción tiene sus ventajas e inconvenientes, y por eso no lo impusimos sin más, sino que lo dejamos configurable para que cada usuario optara por lo que prefiera. Si a alguien no le importa que todo se vea borroso a cambio de que no se desajuste nada, pues perfecto. En cambio si otro usuario prefiere verlo todo nítido aún a costa de que puede haber ajustes en las posiciones y tamaños de los controles, pues también está bien.
Y finalmente, esos desajustes que se pueden producir pueden ser intrínsecos (p.ej., dividir 18 entre 125% da como resultado 14.4, y se convierte a 14). Estas conversiones producen desajustes mínimos, y no nos deben preocupar. Pero estos desajustes también pueden deberse a algún error u omisión por nuestra parte. Si miráis los fuentes de las clases de Xailer, podréis ver que algunas propiedades tienen como "editor de propiedades" PE_Scale, que es el que se encarga de hacer estas transformaciones. Si alguna propiedad necesita ser escalada y no hemos puesto PE_Scale se va a producir este desajuste. Por eso, os ruego que nos comuniquéis cualquier error de este tipo que podáis detectar para corregirlo lo antes posible.
Eso es todo, y disculpad por la chapa, pero creo que este tema merecía una explicación.
con respecto a esto:
me gustaría aclarar una cosa. La opción de soporte HRD se añadió para que el IDE sea "DPI aware". Es decir, con esto marcado, el IDE "reconoce" la verdadera resolución del monitor y escala los formularios y controles a lo que se haya definido en el panel de control de windows. Sin esto marcado, windows oculta al IDE la verdadera resolución del monitor, y es el propio windows el que se encarga de escalarlo todo. Esto tiene dos lecturas:mcastabaron escribió: ↑Jue Ago 24, 2023 8:43 am Prueba a desmarcar Soporte de pantallas de alta resolución (HRD) en Herramientas-opciones generales-interfaz.
1) El escalado que hace windows es más preciso, en el sentido de que todo lo ajusta exactamente al tamaño que tenía originalmente pero escalado a lo que tengamos definido. P.ej., si tenemos una escala de 125%, un formulario que tenga el tamaño de 800x600 pixels originalmente, Windows lo mostrará en un tamaño de 1000x750, para que se vea más grande en pantalla, de acuerdo con la escala que tenemos configurada. Pero el método para escalarlo es simplemente proyectar cada pixel del formulario original al espacio que ocupa con la nueva escala. En el caso de una escala del 125% cada 4 píxeles originales se tienen que convertir en 5 píxeles, y windows hace "lo que puede". El resultado es bastante bueno, pero esto produce que tanto las imágenes como, sobretodo, los textos se vean borrosos, incluido el editor de código. Aquí tenéis un ejemplo de cómo se ve (lo he ampliado al 200% para que ve aprecie mejor):
2) Cuando se marca la opción HRD y es el propio IDE el que hace el escalado, no es tan preciso como el de windows, en términos de píxeles. Si usamos una escala del 125%, significa que un formulario de 800x600 píxeles se va a mostrar a un tamaño de 1000x750, sin proyectar nada, simplemente ocupando ese espacio realmente. Por supuesto, esto tiene algunos problemas, como que al volver a guardar el formulario el IDE tiene que "desescalar" todo, y teniendo en cuenta que los píxeles son valores enteros, no decimales, se pierde siempre algo de precisión. Claro que no son solamente las coordenadas las que hay que escalar y desescalar; también hay que hacerlo con algunas propiedades, como el tamaño de las columnas de un browse. Y seguramente este es el problema que estáis detectando, que esa propiedad no se está escalando bien. Por otro lado, al hacerse el pintado sobre los píxeles reales y no sobre una proyección, tanto las imágenes como los textos son perfectamente nítidos. Aquí tenéis la misma captura pero con la opción HRD marcada:
Como podéis ver, cada opción tiene sus ventajas e inconvenientes, y por eso no lo impusimos sin más, sino que lo dejamos configurable para que cada usuario optara por lo que prefiera. Si a alguien no le importa que todo se vea borroso a cambio de que no se desajuste nada, pues perfecto. En cambio si otro usuario prefiere verlo todo nítido aún a costa de que puede haber ajustes en las posiciones y tamaños de los controles, pues también está bien.
Y finalmente, esos desajustes que se pueden producir pueden ser intrínsecos (p.ej., dividir 18 entre 125% da como resultado 14.4, y se convierte a 14). Estas conversiones producen desajustes mínimos, y no nos deben preocupar. Pero estos desajustes también pueden deberse a algún error u omisión por nuestra parte. Si miráis los fuentes de las clases de Xailer, podréis ver que algunas propiedades tienen como "editor de propiedades" PE_Scale, que es el que se encarga de hacer estas transformaciones. Si alguna propiedad necesita ser escalada y no hemos puesto PE_Scale se va a producir este desajuste. Por eso, os ruego que nos comuniquéis cualquier error de este tipo que podáis detectar para corregirlo lo antes posible.
Eso es todo, y disculpad por la chapa, pero creo que este tema merecía una explicación.