FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour XBrowse con xBase - Efecto Pijama - Error en Red
Posts: 54
Joined: Sat Dec 10, 2016 08:58 PM
XBrowse con xBase - Efecto Pijama - Error en Red
Posted: Tue Mar 21, 2023 03:30 AM

Buenos días

Usando XBrowse, estas 3 opciones para lograr el efecto pijama

oBrw:bClrStd:= { || { CLR_Txt, { CLR_Fdo1, CLR_Fdo2 }[ oBrw:KeyNo % 2 +1 ] } }

oBrw:bClrStd:= { || { CLR_Txt, if( oBrw:KeyNo % 2 == 0, CLR_Fdo1, CLR_Fdo2 ) } }

oBrw:bClrStd:= { || { CLR_Txt, if( int( oBrw:KeyNo / 2 ) # oBrw:KeyNo / 2, CLR_Fdo1, CLR_Fdo2 ) } }

Con tablas xbase locales (en el mismo disco, en mi PC) funcionan impecable; pero, las mismas tablas en dos redes de datos diferentes producen efectos 'aleatorios' en los colores de fondo, como 1 y 2, 1 y 3, 2 y 2... es decir no 1 y 1.

¿Alguna idea?

Gracias, saludos.

José Concha Leiva - Chile
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com
Posts: 54
Joined: Sat Dec 10, 2016 08:58 PM
Re: XBrowse con xBase - Efecto Pijama - Error en Red
Posted: Tue Mar 21, 2023 02:41 PM

Esto es usando DBFCDX, y ocurre solo con tablas xBase de más de 10.000 registro, por lo que comentando estas líneas (marcadas con *) en XBrowse.prg el problema se resuelve

METHOD SetRDD( lAddColumns, lAutoOrder, aFldNames, aRows ) CLASS TXBrowse

::::::

else

  if ( ( ::cAlias )->( RDDName() ) == "DBFCDX" )
  • if ( ::cAlias )->( LASTREC() ) > 10000 .and. lFileIsRemote( ( ::cAlias )->( DBINFO( DBI_FULLPATH ) ) )

  • DEFAULT ::bKeyNo := { |n| ( ::cAlias )->( If( n == nil, OrdKeyRelPos() * ::nLen, ;

  • If( Empty( OrdSetFocus() ), OrdKeyGoTo( n ), OrdKeyRelPos( n / ::nLen ) ) ) ) }

  • else

        ::lRelyOnKeyNo := If( Set( _SET_DELETED ), "DELETED()" $ Upper( DbFilter() ), .t. )
    
  • endif

    endif

    DEFAULT ::bKeyNo := {| n | iif( n == nil,;

                                   ( ::cAlias )->( OrdKeyNo() ),;
    
                                   ( ::cAlias )->( OrdKeyGoto( n );
    
                                   ) ) },;
    
          ::bKeyCount := {|| ( ::cAlias )->( If( eof() .and. bof(), 0, OrdKeyCount() ) ) }
    

Endif

::::::

¿Puede alguien por favor decirme si causará algún error dejarlas comentadas? ¿o cual sería la solución correcta?

Nota. Estoy en un proceso de migración de mis sistemas, de FW + xHB versiones antiguas a FWH y HB versiones recientes, y por un tiempo necesito seguir usando WBrowse + DBFCDX y XBrowse + DBFCDX (el objetivo final es usar XBrowse + MySQL).

Con tablas xBase de 200.000 registros he probado XBrowse + DBFCDX en PC local y en dos redes LAN y (si, siendo XBrowse más lento que WBrowse) no se hace aún más lento al comentar las líneas ¿Entonces cual es el propósito de estas?

Ojalá quienes tienen más experiencia o los maestros puedan aportarme luz.

Muchas gracias

José Concha Leiva - Chile
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: XBrowse con xBase - Efecto Pijama - Error en Red
Posted: Tue Mar 21, 2023 03:31 PM

És posible un ejemplo autocontenido completo?

Regards, saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 54
Joined: Sat Dec 10, 2016 08:58 PM
Re: XBrowse con xBase - Efecto Pijama - Error en Red
Posted: Tue Mar 21, 2023 04:10 PM

Hola Karinha

En el comentario anterior aporté más información...

Gracias

José Concha Leiva - Chile
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com

Continue the discussion