I thought you might be on to something. I have aa file with one data source- connected to tables and 1 view- and this is failing. Happy to send a copy of the PBX over.
I think there might be a relation to using a "Case When" but I don't have the time to prove that unfortunately.
Just proved it is not the case when issue with a simple select getdate, and case when getdate()='2017-01-01' then 1 else 2 END as test.
it refreshed fine.
So I still have a simple model based on 4 tables from the same server one data source to pass credentials to (which suceed) all under the schema "dbo".
I have removed the view which then alloud the data to load OK. but reintroducing the vue is causing it to fail. I have tried stipping out elements of the view to simplify it, but it was still failing. I am off now for a couple of weeks (lucky me) so hopefully someone else will get this resovled/
Well I've made slight progress. Still don't what is causing it to error but I've loaded in three views (not using a stored procedure), each time importing a single view, uploading to the report server, scheduling a refresh with success. I've got to three views in and it is still fine so far (fingers crossed for tomorrow).
I had exactly the same problem, yet the solution turned out to be the silliest one.
For each data source, check the name of the server and the database, it seems to be case sensitive when deployed to the server, but not when using the Power BI Desktop.
So, if you have two or more data sources to the same DB, but one is defined as server1;myDB and the other one as server1;mydb (or Server1;myDB versus server1;myDB, or any other permutation), it will certainly fail.
Use the exact connection string already stored in the Power BI Server for the faulty dashboard, modify your data sources with Power BI Desktop, redeploy and retest the refresh, it worked for me.
Hope it helps!