aoData no devuelve todos los datas

aoData no devuelve todos los datas

Postby fgondi » Wed Nov 30, 2005 12:16 pm

Hola foro,

aodata no devuelve los datas cuya longitud sea mayor o igual a 10 caracteres.
Code: Select all  Expand view  RUN
aDatas = aOData( oObject )


He comprobado al ejecutar __ClassSel que a estos datas se anteponen el guión bajo (_Incidencia) cuando no lo tiene en la definición del data.
Code: Select all  Expand view  RUN
aDatas := __ClassSel( oObject )

Esto hace que la función aoData lo eliminie del array a devolver.
Code: Select all  Expand view  RUN
function aOData( oObject )

   local aInfo  := ASort( __ClassSel( oObject:ClassH ) )
   local aData  := {}
   local n      := 1
   local lExact := Set( _SET_EXACT, .t. )

   while SubStr( aInfo[ n ], 1, 1 ) != "_"
      if AScan( aInfo, "_" + SubStr( aInfo[ n ], 1, 9 ), n + 1 ) != 0
         AAdd( aData, aInfo[ n ] )
      endif
      n++
   end

   Set( _SET_EXACT, lExact )

return aData


Es un bug de fivewin o debe hacerlo? no devería ser la comprobación SubStr( aInfo[ n ], 1, 2 ) != "__"?
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Postby Antonio Linares » Sat Dec 03, 2005 9:13 am

Fernando,

El problema es que esa función está diseñada para Clipper en donde 9 caracteres es el máximo tamaño para reconocer una data, puesto que para asignar un valor a una data, Clipper (y [x]Harbour) anteponen un subrayado al nombre de la data.

Habría que modificar esa función para que trabaje con cualquier longitud de nombres de datas, para que funcione con [x]Harbour. Es un cambio fácil, se trata de comprobar que empiece por "_".
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42122
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby fgondi » Sat Dec 03, 2005 12:32 pm

Antonio,

Gracias por tu respuesta.

Yo ya lo tengo corregido, pero no sabía que eso provocaría error si internamente fwh llama a esa función.
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Postby Antonio Linares » Sun Dec 04, 2005 11:04 am

Fernando,

FWH no la llama, por lo que no hay problema en modificarla.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42122
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 24 guests