tMemDataSet -> Eof - 1 attachment
Publicado: Mié May 31, 2006 10:29 am
Hola,
Cuando se crea un tMemdataset sin filas parece ser que BOF y EOF no se
evualuan correctamente. Concretamente, EOF no parece ser que haga bien
su trabajo dado que retorna .F. cuando NO hay registros. Este código:
// -----> Creamos MemDataSet1
WITH OBJECT ::oMemDataSet1 := tMemDataSet():Create(Self)
:open( {{"",.F.,0,CTOD("")}},{"CERROR","LERROR","LCARGAR","NT_DOCU "})
END
::odbBrowse1:oDataset := ::oMemDataset1
::oMemDataset1:Delete()
LogDebug(::oMemDataSet1:RecCount()) //---> muestra 0
::oMemDataSet1:GoTop()
DO WHILE !::oMemDataSet:Eof()
::oMemDataset1:Micampo := "un Valor" //---> error!!
::oMemDataset1:Skip(+1)
ENDDO
Os dejo un proyecto.
Saludos,
José Luis Capel
Aicom Global System, S.L.
Valencia - España
Attached files pruebas.zip (4.5 KB)Â
Cuando se crea un tMemdataset sin filas parece ser que BOF y EOF no se
evualuan correctamente. Concretamente, EOF no parece ser que haga bien
su trabajo dado que retorna .F. cuando NO hay registros. Este código:
// -----> Creamos MemDataSet1
WITH OBJECT ::oMemDataSet1 := tMemDataSet():Create(Self)
:open( {{"",.F.,0,CTOD("")}},{"CERROR","LERROR","LCARGAR","NT_DOCU "})
END
::odbBrowse1:oDataset := ::oMemDataset1
::oMemDataset1:Delete()
LogDebug(::oMemDataSet1:RecCount()) //---> muestra 0
::oMemDataSet1:GoTop()
DO WHILE !::oMemDataSet:Eof()
::oMemDataset1:Micampo := "un Valor" //---> error!!
::oMemDataset1:Skip(+1)
ENDDO
Os dejo un proyecto.
Saludos,
José Luis Capel
Aicom Global System, S.L.
Valencia - España
Attached files pruebas.zip (4.5 KB)Â