Crear Columas xBrowse Dinamicamente
Posted: Thu Feb 13, 2020 7:39 pm
Buenas tardes para todos,
Requiero crear de manera dinámica algunas columas de un xbrowse. Lo estoy haciendo de la siguiente manera:
Pero no me funciona... la información que esta asignada en las columnas creadas de manera dinámica no se muestra, una imagen.
Que estoy haciendo mal?
De antemano gracias
Requiero crear de manera dinámica algunas columas de un xbrowse. Lo estoy haciendo de la siguiente manera:
Code: Select all
oBrwReci := TXBrowse():New( ::oDlgRcj )
oBrwReci:nMarqueeStyle := MARQSTYLE_HIGHLROW
oBrwReci:nRowDividerStyle := LINESTYLE_LIGHTGRAY
oBrwReci:nColDividerStyle := LINESTYLE_LIGHTGRAY
oBrwReci:nHeaderLines := 1
oBrwReci:lColDividerComplete := .t.
oBrwReci:lRecordSelector := .t.
oBrwReci:nStretchCol := STRETCHCOL_LAST
oBrwReci:l2007 := .f.
oBrwReci:oFont := oFont1
oBrwReci:lFooter := .t.
oBrwReci:nFooterLines := 1
oBrwReci:nFooterHeight := 24
oBrwReci:bRClicked := {|nRow, nCol | ::mRegReci( nRow,nCol,oBrwReci,cbTipItem ) }
oBrwReci:bKeyDown := {|nKey,oGet,nCol|TecItemNota(nKey,oGet,nCol,cbTipItem)}
oBrwReci:bClrStd := {|| { CLR_BLACK,clrEstFondo(::detalle[oBrwReci:nArrayAt]["estado"]) } }
oBrwReci:bClrSelFocus := {|| { CLR_WHITE,clrEstSelec(::detalle[oBrwReci:nArrayAt]["estado"]) } }
oCol = oBrwReci:AddCol()
oCol:bStrData := {|| if(Len( ::detalle ) > 0 , Transform(::detalle[oBrwReci:nArrayAt]["id"],oLamcla:PIC9) ,"" ) }
oCol:AddResource( "#8208" )
oCol:cHeader = "Item"
oCol:nWidth = 30
oCol:nHeadStrAlign = AL_LEFT
oCol:nDataStrAlign = AL_LEFT
oCol:oHeaderFont = oFont
oCol:nFootBmpNo := 1
oCol:bLClickFooter := {|r,c,f,o| EVAL(cbTipItem) }
oCol = oBrwReci:AddCol()
oCol:bStrData := {|| if(Len( ::detalle ) > 0 , cValToChar(::detalle[oBrwReci:nArrayAt]["documento"]) ,"" ) }
oCol:cHeader = "Documento"
oCol:nWidth = 60
oCol:nHeadStrAlign = AL_LEFT
oCol:nDataStrAlign = AL_LEFT
oCol:oHeaderFont = oFont
oCol = oBrwReci:AddCol()
oCol:bStrData := {|| if(Len( ::detalle ) > 0 , cValToChar(::detalle[oBrwReci:nArrayAt]["factura"]) ,"" ) }
oCol:cHeader = "Factura"
oCol:nWidth = 50
oCol:nHeadStrAlign = AL_LEFT
oCol:nDataStrAlign = AL_LEFT
oCol:oHeaderFont = oFont
oCol = oBrwReci:AddCol()
oCol:bStrData := {|| if(Len( ::detalle ) > 0 , dtoc(::detalle[oBrwReci:nArrayAt]["fecha"]) ,"" ) }
oCol:cHeader = "Fecha"
oCol:nWidth = 60
oCol:nHeadStrAlign = AL_LEFT
oCol:nDataStrAlign = AL_LEFT
oCol:oHeaderFont = oFont
oCol:cFooter = "TOTALES"
oCol:oFooterFont = oFont3
//Datos de las Columnas
aData := {"riva","rica","rfte"}
aTitu := {"Rete 1","Rete 2","Rete 3"}
FOR p:= 1 TO len(aData)
oCol = oBrwReci:AddCol()
oCol:bStrData := {|| if(Len( ::detalle ) > 0 , Transform(::detalle[oBrwReci:nArrayAt][(aData[p])],oLamcla:PIC7) ,"" ) }
oCol:cHeader = aTitu[p]
oCol:nWidth = 91
oCol:nHeadStrAlign = AL_RIGHT
oCol:nDataStrAlign = AL_RIGHT
oCol:oHeaderFont = oFont
NEXT
oCol = oBrwReci:AddCol()
oCol:bStrData := {|| if(Len( ::detalle ) > 0 , Transform(::detalle[oBrwReci:nArrayAt]["abon"],oLamcla:PIC7) ,"" ) }
oCol:cHeader = "Vr Pago/Abono"
oCol:nWidth = 91
oCol:nHeadStrAlign = AL_RIGHT
oCol:nDataStrAlign = AL_RIGHT
oCol:oHeaderFont = oFont
oCol:bFooter = {|| Transform(::hEncabezado["total"],oLamcla:PIC7) }
oCol:nFootStrAlign = 1
oCol:oFooterFont = oFont3
oBrwReci:SetArray( ::detalle )
oBrwReci:CreateFromResource( 102 )
Que estoy haciendo mal?
De antemano gracias