Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
jyotiraditya
Regular Visitor

Tablas de navegación anidadas dinámicas para Power BI Custom Cconnector

Hola a todos,

Tengo un requisito en el que tengo que lograr la estructura de carpetas de nivel n en tablas de navegación dinámica, por lo que el contenido de la tabla de navegación dinámica vendrá de diferentes- diferentes llamadas API, una vez que llegue a un nivel.

Permítanme elaborar,

1. Paso 1- Soy capaz de recibir datos de la respuesta DE LA API, y soy capaz de representar la tabla de navegación de muy 1o nivel, pero utilizando un enfoque estático, que no es la forma que quiero. Consulte el siguiente código:

objetos: #table(
"Nombre", "Clave", "Datos", "ItemKind", "ItemName", "IsLeaf",o
"Columna expandida1"{0}[Column1.name], "n1", CreateNavTable("BBB"), "Folder", "Folder", false,
"Columna expandida1"{1}[Column1.name], "n2", CreateNavTable("BBB"), "Folder", "Folder", false?
}),

Arriba se puede ver que estoy pasando 0, 1 como valor de índice para obtener el nombre, me gustaría iterar de una manera de enfoque dinámico.

2. Paso 2 - Después de ampliar el 1o nivel el usuario será capaz de ver el nivel secundario, vamos a llamarlo como 2o nivel. Sí, los datos de segundo nivel también provienen de una llamada API diferente. Para que se explique con más detalle, supongamos que los datos de la tabla de navegación de 1st nivel provienen de una API, consulte a continuación:

URL base - http://abc.com/api/v1/

API de 1o nivel - http://abc.com/api/v1/fs

API de 2o nivel - http://abc.com/api/v1/fs + Nombre de carpeta principal

Consulte la siguiente imagen adjunta para obtener más referencia, Aquí 1st Level es Private y Shared, para obtener los datos de 2o nivel que necesita realizar llamadas api, por lo que en este caso(http://abc.com/api/v1/fs/private o http://abc.com/api/v1/fs/shared),de forma similar tiene que seguir llamando a las API llamar para los datos secundarios de siguiente nivel y representarlos en la tabla de navegación, y debe mantener las llamadas a la API hasta que llegue a su último nivel. También la interfaz de usuario de representación de la carpeta de navegación es dinámica, no puedo pasar el valor de índice estático.

screenshot.pngTablas de navegación

Soy nuevo en este lenguaje del programa, así que no tengo mucho conocimiento de cómo lograr esto. Por favor, aconséjeme aquí, estoy feliz de tener una sesión de trabajo o puedo compartir mi pieza de código del conector.

Gracias de antemano.

Saludos

Jyotiraditya

+91 9663659623

2 REPLIES 2
artemus
Employee
Employee

Simplemente cambie la desanación de CreateNavTable para incluir lo que necesita:

CreateNavTable = (entry as record) as table => 
    let
        subItems = entry[Children],
        objects = #table(
            {"Name",  "Key",   "Data",                           "ItemKind", "ItemName", "IsLeaf"},List.Transform(subItems, each 
               let isLeaf = Text.EndsdWith([Name], "/")
            in {[ItemName], [Name], if isLeaf then CreateTableFromPath(entry[Path]& [Name]) else @CreateNavTable(ListEntries(entry[Path] & [Name])), "Table",    "Table",    isleaf}
            ),
        NavTable = Table.ToNavigationTable(objects, {"Key"}, "Name", "Data", "ItemKind", "ItemName", "IsLeaf")
    in
        NavTable;

En este ejemplo confío en 2 funciones adicionales que deben implementarse:

CreateTableFromPath(text): proporciona la tabla para el elemento hoja en la calle

ListEntries(text) - Obtiene un registro para los elementos secundarios en el formulario:

[Nombre] - Nombre simple del elemento

[Ruta] - Ruta URL completa del elemento

Además, tenga en cuenta que en este ejemplo se cambia CreateNavTable para tomar en una entrada [Nombre > ..., Ruta de acceso ....].

Nota: Utilice el valor de la función de búsqueda para realizar una llamada de función recursiva.

v-xuding-msft
Community Support
Community Support

Hola @jyotiraditya ,

Lo siento por eso, sólo puedo lograr esto de acuerdo a esteDocumento. No somos muy buenos en el desarrollo de conectores personalizados. Me parece que algunos hilos sobre esto han resuelto por @artemus. Tal vez pueda ayudarte mucho.

Hola@artemus ,

¿Podrías por favor mirar en esteEscenarioy dar algo de ayuda? Gracias de antemano.

Best Regards,
Xue Ding
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.