Today, I had the pleasure of getting an urgent request for a change to our existing SSAS tabular model. However, for some reason the following error appeared when I tried to open the project in VS2012:
An error occurred while opening the model on the workspace database. Reason: Object reference not set to an instance of an object. ============================ Call Stack: ============================ at Microsoft.AnalysisServices.VSHost.VSHostManager.PrepareSandbox(Boolean newProject, Boolean& isRefreshNeeded, Boolean& isImpersonationChanged, Boolean& saveRequired, List`1& truncatedTables, Boolean isRealTimeMode, Int32 clientCompatibilityLevel) at Microsoft.AnalysisServices.VSHost.Integration.EditorFactory.CreateEditorInstance(UInt32 grfCreateDoc, String pszMkDocument, String pszPhysicalView, IVsHierarchy pvHier, UInt32 itemid, IntPtr punkDocDataExisting, IntPtr& ppunkDocView, IntPtr& ppunkDocData, String& pbstrEditorCaption, Guid& pguidCmdUI, Int32& pgrfCDW)
And after that, I just got “Object reference not set to an instance of an object” whenever I tried to open the .bim file.
Great! I have no idea what is causing the error, and why this seems to have creeped in since we last worked with the project.
I have a slight suspicion that SQL Server 2012 SP1 has been installed since I last worked with the project, but not entirely sure on that. I’m am sure, though, that we are running on SP1.
Anyway, what worked for me was to create a new tabular project and import the model from the one currently in operation.
So if you encounter this error and cannot progress otherwise, this may work for you as well.
Just make sure you verify the project settings afterwards (right-click the VS project > Properties and ensure that your deployment server, edition etc. is set to what you need).
Microsoft have published a cumulative update to SQL Server 2012 SP1. It does mention one hotfix regarding opening projects in tabular mode. But the error message is not identical to the one above. I have not tried this – I got the job done with the above workaround instead.
Leave a Reply