esta mana帽ana estaba intentando reutilizar una porci贸n de c贸digo que funcionaba originalmente con FWH 12.11, y al incorporarla al nuevo proyecto desarrollado con FWH 13.05, ha dejado de funcionar.
Inicialmente, pense que era alg煤n problema con el c贸digo, y despues de revisarlo detenidamente y no encontrar nada, me decidi a rastrear la calse xBrowse, y all铆 encontre el problema.
El problema es que en mi funci铆on hago uso de una busqueda incremental personalizada, que asigo al DATA bSeek, pero este DATA se sobreescribe siempre en el metodo SetRdd, que se llama siempre desde el metodo initiate. Antes habia un if, que hoy aparece comentado, en la linea 3979.
// 聽 if lAutoOrder
聽 聽 聽 (::cAlias)->( OrderTagInfo( aStruct, 8 ) )
聽 聽 聽 for nFor := 1 to Len( ::aCols )
聽 聽 聽 聽 聽if ( n := AScan( aStruct, { |a| a[ 1 ] == Upper( ::aCols[ nFor ]:cHeader ) } ) ) > 0
聽 聽 聽 聽 聽 聽 ::aCols[ nFor ]:cSortOrder 聽 聽:= aStruct[ n ][ 8 ]
聽 聽 聽 聽 聽 聽 ::aCols[ nFor ]:cOrdBag 聽 聽 聽 := ( cAlias )->( OrdBagName( ::aCols[ nFor ]:cSortOrder ) )
聽 聽 聽 聽 聽endif
聽 聽 聽 next nFor
聽 聽 聽 ::bSeek 聽:= { |c,u| ( ::cAlias )->( ::RddIncrSeek( c, @u ) ) }
// 聽 endifSi lAutorder era falso, bSeek no era modificado. Mi pregunta es, ese cambio, supongo que ser谩 para arreglar/mejorar algo, quisiera conocer que. Y en la medida de lo posible para compatibilizar mi software, me gustaria que volviera el IF lAutoOrder, o en us defecto que no se modificase bSeek, si ya est谩 asignado.
DEFAULT ::bSeek 聽:= { |c,u| ( ::cAlias )->( ::RddIncrSeek( c, @u ) ) }