Necesito una ayuda,, uso FW1107 y tengo un problema depintado conel XBROWSE con ARRAY, ocurre lo siguiente:
dependiendo de la condicion que tenga cada registro dentro del ARRAY debiera pintarse la linea de un color cualquiera, pero sucede algo muy raro,, cuando el ARRAY tiene una linea la pinta dependiendo del estado, pero cuando tiene especificamente 2 lineas no pinta ninguna de las dos, es curioso, pero de 1, 3 o mas lineas todo funciona bien, pero con dos no funciona, aca les dejo mi programa a ver si lago estoy haciendo mal
Code: Select all | Expand
#include "Fivewin.ch"
#include "Folder.ch"
#include "Xbrowse.ch"
#include "Xml.ch"
#include "hbxml.ch"
#include "ribbon.ch"
#include "image.ch"
#include "FastReph.ch"
#include "codebar.ch"
FUNCTION prg_202()
LOCAL oDlg,oDbf1,oLbx
LOCAL acAnexo2:={}
PRIVATE r_orden:=1,r_clifac:='',r_docfac:=''
CGreen:={ { 0.50,65280,16777215 },{ 0.50,16777215,65280 } }
CYellow:= { { 0.50,65535,16777215 },{ 0.50,16777215,65535 }}
CRed:= { { 0.50,255,16777215 },{ 0.50,16777215,255 }}
COrange:= { { 0.50,33023,16777215 },{0.50,16777215,33023 }}
IF NetUse("NOTAVNTA", .T. )
DATABASE oDbf1
oDbf1:Load()
ELSE
MsgStop( "Fichero NOTA DE VENTAS Bloqueado" )
RETURN NIL
ENDIF
dbSelectArea(oDbf1:cAlias)
set order to 2
go top
do while .not. eof().and.val((odbf1:calias)->restado)<4
aadd(acAnexo2,{ (odbf1:calias)->rfolio,dtoc((oDbf1:cAlias)->rfecha),;
(oDbf1:cAlias)->rtipod,(oDbf1:cAlias)->rnombre,;
(oDbf1:cAlias)->rtotalnv1,(odbf1:calias)->rorden,;
(odbf1:calias)->rselect,(odbf1:calias)->ratencion,;
(odbf1:calias)->rprovisor} )
skip
enddo
if empty(acAnexo2)
aadd(acAnexo2,{"","","","",0,0,"","",""})
endif
DEFINE DIALOG oDlg RESOURCE "SVE202"
REDEFINE XBROWSE oLbx ID 101 OF Odlg;
COLUMNS 1,2,3,4,5,6,7,8,9;
HEADERS "Folio","Fecha","T/D","Nombre Factura","Valor Total",;
"Orden","Estado","Nro.Atencion","Nro.Provisorio";
COLSIZES 70,65,30,200,70,55,90,90,75;
PICTURE ,,,,'999,999,999.99';
ARRAY acAnexo2 AUTOSORT UPDATE FOOTERS LINES AUTOCOLS CELL;
ON RIGHT CLICK (prgres2(olbx:aArraydata[olbx:narrayat][7],;
val(olbx:aArraydata[olbx:narrayat][1])))
olbx:bClrStd := {|| {CLR_BLACK, IF( olbx:aArrayData[olbx:nArrayAt][7]='SELECCIONADO',cYellow,;
IF( olbx:aArrayData[olbx:nArrayAt][7]='PENDIENTE',cOrange,;
IF( olbx:aArrayData[olbx:nArrayAt][7]='VISADO',cGreen,;
IF( olbx:aArrayData[olbx:nArrayAt][7]='ERROR XML',cRed,;
IF( olbx:aArrayData[olbx:nArrayAt][7]='RECHAZADO',cRed,CLR_WHITE ))))) } }
ACTIVATE DIALOG oDlg CENTERED ON INIT (olbx:maketotals(),olbx:gotop(),olbx:refresh())
NETCLOSEALL()
RETURN .T.