xBrowse con Tree se comporta erronemente.

Post Reply
User avatar
Joel Andujo
Posts: 132
Joined: Fri Oct 07, 2005 3:14 pm
Location: Cd. Obregón, Sonora, México
Contact:

xBrowse con Tree se comporta erronemente.

Post by Joel Andujo »

Buenas tardes foro, tengo un problema con xbrowse cargando tree, el erroe aparece al mosrar/cargar el tree
por tercera vez, se pierde el item principal y aparece un fondo negro como si intentara mostrar una imagen.

el código:

Code: Select all | Expand

TREE oTree; lPVez:=.t.
         do while !oRs:oRs:Eof()
            cNat   :=oRs:coCtaNat
            nSalIni:=oRs:SalIni
            nCargo :=oRs:Cargo
            nAbono :=oRs:Abono
            nSalAct:=nSalIni+if(cNat=='D', (nCargo-nAbono), (nAbono-nCargo))

            // Ignoro cuentas sin saldos
            if empty(nCargo) .and. empty(nAbono) .and. empty(nSalAct)
               oRs:oRs:MoveNext(); loop
            endif
             //                                                   1              2              3              4        5          6          7        8
            // _TreeItem(strFormat('Cta{1}', oRs:cosCtaSub)):Cargo:={oRs:cosCtaSsb, oRs:cosCtaSss, oRs:cosCosNum, nSalIni, oRs:Cargo, oRs:Abono, nSalAct, oRs:x0Cta2Nom(_TRIM)}
            TREEITEM strFormat('Cta{1}', oRs:cosCtaSub) CARGO {oRs:cosCtaSsb, oRs:cosCtaSss, oRs:cosCosNum, nSalIni, oRs:Cargo, oRs:Abono, nSalAct, oRs:x0Cta2Nom(_TRIM)}
            nSub:=oRs:cosCtaSub

            oRs:oRs:MoveNext()
            lTreeSub:=.f.; if (oRs:cosCtaSub == nSub); TREE; lTreeSub:=.t.; endif
            do while (oRs:cosCtaSub == nSub) .and. !oRs:oRs:Eof()
               TREEITEM strFormat('Cta{1}', oRs:cosCtaSsb) CARGO {oRs:cosCtaSsb, oRs:cosCtaSss, oRs:cosCosNum, nSalIni, oRs:Cargo, oRs:Abono, nSalAct, oRs:x0Cta3Nom(_TRIM)}
               nSsb:=oRs:cosCtaSsb

               oRs:oRs:MoveNext()
               lTreeSsb:=.f.; if (oRs:cosCtaSsb == nSsb); TREE; lTreeSsb:=.t.; endif
               do while (oRs:cosCtaSsb == nSsb) .and. !oRs:oRs:Eof()
                  TREEITEM strFormat('Cta{1}', oRs:cosCtaSss) CARGO {oRs:cosCtaSsb, oRs:cosCtaSss, oRs:cosCosNum, nSalIni, oRs:Cargo, oRs:Abono, nSalAct, oRs:x0Cta4Nom(_TRIM)}
                  oRs:oRs:MoveNext()
               enddo
               if lTreeSsb
                  ENDTREE
               endif
            enddo
            if lTreeSub
               ENDTREE
            endif

         enddo
         ENDTREE
       ENDTREE
       // Si cargo el Tree desde un xbrowse de un recurs, pasa lo mismo
       xbrowse(oTree)
Les muestro el resultado:

Image

FWxH 24.10 BCC 7.70 con FWxH 21.04 y BCC 7.0 pasa lo mismo

De antemano gracias
Joel Andujo
Post Reply