Acabo de instalar la versión 1.6 y he recompilado el programa mas gordo
para probarlo y va bien, pero me siguen fallando unas cosillas como en
la 1.5 que te puse en un mensaje hace un par de semanas y que ya me
extrañaba que no hubieras contestado.
Si te parece te reproduzco de nuevo aquí el mensaje para que no andes
buscando. Muchas gracias.
------------------------------------------------------------ ---------
Sobre tMemDataSet
Hola Ignacio un par de preguntas sobre las modificaciones que hicisteis
en esta clase.
En la versión 1.4 me andaba sin problemas pero al cambiar a la 1.5 me
han fallado todos los que tenía y el error salta en el METHOD FieldGet(
n ) el Return ::aWork[ nRecno, n ] me da error ya que n se sale de los
elementos de la tabla y casca, asi que lo he cambiado por:
RETURN If(n<=Len(::aWork[ nRecno] ), ::aWork[ nRecno, n ], Nil)
y ya no me casca, aunque es un poco chapucero.
Otra cosa más en el METHOD Open si el array viene vacío no puede tomar
los Valtype de él sino que directamente ponéis
::lReadOnly := .T.
LogDebug( "XAILER: TMemDataSet:'aData' parameter empty with no
structure defined. :lReadOnly set to TRUE." )
Pero si antes de hacer el Open ya he hecho oSender:GetStructFrom
pasándole todos los tipos y tamaños, antes funcionaba y ahora ya no le vale.
Evidentemente debería de prevalecer el GetStrucFrom creo yo, bastaría
con hacer esto en el METHOD Open
If Len(::aFields)=0
::lReadOnly := .T.
LogDebug( "XAILER: TMemDataSet:'aData' parameter empty with no
structure defined. :lReadOnly set to TRUE." )
Endif
Pero entonces hay que controlar que si el set esta vacío no se pueda
hacer un Edit lo cual esta implementado ahora de forma que da un error
de la aplicación con ::NewError( LT( XA_MSG_SET_VACIO_EDIT_NO_PERMITIDO
) ) lo cual si lo quito no casca el programa pero me entra en una
línea de edición fantasma que ya no se como quitar.
Gracias por tu atención y salu2.
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.
Para Ignacio
-
- Mensajes: 1310
- Registrado: Mié Sep 26, 2007 7:12 pm
- ignacio
- Site Admin
- Mensajes: 9459
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Para Ignacio
Bingen,
Creo que está solucionado el problema que se producia al haber utilizado
GetStructFrom() antes de hacer un Open(). Efectivamente en dicho caso se
producía un error en el método FieldGet(). El problema de edición del
registro fantasma también está solucionado. En breve subiremos una
actualización y espero que no se haya quedado nada por hacer.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
Creo que está solucionado el problema que se producia al haber utilizado
GetStructFrom() antes de hacer un Open(). Efectivamente en dicho caso se
producía un error en el método FieldGet(). El problema de edición del
registro fantasma también está solucionado. En breve subiremos una
actualización y espero que no se haya quedado nada por hacer.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com