FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour una de xBrowse SOLUCIONADO!!!
Posts: 161
Joined: Wed Jan 25, 2006 10:45 AM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 12:27 PM

para campos lógicos estoy intentanto colocar un .BMP en vez del valor del campo

defino la primera columna de xBrowse asi :

ADD  COLUMN  oCol TO oBrwCTA ;
        AT 1 ;
        DATA {|| ::oCta:lFactura} ;
        TITLE "Factura?" SIZE 70

luego hago asi... antes de activar el dialogo..

oBrwCTA:aCols[1]:SetCheck( { "ON", "OFF" } )

Al ejecutar la Txbrowse me dice "Method Valid only for logical values"
como si el campo no fuese lógico...
revisé el ejemlo testxbr3.prg mas no doy con el problema.. no es mi dia
Alguna luz?
:(

Saludos

Ricardo R.

xHarbour 1.1.0 Simplex , Microsoft Visual Studio 2008, Bcc55, Fwh Build. 9.01
Posts: 7
Joined: Fri Aug 08, 2008 10:32 PM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 12:59 PM
oCol2:=obrw2:addcol()
ocol2:AddResource("BMP_BAIXA")
ocol2:AddResource("BMP_ATIVO")
oCol2:bBmpData:={||iif(E->Baixa="BAIXA",1,2)}
oCol2:cHeader:="Controle"+ CRLF + "baixa/ativo"

aqui estas ..

Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 01:14 PM

coloca el codigo completo, para ver como creas el xbrowse y poder determinar que problema no esta en otro lado

Posts: 161
Joined: Wed Jan 25, 2006 10:45 AM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 01:22 PM

Set Portugues ON
Eder, obrigado serviu o exemplo, mais acho que é possível também, usando o Method SetCheck
Set Portugues OFF

Daniel.
El xBrowse esta definido asi :

oBrwCTA := TXBrowse():New( oDlg )
   oBrwCTA:CreateFromResource( 101 )
   oBrwCTA:nMarqueeStyle := MARQSTYLE_HIGHLROW
   oBrwCTA:bClrSelFocus := {|| { CLR_WHITE, CLR_BLUE } }
   oBrwCTA:cAlias := (::oCta:cAlias)
   oBrw:l2007 := .T.
   oBrwCta:SetoDbf( ::oCta )
   oBrwCta:bChange:={|| ::oCta:Load}

ADD  COLUMN  oCol TO oBrwCTA ;
    AT 1 ;
    DATA {|| ""} ;
    TITLE "Factura" SIZE 70

donde ::oCta es un objeto TDATABASE

Saludos

Ricardo R.

xHarbour 1.1.0 Simplex , Microsoft Visual Studio 2008, Bcc55, Fwh Build. 9.01
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 01:39 PM
Ricardo Ramirez E. wrote:

Daniel.
El xBrowse esta definido asi :

oBrwCTA := TXBrowse():New( oDlg )
   oBrwCTA:CreateFromResource( 101 )
   oBrwCTA:nMarqueeStyle := MARQSTYLE_HIGHLROW
   oBrwCTA:bClrSelFocus := {|| { CLR_WHITE, CLR_BLUE } }
   oBrwCTA:cAlias := (::oCta:cAlias)
   oBrw:l2007 := .T.
   oBrwCta:SetoDbf( ::oCta )
   oBrwCta:bChange:={|| ::oCta:Load}

ADD  COLUMN  oCol TO oBrwCTA ;
    AT 1 ;
    DATA {|| ""} ;
    TITLE "Factura" SIZE 70

donde ::oCta es un objeto TDATABASE

me imagino que debria ser asi...

oBrwCta:bChange:={|| ::oCta:Load()} //==>los parentesis

ADD  COLUMN  oCol TO oBrwCTA ;
        AT 1 ;
        DATA {|| ::oCta:lFactura} ;
        TITLE "Factura?" SIZE 70 editable;
        ON EDIT {|o,x,n| ::oCta:lFactura := x }

oBrwCTA:aCols[1]:SetCheck( { "ON", "OFF" } )
Posts: 161
Joined: Wed Jan 25, 2006 10:45 AM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 01:42 PM

Daniel... no necesito editar el campo logico
solo mostrar un BMP segun sea el caso....

pensé que colocando

oBrwCTA:aCols[1]:SetCheck( { "ON", "OFF" } )

era suficiente :(

Saludos

Ricardo R.

xHarbour 1.1.0 Simplex , Microsoft Visual Studio 2008, Bcc55, Fwh Build. 9.01
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 02:25 PM
Ricardo Ramirez E. wrote:Daniel... no necesito editar el campo logico
solo mostrar un BMP segun sea el caso....

pensé que colocando

oBrwCTA:aCols[1]:SetCheck( { "ON", "OFF" } )

era suficiente :-)


si debe ser suficiente...
disculpa la pregunta, pero debo hacerla de todas formas, estas seguro que lFactura es un campo loogico, ya revisaste eso? muchas veces se nos escapa la liebre por donde menos pensamos
Posts: 161
Joined: Wed Jan 25, 2006 10:45 AM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 04:24 PM
Daniel...
gracias.. x responder; si el campo es de tipo lógico y los bmp's tambien existen en el archivo de tipo .RES. Revisando y depurando el Method SetCheck me di con la sorpresa.. que
para determinar el tipo de valor de la data de la columna hay esto
LogiVal := ( ValType( Eval( ::bEditvalue ) ) == 'L' )

en mi caso..para el valor de tipo de LogicVal daba = "C"

asigné este valor a la data bEditValue para la primera columna

 oBrwCTA:aCols[1]:bEditValue := { || (::oCta:cAlias)->lFactura }


y ahora ya se pintan los bitmaps. :-)

Entonces... es necesario asignar un valor a bEditValue? mismo no necesite editar ? :-) uso ya muchos años la TSbrowse... aun no domino la txbrowse :-)

Alguien puede explicar esto? suponía que bEditValue se asignaba el solo de acuuerdo a la data de la columna.

Saludos.! :-)
Saludos

Ricardo R.

xHarbour 1.1.0 Simplex , Microsoft Visual Studio 2008, Bcc55, Fwh Build. 9.01
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
una de xBrowse SOLUCIONADO!!!
Posted: Mon Oct 27, 2008 06:27 PM

Ricardo,

La Clase TXbrowse es muy potente pero tambien resulta bastante compleja :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion