Página 1 de 1

MemDataset

Publicado: Jue Mar 01, 2007 12:21 am
por Fredy
Hola,
Tengo un MemDataset que está vací­o y al intentar hacer un Append me salta
un error tal que así­.
Subsistema: BASE
Código de error: 1004
Estado: .F.
Descripción: Message not found
Operación: TMemDataSet:FFINAL
Argumentos: [ 1] = Tipo: N Valor: 0
Fichero:
En cambio, si el memdataset tiene algún dato funciona bien.
Un saludico,
Fredy

MemDataset

Publicado: Jue Mar 01, 2007 8:53 am
por jose.luis
Hola Fredy,
¿Como has creado el MemDataSet?
Saludos,
José Luis Capel
"Fredy" <fredy@aglsl.com> escribió en el mensaje
news:[email=a20b86f336708c929aeb7353552@news.xailer.com...]a20b86f336708c929aeb7353552@news.xailer.com...[/email]
> Hola,
>
> Tengo un MemDataset que está vacío y al intentar hacer un Append me salta
> un error tal que así.
> Subsistema: BASE
> Código de error: 1004
> Estado: .F.
> Descripción: Message not found
> Operación: TMemDataSet:FFINAL
> Argumentos: [ 1] = Tipo: N Valor: 0
> Fichero:
> En cambio, si el memdataset tiene algún dato funciona bien.
>
> Un saludico,
> Fredy
>
>
>

MemDataset

Publicado: Jue Mar 01, 2007 9:30 am
por ignacio
Fredy,
Un dataset vacio es sencillamente una matriz en blanco. Es necesario
indicarle exactamente los campos al MemDataset. Mandanos un pequeño ejemplo
de lo que estás haciendo para echarle un vistazo.
Un saludo
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Fredy" <fredy@aglsl.com> escribió en el mensaje
news:[email=a20b86f336708c929aeb7353552@news.xailer.com...]a20b86f336708c929aeb7353552@news.xailer.com...[/email]
> Hola,
>
> Tengo un MemDataset que está vacío y al intentar hacer un Append me salta
> un error tal que así.
> Subsistema: BASE
> Código de error: 1004
> Estado: .F.
> Descripción: Message not found
> Operación: TMemDataSet:FFINAL
> Argumentos: [ 1] = Tipo: N Valor: 0
> Fichero:
> En cambio, si el memdataset tiene algún dato funciona bien.
>
> Un saludico,
> Fredy
>
>
>

MemDataset

Publicado: Jue Mar 01, 2007 12:55 pm
por Fredy
Hola,
La cosa es más o menos así­:
--------------------
:oSqlQuery1:lOpen := .f.
:oSqlQuery1:cSelect :="SELECT *, Importe1+Importe2+Importe3 AS Total FROM
Desglose WHERE Prevision = 1"
:oSqlQuery1:lOpen := .t.
aDatos := :oAdoDataSource1:QueryArray( :oSqlQuery1:cSelect )
:oMemDataSet1:Open( aDatos, {"Desglose", "Prevision", "Finicial", "fFinal" ,;
"Descripcion","Importe1","Importe2","Importe3",;
"Total" } )
-----------------
Cuando el select me devuelve datos, funciona todo bien, pero.. Si sel select
no devuelve ningún dato (porque no existe nada con la prevision=1) es cuando
falla.
Un saludico,
Fredy

MemDataset

Publicado: Jue Mar 01, 2007 12:59 pm
por Fredy
Hola,
Es como si al estar en blanco y no tener ninguna lí­nea, no "entendiera" los
nombres de los campos.
De momento lo he solucionado así­:
--------
IF Len( ::oMemdataset1:aData ) = 0 // Está vacio
aDatos :={{0,0,otro dato..., otro }}
::oMemDataSet1:Open( aDatos, {"Desglose", "Prevision", "Finicial", "fFinal"
,;
"Descripcion","Importe1","Importe2","Importe3",;
"Total" } )
ELSE
::oMendataset1:Append()

.....
ENDIF
-------
Un saludico,
Fredy

MemDataset

Publicado: Jue Mar 01, 2007 1:00 pm
por ignacio
Fredy,
Intente pasarle la estructura interna de los datos con el método
GetStructFrom()
Saludos
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Fredy" <fredy@aglsl.com> escribió en el mensaje
news:[email=a20b86f3368c8c92a17f5529ef1@news.xailer.com...]a20b86f3368c8c92a17f5529ef1@news.xailer.com...[/email]
> Hola,
>
> La cosa es más o menos así:
>
>
> --------------------
> :oSqlQuery1:lOpen := .f.
> :oSqlQuery1:cSelect :="SELECT *, Importe1+Importe2+Importe3 AS Total FROM
> Desglose WHERE Prevision = 1"
> :oSqlQuery1:lOpen := .t.
> aDatos := :oAdoDataSource1:QueryArray( :oSqlQuery1:cSelect )
> :oMemDataSet1:Open( aDatos, {"Desglose", "Prevision", "Finicial", "fFinal"
> ,;
>
> "Descripcion","Importe1","Importe2","Importe3",;
> "Total" } )
>
> -----------------
>
> Cuando el select me devuelve datos, funciona todo bien, pero.. Si sel
> select no devuelve ningún dato (porque no existe nada con la prevision=1)
> es cuando falla.
>
>
> Un saludico,
> Fredy
>
>
>