OData Client Compatibility: Difference between revisions
No edit summary |
No edit summary |
||
| Line 10: | Line 10: | ||
OdataLink uses the User-Agent header of the request to identify the client as follows. | OdataLink uses the User-Agent header of the request to identify the client as follows. | ||
User-Agent of ''Microsoft.Data.Mashup'' indicate the request came from ''[[#Excel|Excel]]'', ''Power BI'', ''Power Query'' and ''Fabric'' (and related products). | User-Agent of ''Microsoft.Data.Mashup'' indicate the request came from ''[[#Excel|Excel]]'', ''[[#Power BI|Power BI]]'', ''Power Query'' and ''[[#Fabric|Fabric]]'' (and related products). | ||
User-Agent of ''azure-data-factory'' indicate the request came from ''Azure Data Factory (ADF)''. | User-Agent of ''azure-data-factory'' indicate the request came from ''[[#Azure Data Factory (ADF)|Azure Data Factory (ADF)]]''. | ||
User-Agent of ''Microsoft.Data.DataFeedClient'' indicate the request came from ''SQL Server Integration Services (SSIS)''. | User-Agent of ''Microsoft.Data.DataFeedClient'' indicate the request came from ''[[#SQL Server Integration Services (SSIS)|SQL Server Integration Services (SSIS)]]''. | ||
User-Agent of ''Tableau''' or ''Apache-Olingo'' indicate the request came from ''Tableau''. | User-Agent of ''Tableau''' or ''Apache-Olingo'' indicate the request came from ''[[#Tableau|Tableau]]''. | ||
There is no mechanism yet to detect ''Solver'' or ''Fabric Data Factory''. | There is no mechanism yet to detect ''[[#Solver|Solver]]'' or ''[[#Fabric Data Factory|Fabric Data Factory]]''. | ||
Revision as of 22:58, 18 June 2025
The OData Client Compatibility option fine tunes the Odata Feed as different client have different implementation of the OData standard.
By default, new models are set to (Auto Detect) as this ensures the OData Feed can be used with many different clients. There are situations where you may need to choose a specific client.
(Auto Detect)
The (Auto Detect) option allows OdataLink to detect the type of OData Client that is requesting data. It then uses this to adapt the OData Feed dynamically and work around limitations of specific client. This is the legacy behaviour in how OdataLink worked prior to adding the other options.
OdataLink uses the User-Agent header of the request to identify the client as follows.
User-Agent of Microsoft.Data.Mashup indicate the request came from Excel, Power BI, Power Query and Fabric (and related products).
User-Agent of azure-data-factory indicate the request came from Azure Data Factory (ADF).
User-Agent of Microsoft.Data.DataFeedClient indicate the request came from SQL Server Integration Services (SSIS).
User-Agent of Tableau' or Apache-Olingo indicate the request came from Tableau.
There is no mechanism yet to detect Solver or Fabric Data Factory.
Azure Data Factory (ADF)
Azure Data Factory has some limitations in how it supports the OData standard. The main two limitations are that it:
- Does not support functions
- Functions will be accessible as as entity sets instead.
- Does not support complex types
Excel
Excel uses Power Query under the hood to extract the data. It has the most complete implementation of the OData Standard.
Fabric
Fabric uses Power Query under the hood to extract the data. It has the most complete implementation of the OData Standard.
Fabric Data Factory
Fabric Data Factory has some limitations in how it supports the OData standard. The main two limitations are that it:
- Does not support functions
- Functions will be accessible as as entity sets instead.
- Does not support complex types
Power BI
Power BI uses Power Query under the hood to extract the data. It has the most complete implementation of the OData Standard.
Power BI Dataflows
Power BI Dataflows uses Power Query under the hood to extract the data. It has the most complete implementation of the OData Standard.
Power BI Datamarts
Power BI Datamarts uses Power Query under the hood to extract the data. It has the most complete implementation of the OData Standard.
Solver
Solver has some limitations in how it supports the OData standard. The main limitations are that it:
- Does not support functions
- Functions will be accessible as as entity sets instead.
SQL Server Integration Services (SSIS)
SQL Server Integration Services (SSIS) has some limitations in how it supports the OData standard. The main limitations are that it:
- Does not support functions
- Functions will be accessible as as entity sets instead.
- Does not the Date data type
- Instead, dates will be returned using the DateTimeZoneOffset data type.
- Does not support complex types
Tableau
Tableau has some limitations in how it supports the OData standard. The main limitations are that it:
- Does not support functions
- Functions will be accessible as as entity sets instead.
- Does not support time zones
- The time zone component of the DateTimeZoneOffset data type will be omitted.
- Does not support complex types
Other
When assigning the option of Other, OdataLink makes the assumption the client supports the complete standard and will work in the same way as Excel, Power BI and Fabric.