Page 1 of 1

xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Sun Dec 08, 2013 1:07 pm
by rolando
Buen día,

Sigo en el intento de pasar todo a HARBOUR y ya lo tengo "casi" listo. Aclaro que uso ADS Server y la clase Tdatabase para las DBF's

Usando ADS Server, tengo un inconveniente con la xBrowse PERO SOLO USANDO HARBOUR.

Los mismos prg's compilados con xHarbour (siempre usando RDD ADS), hacen perfectamente el ordenado ascendente Y DESCENDENTE al "clickear" sobre los heads del xBrowse, tal como puede verse en el video:

http://youtu.be/b0xCUxP2Bio


Pero compilando con HARBOUR (siempre usando RDD ADS), NO HACEN EL ORDENADO DESCENDENTE AUNQUE PUEDE VERSE QUE LAS FLECHITAS CAMBIAN, esto se ve en el video:

http://youtu.be/ZTbYv-TuA6Y


Gracias a Carlos Vargas pude generar la lib RDDADS.LIB para la versión actual de Harbour pero el problema persiste.

Agradezco cualquier ayuda. Creo que es lo único que me resta solucionar para poder tener la aplicación funcionando en Harbour.

Rolando :D

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Mon Dec 09, 2013 8:52 pm
by sysctrl2
Cuando yo usaba ADS
tenia que poner estas lines al inicio de mi prg.

Code: Select all

#define _ADS_SERVER_
#ifdef _ADS_SERVER_
        REQUEST ADS,ADSKeyCount,ADSKeyNo,OrdKeyCount,OrdKeyNo,AdsGetRelKeyPos,AdsSetRelKeyPos,DBFCDX,DBFFPT
 #else
        Extern ADS,ADSKeyCount,ADSKeyNo,DBFCDX,DBFFPT
 #endif   

FUNCTION MAIN()
RETURN NIL
Sobre todo cuando usaba xbrw.

saludos.

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Mon Dec 09, 2013 9:44 pm
by rolando
Cesar,

Gracias por responder.

Lo que indicas es necesario tanto para Harbour como para xHarbour y lo tengo declarado en el primer prg. No viene por ese lado el problema ya que en xHarbour funciona normal pero en Harbour no.

Rolando

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Mon Dec 16, 2013 4:46 pm
by rolando
UP

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Tue Dec 17, 2013 7:16 pm
by reinaldocrespo
Rolando;

Hola.

Por favor muestra el código de tu xbrowse y lo que asignas a oCol:bClickHeader. ¿Tal vez puedas crear un ejemplo reducido que reproduzca el problema?

Saludos,


Reinaldo.

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Tue Dec 17, 2013 8:48 pm
by MarioG
Disculpen el O.T.
sysctrl2 wrote:Cuando yo usaba ADS
tenia que poner estas lines al inicio de mi prg.

Code: Select all

#define _ADS_SERVER_
#ifdef _ADS_SERVER_
        REQUEST ADS,ADSKeyCount,ADSKeyNo,OrdKeyCount,OrdKeyNo,AdsGetRelKeyPos,AdsSetRelKeyPos,DBFCDX,DBFFPT
 #else
        Extern ADS,ADSKeyCount,ADSKeyNo,DBFCDX,DBFFPT
 #endif   

FUNCTION MAIN()
RETURN NIL
Sobre todo cuando usaba xbrw.

saludos.
Yo solo agrego esto

Code: Select all

REQUEST ADS, HB_Lang_ESWIN, HB_CODEPAGE_ESWIN
EXTERNAL ADSKeyCount,ADSKeyNo, AdsGetRelKeyPos, AdsSetRelKeyPos
 
Las preguntas son:
Es conveniente agregar a lo que indica Cesar: HB_Lang_ESWIN, HB_CODEPAGE_ESWIN?
Cuando es ADS_LOCAL porque no es necesario agregar lo indicado en REQEST?

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Tue Dec 17, 2013 10:51 pm
by rolando
Reinaldo,

Copio el prg de ejemplo (así lo uso básicamente)

Code: Select all

#include "Fivewin.ch"
#include "ADS.CH"
#include "xbrowse.ch"

///// esto es para el ADS, además un init procedure al final ///////////////////
REQUEST HB_LANG_ES
REQUEST ADS,ADSKeyCount,ADSKeyNo,OrdKeyCount,OrdKeyNo, AdsGetRelKeyPos, AdsSetRelKeyPos ,DBFCDX, DBFFPT
REQUEST HB_Lang_ES

  Function Test()   
   
    local cAlias:=cGetNewAlias('Test'), oDlg, oBrw
    local aCols:={"FIRST", "LAST", "STREET", "CITY", "AGE"}
    local aHeads:={"NOMBRE", "APELLIDO", "DIRECCION", "CIUDAD", "EDAD"}
    local aPictures:={"@!", "@!", "@!", "@!", "99"}
    local aColSizes:={160,160,160,160,80}
        
        set date british
    set epoch to 1960
    SET CENTURY ON
    
            use ".\CUSTOMER" shared new alias (cAlias) via rddsetdefault()   
            DATABASE oDbf
    
    

    define dialog oDlg resource "TESTXBR" transparent

            REDEFINE XBROWSE oBrw ID 4001 DATASOURCE oDbf ;
      COLUMNS aCols ; 
      HEADERS aHeads; 
      PICTURES aPictures  ;
      COLSIZES aColSizes ;
      AUTOSORT CELL LINES 



        WITH OBJECT oBrw
  
        :bClrRowFocus     := { || { CLR_BLACK, RGB(185,220,255) } }     //   PARA LOGRAR LINEAS
      :nMarqueeStyle        := MARQSTYLE_HIGHLROWRC                                             //   CON MAS OSCURO EL CAMPO
        :nEditTypes       := EDIT_GET
            :nHeadStrAligns   := AL_CENTER
      :nStretchCol      := STRETCHCOL_WIDEST
      :nColDividerStyle := ;
      :nRowDividerStyle := LINESTYLE_LIGHTGRAY
      :lAllowRowSizing  := .f.
      :lContrastClr     := .f.
            :nFreeze:=1                                      
                         
    END


        activate dialog oDlg 
        
    oDbf:close()
    
  Return nil




//-----------------------------------------------------------------------------------------------------------------------

    


 Init Procedure Inicio()

  RddRegister( "ADS", 1 )
  RddSetDefault( "ADS" )
  AdsSetServerType(1)  //(3)    // (7) para cualquier servido . para seleccionar el tipo de servidor ADS, 1= local, 2= remoto y 3= los dos.
  AdsSetFileType(2)
  AdsLocking( .t. )
  AdsRightsCheck( .f. )
  SET SERVER REMOTE                 
  SET FILETYPE TO CDX

 Return
También subí al box el prg, el res y los exe's.

El compilado con xHarbour funciona correctamente pero el compilado con Harbour no. Lo que deduzco es que en los archivos ".C" de Harbour para el ADS hay algún error ya que genero la LIB para ADS en Harbour y me da ese error.

Está todo en: https://app.box.com/s/r1rt9rldprp8bgy8xgzf

Por supuesto que para que estos ejemplos funciones se debe tener el server ADS activo.

Espero, con la ayuda de Ustedes, poder solucionar este tema y así pasarme a Harbour ya que logré pasar todo pero sigo usando xHarbour por este problema.

Gracias.

Rolando :D

Re: xBrowse (con ADS). MAL con Harbour - AYUDA

Posted: Sun Dec 22, 2013 4:43 pm
by rolando
UP (último intento, si no logro solucionarlo deberé seguir con xHarbour).

Rolando :D