Page 1 of 1
QUE CAMBIO EN LA VERSION 8.12 XH ASAVE() AREAD()
Posted: Thu Jan 15, 2009 4:20 pm
by GUSPRE
Antonio,
Me he encontrado con un error que no entiendo en la migración a FWH 8.12 xh uso ASAVE y AREAD para grabar en archivos planos arrays multidimensionales, ,los grabo pero al leerlos ahora AREAD me devuelve cualquier cosa por ejemplo
Code: Select all
LOCAL a_pru:={{"","",""},{"","",""},{"","",""}}
LOCAL a_tmp
c_dat:=ASAVE(a_pru)
a_tmp:=AREAD(c_dat)
MSGINFO(LEN(a_tmp))
EL msginfo devuelve 11329 items en a_tmp ?? que paso cambio esta funciones,
Tenemos grabados en archivos array con formatos de impresión que debemos recuperar esto es urgente...
Saludos,
Re: QUE CAMBIO EN LA VERSION 8.12 XH ASAVE() AREAD()
Posted: Thu Jan 15, 2009 4:47 pm
by GUSPRE
NO SE SI A ALGUIEN LE PASO PERO ENCONTRE DENTRO DE WINDOWS.PRG
Code: Select all
function ARead( cInfo )
local nPos := 1, nLen, n
local aArray, cType, cBuffer
Veran que nPos esta definido como 1,
bien cambiando este parametro a 4 funciona correctamente, esto comparado con un WINDOWS.PRG de versiones anteriores, de hecho he generado una nueva funcion AREAD_2 como la siguiente para no tocar el codigo original de FWH y he reemplazado todas las funciones AREAD por AREAD_2,
Nueva funcion,
Code: Select all
//----------------------------------------------------------------------------//
function ARead_2( cInfo )
local nPos := 4, nLen, n
local aArray, cType, cBuffer
nLen = Bin2I( SubStr( cInfo, nPos, 2 ) )
nPos += 2
aArray = Array( nLen )
for n = 1 to Len( aArray )
cType = SubStr( cInfo, nPos++, 1 )
nLen = Bin2I( SubStr( cInfo, nPos, 2 ) )
nPos += 2
cBuffer = SubStr( cInfo, nPos, nLen )
nPos += nLen
do case
case cType == "A"
aArray[ n ] = ARead_2( "A" + I2Bin( nLen ) + cBuffer )
case cType == "O"
aArray[ n ] = ORead( cBuffer )
case cType == "C"
aArray[ n ] = cBuffer
case cType == "D"
aArray[ n ] = CToD( cBuffer )
case cType == "L"
aArray[ n ] = ( cBuffer == ".T." )
case cType == "N"
aArray[ n ] = Val( cBuffer )
endcase
next
return aArray
Espero le sirva a alguien,
Saludos,
Re: QUE CAMBIO EN LA VERSION 8.12 XH ASAVE() AREAD()
Posted: Thu Jan 15, 2009 8:12 pm
by Antonio Linares
Gustavo,
Si, _ se han hecho para la construccion del IDE visual.
Me alegro de que hayas podido solucionarlo para mantener la compatibilidad.
Re: QUE CAMBIO EN LA VERSION 8.12 XH ASAVE() AREAD()
Posted: Thu Jan 15, 2009 9:55 pm
by GUSPRE
Estimado Antonio,
Me pregunto _ se han realizado y en que funciones, ya que hace 2 semanas estamos probando cada funcion de la aplicación para ver si funciona al igual que con los compiladores viejos. Hay algún registro de _ que se realizan de versióna versión del compilador ?
Gracias
Saludos,
Re: QUE CAMBIO EN LA VERSION 8.12 XH ASAVE() AREAD()
Posted: Thu Jan 15, 2009 10:05 pm
by Antonio Linares
Gustavo,
_ siempre se detallan en el fichero FWH\whatsnew.txt.
En la version 8.12 se explico:
"* New: We are doing many changes and enhacements for the development of the free Visual IDE."
Siempre entendiendo que la primera prioridad es mantener compatibilidad con versiones anteriores. No podiamos pensar que ese cambio pudiese afectar a alguna aplicacion, pero ha ocurrido asi en tu caso. Te pedimos disculpas.
Re: QUE CAMBIO EN LA VERSION 8.12 XH ASAVE() AREAD()
Posted: Thu Jan 15, 2009 10:11 pm
by GUSPRE
Querido Antonio,
No hay de que disculparse, estoy de acuerdo en simpre seguir ampliando la capacidad de FWH, yo no lo cambio por ningun otro, solo es que estas mudanzas de versiones, hacen a veces volverse loco buscando que paso, de todas maneras adelante con FWH!!!
Saludso,