Forum Discussion

DSArkphire's avatar
DSArkphire
Frequent Visitor
7 years ago
Solved

Dynamic Web.Contents Power BI Refresh Error

I’ve run into a problem with my report, I can’t refresh my report on the power bi web service and it labels web.contents as an unsupported function.

 

I’m calling my data through an API loop and from what I’ve read the problem seems to be an issue with my dynamic data source. I’ve tried to construct a partially static api but I’m not terribly sure how to proceed.

 

Edit: The is using anonymous authorization. 

 

  • I managed to resolve the issue with the following (note this may not be the same api url but the structure which corrected both remains the same.) 

     

     

4 Replies

  • Yes, the first parameter to web contents should be static.  You can use Web.Contents options relative path and query options.  Use query for passing parameters and relative path for extending the url passed as the first parameter.  I don't know the autentication method you are using, but if it is anonymous, your web service or service you are calling must support this for root level of the url

     

    Good luck

  • DSArkphire's avatar
    DSArkphire
    Frequent Visitor

    I managed to resolve the issue with the following (note this may not be the same api url but the structure which corrected both remains the same.) 

     

     

  • Anonymous's avatar
    Anonymous
    Not applicable

    I have set a Parameter that provides the ability to make a Dynamic URL with the Following Code which would later be merged with a list-to-table Query:

    let
    Document=(Numero as number)as table =>
    let
    Source = Web.Contents(“http://www.sanaa.hn/colonias/dbo_fechas_agua_list.php?masterkey1=”&Number.ToText(Numero)&”&mastertable=dbo.barriocolonia”,[RelativePath=”Numero”]),

    #”Extracted Table From Html” = Html.Table(Source, {{“Column1”, “TABLE[id=’form_grid_8′] > TR > :nth-child(1), TABLE[id=’form_grid_8′] > * > TR > :nth-child(1)”}, {“Column2”, “TABLE[id=’form_grid_8′] > TR > :nth-child(2), TABLE[id=’form_grid_8′] > * > TR > :nth-child(2)”}, {“Column3”, “TABLE[id=’form_grid_8′] > TR > :nth-child(3), TABLE[id=’form_grid_8′] > * > TR > :nth-child(3)”}, {“Column4”, “TABLE[id=’form_grid_8′] > TR > :nth-child(4), TABLE[id=’form_grid_8′] > * > TR > :nth-child(4)”}}, [RowSelector=”TABLE[id=’form_grid_8′] > TR, TABLE[id=’form_grid_8′] > * > TR”]),
    #”Promoted Headers” = Table.PromoteHeaders(#”Extracted Table From Html”, [PromoteAllScalars=true]),
    #”Changed Type” = Table.TransformColumnTypes(#”Promoted Headers”,{{“Id Colonia”, Int64.Type}, {“Barrio o Colonia”, type text}, {“Salida de Tanque”, type text}, {“Horario”, type text}})
    in

    #”Changed Type”
    in Document

    Static example of one of the URLS would be :”http://www.sanaa.hn/colonias/dbo_fechas_agua_list.php?masterkey1=1&mastertable=dbo.barriocolonia”

    How would the Relative Path and Query solution be applied in this context to solve the Refresh Solution in the PBI Service?