Validar cálculos y cambios

Hola experto quisiera molestarte con la siguiente consulta:
En un grid tengo unas fórmulas que cuando ingresan un valor hace el calculo y lo agrega en la siguiente columna del grid, ahora bien hay veces que el resultado es cambiado a mayor o menor, pero a como lo tengo ahora al momento que se movilicen en el grid los resultados cambian a la fórmula original y no se queda el modificado.
Como podre hacer para que media vez se halla realizado el calculo o modicado al pasar nuevamente por esta celda del grid no me cambie nuevamente el resultado al original.
Saludos,
Mishel

1 Respuesta

Respuesta
1
Claro Mishel, si tus fórmilas están en los eventos beforerowcolumnchange o afterrowcolumnchange se reevaluarán los resultados cada vez que te muevas por el grid.
Pero si entiendo tu problema.
Por que no pruebas agregar una columna extra para editar el valor sugerido (que es el que te calcula el sistema). No sé si me explico. Ahora estás editando el valor calculado directamente sobre la celda que lo calcula. Cuando te mueves se recalcula !
Lo que te sugiero es que agregues una columna adicional que tome el valor de la fórmula (propiedad value) y haces la edición sobre esa columna.
Si tienes dudas me avisas.
Creo que funcionaria pero fíjate que es un grid con nueve columnas y hay cuatro columnas con fórmulas y todos los resultados tienen que ser editables.
Actualmente tengo las fórmulas en el evento valid
Estamos en un círculo cerrado, y debemos buscar una solución que nos permita indicar al sistema que debe dejar de recalcular el resultado de las celdas que ya fueron edidatas.
Se me ocurre que, en lugar de crear una columna adicional para el grid, generes un campo numérico (1) para cada columna editable de tu cursor, y que dicho campo se inicialice con valor 0.
Cuando vayas editando los resultados de las fórmulas cambias el valor del nuevo campo a 1.
Finalmente en tus fórmulas deberás leer el valor de este nuevo campo para saber si debe recalcular o no. Es decir debes establecer como condición para el cálculo que el valor del nuevo campo sea 0. Si el valor es 1 no se recalcula.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas