@blanyi muchas gracias por el apoyo, estoy contigo en todo lo que comentas, de hecho esto lo comenté en soporte el 22 de julio de 2013 y me propusieron agregarlo como idea y también me plantearon una media-solución como lo que propone @wikan al aceptar mostrar un mensaje de que ha cambiado la ficha.
Por qué digo media-solución? Porque esta solución no sirve del todo, imagina que tienes 20 campos en el formulario de edición, haces cambios en 2 de ellos pero al moverte y usar el scroll sin querer cambias otros, el cartel le informará que hay cambios y de hecho el usuario aceptará, pero seguimos en lo mismo, cambio el valor de combobox o aumentó el valor en un campo numérico sin darse cuenta.
En la otra opción de tener el form bloqueado ocurre lo mismo! Lo desbloquea y cambia cosas y debemos confiar nosotros como programador que al hacer este cambio no usó la rueda del ratón sin querer en otros campos que no quería cambiar. Es por eso que he tenido que poner candados y bloquear todos los campos sensibles, es la única forma que tengo de asegurarme.
Cuando hablo de que el usuario hace cambios sin querer me refiero a que el hecho de mover la rueda sobre un campo no significa que tiene que cambiar sus valores. Distinto es que hagas click sobre el campo y luego utilices la rueda del ratón para cambiar sus valores. Y esto es lo que más fastidia al usuario y a nosotros. Lo normal es que si quiero cambiar algo hago click en el objeto y a partir de allí uso la rueda o el teclado da igual, pero suponer que por estar encima ya significa cambiar algo no me parece muy normal, por lo menos en el 99% de las aplicaciones de introducción de datos esto no funciona así.
Tienes razón Manuel que es muy cómodo cambiar los valores con la rueda, eso no lo discuto, pero si quiero tener la seguridad de que antes se ha hecho foco sobre el objeto y esta seguridad actualmente no la tenemos.
Este comportamiento empezó desde la 7.10, es decir que si en tu aplicación contabas con 30 formularios de alta/modificación funcionando correctamente tienes que volver a re-diseñar todos los formularios con alguna de las media-soluciones propuestas, “Life is soft”??? De haber sabido que este comportamiento era así desde el principio igual te lo planteas antes, no cuando ya tienes todo funcionando y los usuarios adaptados a la forma de trabajar con tu aplicación. Luego tienes que ir a tu cliente y decirle “Tengo actualizaciones!” ellos muy contentos porque siempre llevas mejoras, pero en vez de ofrecerles cosas nuevas resulta que le tienes que complicar con checkbox o mensajes cuando nunca lo necesitaron y les dices “Es por seguridad”, seguridad de que? si hasta el momento todo funcionaba ok, si pero ahora moviendo la rueda del ratón puedes cambiar cosas sin querer, y te dicen “Ahh, pero esto antes no pasaba y en mis otros programas no funciona así, y si tu eres el programador porque no me lo dejas como antes?” A partir de aquí ya puedes empezar a inventarte alguna buena excusa y que te crean, cuando tu internamente ya sabes que esto ni lo puedes controlar, ni es un comportamiento normal y que con mucha suerte en alguna actualización volverá a comportarse como lo esperado y tendrás que volver a tocar todos los formularios nuevamente debido a que en una “Actualización” se decidió arbitrariamente cambiar este comportamiento.