Pasar un parámetro a una URL

Un usuario Pregunto ✅

globo ocular

Hola,

Recién estoy comenzando en Power BI y me preguntaba si es posible pasar un patameter de un mosaico a otro que obtenga sus datos de una URL web.

Entonces, lo que estoy pensando es que en un informe habría una lista de fondos que proviene de un sistema interno y cuando se selecciona uno, el código del fondo se pasa a una URL web y los datos web en tiempo real se recuperan y se muestran. en el informe en otro mosaico.

Espero que tenga sentido

¡Gracias!

Hola @eyeball,

>> Estoy comenzando en Power BI y me preguntaba si es posible pasar un patametro de un mosaico a otro que obtenga sus datos de una URL web.

No he encontrado una forma de usar mosaicos para cumplir con sus requisitos. En mi opinión, puede usar la consulta de energía y los parámetros para obtener datos del contenido web.

Por ejemplo:

Creata parámetro de otra consulta.

Capture.PNG

Capture2.PNG

Escribe una función personalizada para llamar a api:

let
    CallAPi= (
        URL as text,
        Token as text,
        optional Timeout as number
    ) as any => 
let
    WebTimeout = if Timeout = null then #duration(0,0,0,100) else #duration(0,0,0,Timeout) , 
    WebResponse = Web.Contents(URL&"?Token="&Token, 
        [Headers = [Authorization="xxxxx",
                    #"Content-Type"="application/json",
                    Accept="application/json"],
         Timeout = WebTimeout]),
    
    output = formatfunction(WebResponse) //format the response
in
    output 
in
    CallAPi

Agregue una nueva consulta para invocar esta función:

let
    Source = CallAPi("URL", ParaList, 10000)
in
    Source

Después de los pasos anteriores, puede modificar el parámetro para cambiar la tabla de origen.

Capture3.PNG

Link de referencia:

Web.Contenidos

¿Es posible actualizar dinámicamente la URL de origen con Power Query?

Saludos,

Xiaoxin Sheng

Anónimo

En respuesta a v-shex-msft

@globo ocular,

Creo que la sugerencia de @ v-shex-msft es un buen enfoque para este problema, pero puede haber un par de puntos a tener en cuenta que he acertado recientemente:

  1. No creo que pueda editar parámetros en el servicio Power BI, solo en Desktop, por lo que si sus clientes solo usan el servicio PBI, esto no funcionará;
  2. Incluso en el escritorio, una vez que hace clic en los varios pasos para editar un parámetro, debe «Aplicar cambio» para forzar una actualización en el nuevo conjunto de datos, por lo que la interfaz de usuario es bastante torpe en este momento; y
  3. El uso de un parámetro basado en una consulta para formar una URL para una (segunda) consulta externa invocará el error «Formula.Firewall» sobre la combinación de fuentes de datos internas y externas. Deberá estar preparado para activar la «Combinación rápida». opción para solucionar eso mediante checking: «Ignore los niveles de privacidad …» en Configuración -> Opciones -> Privacidad – consulte http://www.excelguru.ca/blog/2015/03/11/power-query-errors-please-rebuild- esta-combinación-de-datos /.

Hay algo de discusión sobre este tipo de tema en esta idea -https: //ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/11723658-allow-publish-time-param …

Recomiendo votar por esta u otra idea para ayudar a obtener un mejor soporte para este tipo de requisitos.

Hola @eyeball,

>> Estoy comenzando en Power BI y me preguntaba si es posible pasar un patametro de un mosaico a otro que obtenga sus datos de una URL web.

No he encontrado una forma de usar mosaicos para cumplir con sus requisitos. En mi opinión, puede usar la consulta de energía y los parámetros para obtener datos del contenido web.

Por ejemplo:

Creata parámetro de otra consulta.

Capture.PNG

Capture2.PNG

Escribe una función personalizada para llamar a api:

let
    CallAPi= (
        URL as text,
        Token as text,
        optional Timeout as number
    ) as any => 
let
    WebTimeout = if Timeout = null then #duration(0,0,0,100) else #duration(0,0,0,Timeout) , 
    WebResponse = Web.Contents(URL&"?Token="&Token, 
        [Headers = [Authorization="xxxxx",
                    #"Content-Type"="application/json",
                    Accept="application/json"],
         Timeout = WebTimeout]),
    
    output = formatfunction(WebResponse) //format the response
in
    output 
in
    CallAPi

Agregue una nueva consulta para invocar esta función:

let
    Source = CallAPi("URL", ParaList, 10000)
in
    Source

Después de los pasos anteriores, puede modificar el parámetro para cambiar la tabla de origen.

Capture3.PNG

Link de referencia:

Web.Contenidos

¿Es posible actualizar dinámicamente la URL de origen con Power Query?

Saludos,

Xiaoxin Sheng

Anónimo

En respuesta a v-shex-msft

@globo ocular,

Creo que la sugerencia de @ v-shex-msft es un buen enfoque para este problema, pero puede haber un par de puntos a tener en cuenta que he acertado recientemente:

  1. No creo que pueda editar parámetros en el servicio Power BI, solo en Desktop, por lo que si sus clientes solo usan el servicio PBI, esto no funcionará;
  2. Incluso en el escritorio, una vez que hace clic en los varios pasos para editar un parámetro, debe «Aplicar cambio» para forzar una actualización en el nuevo conjunto de datos, por lo que la interfaz de usuario es bastante torpe en este momento; y
  3. El uso de un parámetro basado en una consulta para formar una URL para una (segunda) consulta externa invocará el error «Formula.Firewall» sobre la combinación de fuentes de datos internas y externas. Deberá estar preparado para activar la «Combinación rápida». opción para solucionarlo mediante checking: «Ignore los niveles de privacidad …» en Configuración -> Opciones -> Privacidad – consulte http://www.excelguru.ca/blog/2015/03/11/power-query-errors-please-rebuild- esta-combinación-de-datos /.

Hay algo de discusión sobre este tipo de tema en esta idea -https: //ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/11723658-allow-publish-time-param …

Recomiendo votar por esta u otra idea para ayudar a obtener un mejor soporte para este tipo de requisitos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *