Leer nodos de un árbol hasta su raíz desde una hoja o rama

Buenas tardes.
No sé cómo o si se puede conseguir (solo con lenguaje nativo).
Digamos que tengo una hoja (familia 010204) que representa la familia de artículos “Bandejas de sobremesa”
Esta hoja pertenece a la rama 0102, que es una subfamilia con nombre “Archivo”
Esa rama pertenece a la raíz 01 que es la familia “Papelería”

Quisiera obtener esos tres registros del árbol de familias para un artículo de la familia 010204.
01
0102
010204

Y omitir todos los demás registros que pueda haber en esa tabla de familias.
1
011
0101
01021
010203
etc
Hasta ahora sólo se me ocurre hacer un modo bruto con cargar lista quitando un carácter por la derecha cada vez y considerar encontrado un nodo cuando se devuelva un solo registro.
Muy bruto, lento, imposible.

Buenos días,

Yo tengo algo parecido en una tabla arbolada.

Tengo un enlace a maestro de la misma tabla con el contenido inicial choose(len(#ID)<#PARAMETROS.DIG_NIV_FAM, “”, left(#ID,len(#ID)-#PARAMETROS.DIG_NIV_FAM)).

El valor de DIG_NIV_FAM es en tu caso 2. De esa forma tengo accesible desde cada subfamilia la familia padre. Así puedes ir recorriendo los maestros hacia arriba desde el nodo final y añadiéndolos a una cesta.

No sé si te valdrá algo así.

Un saludo

1 me gusta

Si, si me sirve. Muchas gracias.