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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
Anonymous
Not applicable

Acceda al valor string de DataSourcePath

Por lo tanto, después de escribir una URL de Api (por ejemplo, https://api.myapi.com) en el parámetro BaseUrl de mi conector de datos personalizado, ¿es posible capturar ese valor de cadena programáticamente?

Esperaba un método similar como Extension.CurrentCredential()[Nombre de usuario] para que pueda obtener el valor en otras funciones fuera del contexto donde se proporciona el parámetro URL.

Agradezco cualquier ayuda.

5 REPLIES 5
mahoneypat
Microsoft Employee
Microsoft Employee

Sí. Puede comenzar con una tabla que tenga una columna con sus URL. A continuación, puede hacer Web.Contents([Columna URL]) o concatenarlo en una dirección URL más compleja. Una vez que expanda la tabla de resultados, todavía tendría la dirección URL en cada fila de esa columna original.

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Anonymous
Not applicable

Gracias por su respuesta Pat, Soy nuevo a PowerBI y conectores de datos personalizados por lo que voy a profundizar en su respuesta. Sólo para asegurarnos de que nos entendemos y lo que estoy tratando de achive.

kasarrumann_1-1596217013754.png

Quiero extraer el valor DataSourcePath marcado en azul en mi proyecto de Visual Studio programáticamente para poder usarlo una función no retrasada como el ejemplo de:

kasarrumann_0-1596216979425.png

let
       objects = #table(
            {"Name",  "Key",                    "Data",                   "ItemKind", "ItemName", "IsLeaf"},{
            {"myFunction", "function1", someFunction(_url), "Function", "Function",    true}
        }),
        NavTable = Table.ToNavigationTableFunctions(objects, {"Key"}, "Name", "Data", "ItemKind", "ItemName", "IsLeaf") 
    in
        NavTable;

Proporcionar la dirección URL a la función someFunction() como argumento obliga a la función a evaluar tan pronto como navegue a ella, por lo que no funcionó.

El objetivo es evitar forzar a los usuarios que tengan que escribir la ruta de acceso de la dirección URL base una vez más para la función en la tabla de navegación y, en su lugar, usar la misma proporcionada al conector desde el principio. A continuación, cree direcciones URL más complejas a partir de otras entradas.

Gracias por tu ayuda.

Hola @kasarrumann

¿Este problema es amado?

Si es amado, ¿podría aceptarlo amablemente como una solución para cerrar este caso y ayudar a los otros miembros a encontrarlo más rápidamente?

Si no, por favor no dude en ha decirmelo.

Saludos

Maggie

Anonymous
Not applicable

Hola Maggie, no se resolvió desafortunadamente.

No puedo tener una tabla de todas las URL de clientes diferentes que se muestran aunque eso resolvería el problema aquí.

Mi conector es un navegador que también contiene funciones anidadas similares a este pseudocódigo de ejemplo:

shared Navtable.Contents = (userURL) as table =>
    let 
        Source = Json.Document(Web.Contents(URL & "Some path that lists api", Headers etc)
        createNavtable here
        table#(CreateNestedNavtable)
    in
        Navtable;


CreateNestedNavTable = () as table =>
    let
        objects = #table(
            {"Name", "Key","Data",               "ItemKind", "ItemName","IsLeaf"},{
            {"Item1", "item1", #table({"Column1"}, {{rows}), "Table", "Table",   true},
            {"myFunc", "func1", myFunction(), "Function",    "Function",    true}
        }),
        NavTable = Table.ToNavigationTable(objects, {"Key"}, "Name", "Data", "ItemKind", "ItemName", "IsLeaf")
    in
        NavTable;

myFunction = () =>
    let 
       Source = Json.Document(Web.Contents(URL** & "Some other path"))
       **get the URL parameter value which was required from Navtable.Contents(URL) which is 
       now stored, 
       as DataSourcePath for that query through M code instead of a new myFunction = (URL) 
       parameter. Is there anything similar to Extention.CurrentCredential()[Username] for a 
       queries' DataSourcePath metadata?
    in
       myFunctionResult
       

Hola @kasarrumann

Si desea mantener un poco de corrección y url base y dejar que utilice para seleccionar otros parámetros para formar una URL compleja basada en la URL base,

Como mahoneypat sugirió, puede crear parámetros para usar en las partes url a continuación.

Capture1.JPG

Saludos
Maggie
Equipo de apoyo a la comunidad _ Maggie Li
Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Kudoed Authors