Algo nuevo o es Error de TDolphin.?
Posted: Mon Oct 13, 2014 4:55 pm
Saludos, normalmente defino mis VAR con un switch de valor logico para controlar si es registro nuevo o es modificado, ejemplo:
aVar[1] := IIF( lNew, 0, oQry:campo1 ) // campo de tipo numero (int, double, decimal, etc)
aVAr[2] := IIF( lNew, space(10), oQry:campo2) // campo de tipo string
aVar[3] := IIF( lnew, date(), oQry:campo3 ) campo tipo fecha
hasta alli todo esta bien, el problema esta ocurriendo cuando grabo en _ y el valor de la VAR sigue siendo cero(0) o esta vacio, ya que no se graba en el campo el valor cero de la VAR sino se graba como NULL al igual que si la VAR esta vacia, esto hace que cuando voy a modificar mi campo y la VAR toma el valor del campo de la tabla, se inicia en NULL y asi no me permite editarlo, esto esta sucediendo en la ultima actualizacion de la LIB de TDolphin ya que por casualidad tenia una LIB vieja y alli si trabaja bien, el problema es que tengo sistemas de clientes donde valido si el valor del campo es cero o mayor que cero al igual que los tipos fechas y ahora esas validaciones me arrojan error ya que el valor del campo numerico es NULL y no cero como lo mande guardar....para los nuevos sistemas estoy haciendo directamente en la tabla que el valor por default sera CERO, pero tengo sistemas que tiene full datos y que solo funciona con los registros nuevos. Tambien tuve que cambiar la forma de iniciar mis VAR de la siguiente manera
aVar[n] ;= iif( lNew .or. empty(oqry:campo), 0, oqry:campo)
nose si a alguno le sucede lo mismo o si es un problema mio en mis tablas o si es algun cambio que le hayan hecho a la TDolphin, agradezo sus comentarios, sugerencias y observaciones, gracias, saludos...
aVar[1] := IIF( lNew, 0, oQry:campo1 ) // campo de tipo numero (int, double, decimal, etc)
aVAr[2] := IIF( lNew, space(10), oQry:campo2) // campo de tipo string
aVar[3] := IIF( lnew, date(), oQry:campo3 ) campo tipo fecha
hasta alli todo esta bien, el problema esta ocurriendo cuando grabo en _ y el valor de la VAR sigue siendo cero(0) o esta vacio, ya que no se graba en el campo el valor cero de la VAR sino se graba como NULL al igual que si la VAR esta vacia, esto hace que cuando voy a modificar mi campo y la VAR toma el valor del campo de la tabla, se inicia en NULL y asi no me permite editarlo, esto esta sucediendo en la ultima actualizacion de la LIB de TDolphin ya que por casualidad tenia una LIB vieja y alli si trabaja bien, el problema es que tengo sistemas de clientes donde valido si el valor del campo es cero o mayor que cero al igual que los tipos fechas y ahora esas validaciones me arrojan error ya que el valor del campo numerico es NULL y no cero como lo mande guardar....para los nuevos sistemas estoy haciendo directamente en la tabla que el valor por default sera CERO, pero tengo sistemas que tiene full datos y que solo funciona con los registros nuevos. Tambien tuve que cambiar la forma de iniciar mis VAR de la siguiente manera
aVar[n] ;= iif( lNew .or. empty(oqry:campo), 0, oqry:campo)
nose si a alguno le sucede lo mismo o si es un problema mio en mis tablas o si es algun cambio que le hayan hecho a la TDolphin, agradezo sus comentarios, sugerencias y observaciones, gracias, saludos...