Marcelo Via Giglio wrote:Biel,
yo hice una clase Tarray para trabajar con arrays como si fuera un dbf (hay varias implemenatciones de esto po ahi) y claro esta, hay cosas basadas en tDatabase, pero este problema que mencionas tambien se reproducia, como lo solucione?, es crear un buffer adicional, algo si
oData := dbData:buffer_blank() // te devuelve una estructura en blanco similar a la DB y pudes utilizar oData:<campo>, etc
oData := dbData:buffer_load() // te devuelve la estructura con los datos del reg actual
dbData:buffer_save( oData ) // salva el buffer en el registro actual
Gracias Marcelo, si eso es otra idea que tambien me habia rondado por la cabeza. Tener un Buffer separado para la edicion del registro, lo intentare implementar.
Yo habia pensado en algo similar, pero dentro de la propia clase. La idea era disponer de un segundo buffer para la edicion, y un data que marcara si se esta editando o añadiendo, y en funcion de ese data devolver de un buffer o del otro.
Ya veremos, ahora mismo tengo que seguir adelante con un proyecto y no tengo tiempo para seguir experimentando, pero en cuanto pueda, volvere sobre el tema.