Page 1 of 1

Obtener todos los padres (ascendencia y descendencia) de un item Treeview

Posted: Tue Feb 27, 2018 1:32 am
by jparada
Hola,

Estoy intentando obtener los folders de la bandeja principal de outlook en un treeview, el detalle que no logro es cómo obtener todos los parent de un item seleccionado, por ejemplo, en la imagen se observa que me faltan algunos parent:
treeview.png
treeview.png (18.17 KiB) Viewed 2123 times
Obtengo el elemento seleccionado, su parent y el root, pero falta en este ejemplo el parent "Folder B_hijo_de_A" y a su vez el parent de este que es "Folder A"

lo hago así:

Code: Select all

MsgInfo ({ " RootValue = ",frmMain.objTree.Item ( frmMain.objTree.RootValue), HB_EOL(),;
           " ParentValue = ",frmMain.objTree.Item (frmMain.objTree.ParentValue(frmMain.objTree.Value)),  HB_EOL(),;
           " Item = ",frmMain.objTree.Item (frmMain.objTree.Value), HB_EOL() })
Pero además una vez que logre obtener del item toda la ascendencia/descendencia, para obtener los correos de la carpeta seleccionada debo hacer algo así:

Code: Select all

oInbox := oNameSpace:GetDefaultFolder( InboxFolder )
selectedFolder := oInbox:Folders( )  -> aquí va anidado dependiendo si tiene hijos, para este ejemplo quedaría:

selectedFolder := oInbox:Folders( "Bandeja de entrada" ):Folders( "Folder A" ):Folders( "Folder B_hijo_de_A" ):Folders( "folder1_hijo_de_B" ):Folders( 
 "otro_folder_hijo_de_folder1" )
Tienen alguna idea de cómo puedo obtener todos los parent y sobre todo cómo armar la línea selectedFolder en base al item seleccionado.

Gracias.

Saludos,
Javier

Re: Obtener todos los padres (ascendencia y descendencia) de un item Treeview

Posted: Tue Feb 27, 2018 1:53 am
by srvet_claudio
See
<ParentWindowName>.<TreeControlName>.GetPathName ( nValue ) --> acPathName | NIL

hmgdoc/data/tree.htm

Re: Obtener todos los padres (ascendencia y descendencia) de un item Treeview

Posted: Tue Feb 27, 2018 2:10 pm
by jparada
Hola Claudio,

Gracias por la información, justo lo que necesitaba.

Saludos,
Javier