Forum Discussion

Vstarv's avatar
Vstarv
Regular Visitor
3 years ago

Working with Power BI and ODATA

Hello. 

My company has a datalake, which we connect our Power BI reports to via ODATA. 

We are noticing several issues, in particular, refreshses with large datasets. 

 

Is there any formal best practices when working with ODATA. 

 

Am i correct in my statements below

1. Incremetal Refresh is not supported in Power BI for ODATAs?

2. Query Folding in not supported in Power BI for ODATAs?

 

Are there any workarounds. 

 

I read that if you construct your ODATA url to include only the columns you need then Power BI will only pull in those columns?

1 Reply

  • Anonymous's avatar
    Anonymous
    Not applicable

    If have used used filters and selected specific columns for ODATA using HTTPHeader and RelativePath. I filters at the source and adds in refreshes of large datasets.

    Example:

     

    let

        HTTPHeader =

        [

            RelativePath = "IncidentHasAttribute()?$format=json&$expand=Attribute,

                Attribute/AttributeType,

                Incident

     

            &$filter=substringof('AAA', Attribute/AttributeName) eq true and

                Attribute/AttributeType/Code eq 'CUSTOMFIELD' and

                Incident/IncidentDate ge DateTime'" & FiscalStartYear &"'

     

            &$select=IncidentId,

                Incident/IncidentDate,

                Attribute/LocationId,

                Attribute/BooleanValue,

                Attribute/DateValue,

                Attribute/NumericValue,

                Attribute/UnitCode,

                Attribute/TextValue,

                Attribute/AttributeName",

     

            Query =

            [],

            Headers =

            [#"Authorization"="Basic " & Credentials,

             #"Content-Type"="application/json; charset=utf-8"]],

     

        Source = Table.FromRecords(Json.Document(Web.Contents("https://odata-xxxxxx/odata.svc", HTTPHeader))[value]),