AAS Processing Error “Error returned: ‘M Engine error: ‘Microsoft.Data.Mashup; Token Comma expected”
I was recently working on an Azure Analysis Service – AAS project (It could also be a SQL Server Analysis Services – SSAS project), where I edited the M code using the wonderful Tabular Editor
I hope that this will assist people who have a similar error and quickly find the solution to the problem!
When I then tried to process a table in SSDT, I got the following error: Error returned: ‘M Engine error: ‘Microsoft.Data.Mashup; Token Comma expected
Which I have also shown below.
To be honest I was initially rather lost as where the issue was.
I went into the Expressions clicked through ALL of them and they all loaded fine.
I even went into the M Expression which I had worked on recently and it came back saying that “No syntax errors have been deteced.”
But low and behold every time I processed a table, I got the same error!
What I did next was to use another incredible product BISM Normalizer, and to run through the process of the deployment. My thoughts were this can tell me what is different between my SSDT version and the version in AAS.
I scrolled through each and every line looking for something different. And finally, right at the end there was a difference. Could this be it, could this be what is causing the issue?
This is what the TOM output looked like below.
Hmmm this got me thinking and looking at the code above it did not look right.
I then went back into the Expression Editor and had a look at the M Expression, where I did see that I had got the “in” right next to the #”Changed Type”
My thought was that this could be the potential cause of the issue.
To test this, I put the “in” on the next line, the result is that it now looked like the following below.
I then closed and saved my project. I went to my table and tried to process the table.
Yes, it finally processed successfully, so this was the cause of the issue. I could now see that what had happened is when I had put the “in” on the same line it then missed the double “”, which then caused the processing to fail because it was missing the comma
I then ran BISM Normalizer again to see what the TOM now looked like.
Next I deployed this change to my AAS server, and I could successfully process the database again.
Conclusion
This error did get me for a while, and I was very happy when I did finally solve it. I do hope that this will assist others in the future.
As always thanks for reading, if you got any comments or suggestions please leave them in the comments section below.
As a reference if you are using AsPartitionProcessing below is the same error below
it seems to out them on same line or not is not the issue. The.isue is that there is no space.between the line end and in keyword