Page 1 of 1

Ocultar celdas al mutar a formato arbol con XBrowse

PostPosted: Mon Jan 30, 2023 4:30 pm
by cmsoft
Estimados:
Tengo un xbrose con ciertos campos, y quiero mutar entre verlo en formato normal y formato arbol.
Al cambiar a formato arbol, me arma el arbol pero en los nodos me muestra la información vieja.
Voy al ejemplo
Code: Select all  Expand view

#include "tdolphin.ch"
#include "fivewin.ch"
function TestTree3()

   local oCn, oRs
   local oDlg, oBrw
   
   CONNECT oCn HOST 'localhost' ;
                      USER 'user' ;
                      PASSWORD 'password' ;
                      PORT 3306;
                      FLAGS 0;
                      DATABASE 'test'
   oRs   := oCn:Query("select STATE, CITY,FIRST,LAST, STREET, ZIP, AGE, SALARY  from customer")
   oRs:SetOrder("FIRST")
   oRs:GoTop()

   DEFINE DIALOG oDlg SIZE 800,400 PIXEL TRUEPIXEL
   @ 60,20 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg ;
      DATASOURCE oRs  ;
      COLUMNS "STATE", "CITY","FIRST","LAST", "STREET", "ZIP", "AGE";
      CELL LINES NOBORDER

   oBrw:lDisplayZeros   := .f.
   oBrw:CreateFromCode()

   @ 10, 20 BTNBMP PROMPT "TREE" SIZE 150,30 PIXEL OF oDlg FLAT ;
      WHEN oBrw:nDataType != 96 ;
      ACTION (oRs:SetOrder("STATE"),oBrw:SetTree( 2  ))

   @ 10,200 BTNBMP PROMPT "MYSQL" SIZE 150,30 PIXEL OF oDlg FLAT ;
      WHEN oBrw:nDataType = 96 ;
      ACTION ( oRs:SetOrder("FIRST"),oBrw:ResetData( oRs, { "STATE", "CITY","FIRST","LAST", "STREET", "ZIP", "AGE" } ), ;
               oBrw:GoTop() )

   ACTIVATE DIALOG oDlg CENTERED
   
oRs:End()
oCn:End()
return nil
 

Vista grilla
Image
Vista arbol (Repite en todos los nodos el valor del primer dato)
Image
Como puedo evitar que repita ese campo?
Desde ya muchas gracias!

Re: Ocultar celdas al mutar a formato arbol con XBrowse

PostPosted: Mon Jan 30, 2023 10:03 pm
by rubenfernandez01
Hola, probar no cuesta nada. Con un refresh probaste?

Saludos
Ruben Dario Fernandez

Enviado desde mi 21081111RG mediante Tapatalk

Re: Ocultar celdas al mutar a formato arbol con XBrowse

PostPosted: Tue Jan 31, 2023 3:34 pm
by leandro
A nosotros nos sucedió algo similar, generamos el nuevo tree y luego si lo mostramos en el xbrowse...
espero sea de ayuda
Code: Select all  Expand view

aTree := creanuevotree() //Hacemos la consulta en la base de datos y generamos el tree
oTree := aTree[2]
oBrw:oTree := oTree
oBrw:GoTop()
oBrw:refresh()
oTree:OpenAll()
oBrw:SetFocus()
 

Re: Ocultar celdas al mutar a formato arbol con XBrowse

PostPosted: Fri Feb 03, 2023 6:15 pm
by cmsoft
Gracias a ambos por responder
El Refresh no surte efecto.
Pensé en generar a mano un tree, pero tengo que hacer la lectura de la query de nuevo, y pretendía usar los datos ya existentes.... solo cambiar el tipo de vista.
Vi varios ejemples que mr Rao hace algo similar, pero con la query no pude hacerlo funcionar