Hi,
I have weird situation where SSIS OLE DB Source component fails with DAX query while I want to connect to upgraded SSAS 2017 Instance. However when I connect to the SSAS 2016 (old) instance everything works fine.
Error what I get while running SSIS package is following: "Error: The expression for variable "DAXquery" failed evaluation. There was an error in the expression."
While trying to parse query in package following "helpful" error appears: "OLE DB error: OLE DB or ODBC error: An unexpected exception occurred."
I created new project to eliminate possible corrupted project instability and figured out that it depends on the DAX query itself, if it gets parse error in SSAS 2017 connector or not (see query examples below).
However both queries work fine in DAX studio connecting SSAS 2017 and 2016 and in SSIS package if connecting to SSAS 2016. If I try to connect in SSIS package to SSAS 2017 , longer query gets parse error...
Any Ideas what might create different behavior in DAX syntax depending on SSAS version?
Simple query - no error___________________________________________________________
EVALUATE SUMMARIZE('Dim Kuupäev', 'Dim Kuupäev'[KuuAasta])
Query with some filters - gets error in SSAS 2017___________________________________________________
DEFINE VAR __DS0FilterTable =
FILTER(
KEEPFILTERS(VALUES('Dim Kuupäev'[Kuupäev])),
AND(
'Dim Kuupäev'[Kuupäev] >= DATE(2016, 9, 1),
'Dim Kuupäev'[Kuupäev] < DATE(2018, 6, 21)
)
)
VAR __DS0FilterTable2 =
FILTER(
KEEPFILTERS(VALUES('Dim Kaubadimensioon'[Kaubadimensioon konfiguratsioon])),
'Dim Kaubadimensioon'[Kaubadimensioon konfiguratsioon] = "-"
)
VAR __DS0FilterTable3 =
FILTER(
KEEPFILTERS(VALUES('Dim Ladu'[Lao kood])),
NOT(
OR(
OR(
OR(
OR('Dim Ladu'[Lao kood] = "11", 'Dim Ladu'[Lao kood] = "15"),
'Dim Ladu'[Lao kood] = "94"
),
'Dim Ladu'[Lao kood] = "95"
),
'Dim Ladu'[Lao kood] = "99"
)
)
)
VAR __DS0FilterTable4 =
FILTER(
KEEPFILTERS(VALUES('Dim Kaup'[Kauba konteerimisreegel])),
OR(
OR(
OR(
OR(
OR(
OR(
'Dim Kaup'[Kauba konteerimisreegel] = "CON",
'Dim Kaup'[Kauba konteerimisreegel] = "ELE"
),
'Dim Kaup'[Kauba konteerimisreegel] = "GAR"
),
'Dim Kaup'[Kauba konteerimisreegel] = "HOM"
),
'Dim Kaup'[Kauba konteerimisreegel] = "INT"
),
'Dim Kaup'[Kauba konteerimisreegel] = "MET"
),
'Dim Kaup'[Kauba konteerimisreegel] = "SAN"
)
)
EVALUATE
SUMMARIZECOLUMNS(
'Dim Kuupäev'[Kuupäev], 'Dim Ladu'[Lao kood], 'Dim Kaup'[Kaubakood]
,
__DS0FilterTable,
__DS0FilterTable2,
__DS0FilterTable3,
__DS0FilterTable4,
"Füüsiline_laokogus", 'Fakt Laoseis'[Füüsiline laokogus]
)
Regards,
Fred