FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Mostrar una sola columna en un xbrowse (SOLUCIONADO)
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Mostrar una sola columna en un xbrowse (SOLUCIONADO)
Posted: Tue Apr 27, 2010 07:03 AM
Hola.

soy novato en el uso de xbrowse y no he podido dar en el clavo con lo siguiente:

tengo una tabla dbf con 2 campos, pero solo quiero mostrar 1 solo en un xbrowse definido por recursos

pero me marca un error y no lo he podido solucionar

la tabla pa05 tiene el campo "codigo" Caracter de 5 y "nombre" caracter de 20, solo quiero mostrar el campo "nombre" en el xbrowse

Code (fw): Select all Collapse
      xLbx := TXBrowse():New( zDlg )
      xLbx:lRecordSelector     := .F.
      xLbx:cALias              := "PA05"
      xLbx:lHeader             := .T.
      xLbx:l2007               := .T.
      xLbx:lHScroll            := .F.
      xLbx:lVScroll            := .T.
      xLbx:SetFont( oFont[1] )
      xLbx:aCols[1]:Hide()   <--- aqui marca el error
      xLbx:bSeek               := {|g| PA05->(DbSeek( Upper( g ) )) }
      xLbx:CreateFromResource( 31 )


este es el detalle del error

Información de la caída del Sistema
-----------------------------------
Ruta y nombre: R:\Proyectos\orion\ORION.Exe
Fecha y Hora : 27/04/2010, 01:32:53 a.m.
Tamaño : 2.212.352 bytes
Máximos files: 0
Estación : ARMANDO-L

Detalle técnico en la aplicación
--------------------------------
Error BASE/1132 Bound error: array access
Argumentos :
[ 1] = A { ... }
[ 2] = N 1

Llamadas a Procedimientos
-------------------------
Llamado desde INGRESADETALLE(570)
Llamado desde (b)INGRESAR(470)
Llamado desde TSBUTTON:CLICK(850)
Llamado desde TCONTROL:HANDLEEVENT(1.361)
Llamado desde TSBUTTON:HANDLEEVENT(1.317)
Llamado desde _FWH(3.250)
Llamado desde DIALOGBOX(0)
Llamado desde TDIALOG:ACTIVATE(270)
Llamado desde INGRESAR(473)
Llamado desde (b)UPRESUPBASE(97)
Llamado desde TSBUTTON:CLICK(850)
Llamado desde TCONTROL:HANDLEEVENT(1.361)
Llamado desde TSBUTTON:HANDLEEVENT(1.317)
Llamado desde _FWH(3.250)
Llamado desde WINRUN(0)
Llamado desde TWINDOW:ACTIVATE(924)
Llamado desde MAIN(210)

espero que me entiendan y me ayuden.

saludos desde Chile
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: Mostrar una sola columna en un xbrowse
Posted: Tue Apr 27, 2010 08:32 AM

Hola:

Prueba con xLbx:DelCol( 1 ).
De esta forma no ocultas la columna sino que la eliminas del browse

Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Mostrar una sola columna en un xbrowse
Posted: Tue Apr 27, 2010 08:38 AM
armando.lagunas,

Así hazlo.

Code (fw): Select all Collapse
      xLbx := TXBrowse():New( zDlg )
      xLbx:setrdd()    // aquí falta esto
      xLbx:lRecordSelector     := .F.
      xLbx:cALias              := "PA05"
      xLbx:lHeader             := .T.
      xLbx:l2007               := .T.
      xLbx:lHScroll            := .F.
      xLbx:lVScroll            := .T.
      xLbx:SetFont( oFont[1] )
      xLbx:aCols[1]:Hide()   // aquí no debe marcar error
      xLbx:bSeek               := {|g| PA05->(DbSeek( Upper( g ) )) }
      xLbx:CreateFromResource( 31 )
William, Morales

Saludos



méxico.sureste
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Mostrar una sola columna en un xbrowse
Posted: Tue Apr 27, 2010 12:26 PM
Armando, también podes definir tus columnas en forma individual

Code (fw): Select all Collapse
 
  oBrw:= TXBrowse():New( oDlg )
  oBrw:cAlias:="EMPRESA"
   oBrw:nMarqueeStyle:=MARQSTYLE_HIGHLROW
   oBrw:lHScroll:=.F.
   oBrw:nColDividerStyle:=LINESTYLE_LIGHTGRAY
   oBrw:nRowDividerStyle:=LINESTYLE_LIGHTGRAY
   oBrw:bClrSelFocus:={ || {CLR_WHITE,CLR_CYAN} }
   oBrw:bClrSel:={ || {CLR_WHITE,CLR_CYAN} }
         
    oCol:=oBrw:AddCol()
    oCol:bStrData := { || NOMBRE }
    oCol:nHeadStrAlign:=AL_CENTER
    oCol:cHeader  := "NOMBRE"
    oCol:nWidth:=260
    
    oCol:=oBrw:AddCol()
    oCol:bStrData := { || FEC_INI }
    oCol:cHeader  := "FEC_INI."
    oCol:nHeadStrAlign:=AL_CENTER
    oCol:nWidth:=70

   oBrw:CreateFromResource(31)
 
  @.1,28 SAY oSay VAR Cadena size 30,8 of oDlg  UPDATE PICTURE "@!"
   oBrw:bSeek := {|c| (DbSeek(UPPER(c)) ) }; oBrw:oSeek:=oSay


Saludos

Adhemar
Saludos,



Adhemar C.
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: Mostrar una sola columna en un xbrowse
Posted: Tue Apr 27, 2010 04:18 PM

muchas gracias a todos, me ha servido lo que me han expuesto.

saludos desde Chile.

SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com

Continue the discussion