Ошибка SSAS HRESULT E_FAIL была возвращена из вызова COM-компонента при попытке загрузить представление источника данных

Совсем недавно проверил многомерное решение нашей команды из системы управления версиями, и я постоянно получаю сообщение об ошибке ниже, когда VS пытается загрузить представление источника данных.

Я использую Windows 8, Visual Studio 2013.4 (на момент появления ошибки был на .3).

Любая помощь будет принята с благодарностью. В журналах событий ничего нет, и сообщение об ошибке кажется совершенно бесполезным.

Заранее спасибо за вашу помощь.

РЕДАКТИРОВАТЬ: дополнительное примечание, другой член команды имеет ту же проблему, и мы единственные, кто обновился до Windows 8, так что это может быть ключом к разгадке.

===================================

Ошибка не позволила загрузиться представлению. (Microsoft Visual Studio)

===================================

Ошибка HRESULT E_FAIL была возвращена из вызова компонента COM. (msddsp)


Расположение программы:

at MSDDS.IDdsDiagram.CreateConnector(String ProgID, Boolean Visible, IDdsDiagramObject Src, IDdsDiagramObject Dest)
at Microsoft.DataWarehouse.Controls.Interop.AxMSDDS.CreateConnector(String progID, Boolean visible, IDdsDiagramObject src, IDdsDiagramObject dest)
at Microsoft.DataWarehouse.Design.ComponentDiagram.OnCreateConnector(IDdsDiagramShape startShape, IDdsDiagramShape endShape, Object logicalConnector, UInt32 color, String connectorProgID)
at Microsoft.DataWarehouse.Design.ComponentDiagram.CreateConnector(IDdsDiagramShape startShape, IDdsDiagramShape endShape, Object logicalConnector)
at Microsoft.AnalysisServices.Design.DataSourceDiagram.CreateRelationshipConnector(DataRelation dr)
at Microsoft.AnalysisServices.Design.DataSourceDiagram.ShowOtherConnectorsOnRelatedTables(DataTable dataTable)
at Microsoft.AnalysisServices.Design.DataSourceDiagram.ShowTable(DataTable dataTable, Int32 prefX, Int32 prefY, Boolean delayArrangeTables)
at Microsoft.AnalysisServices.Design.DataSourceDiagram.AfterDeserialize()
at Microsoft.DataWarehouse.Design.ComponentDiagram.SetLayoutInfo(String xml)
at Microsoft.DataWarehouse.Design.ComponentDiagram.OnDiagramControlCreated(DdsDiagram dds)
at Microsoft.AnalysisServices.Design.DataSourceDiagram.OnDiagramControlCreated(DdsDiagram dds)
at Microsoft.DataWarehouse.Design.ComponentDiagram.CreateDdsView(Control parentControl)
at Microsoft.AnalysisServices.Design.DataSourceDesignerView..ctor(DataSourceDesigner designer, DataSourceDiagram diagram, IComponent diagramOwnerComponent)
at Microsoft.AnalysisServices.Design.DataSourceDesignerView..ctor(DataSourceDesigner designer)
at Microsoft.AnalysisServices.Design.DataSourceDesigner.CreateDataSourceDesignerView(VsStyleToolBar pageViewToolBar)
at Microsoft.DataWarehouse.Design.EditorWindow.EnsureViewIsLoaded(EditorView view)

person user1032943    schedule 21.11.2014    source источник
comment
К какой реляционной СУБД вы обращаетесь? Для этого установлен правильный драйвер? У драйвера правильная разрядность (32 против 64)?   -  person FrankPl    schedule 27.11.2014


Ответы (2)


Я считаю, что эта проблема связана с версией файла в надстройке инструментов данных BI. Хотя в моем случае версии разные, у меня была точно такая же ошибка.

В моем случае я разработал решение SSAS для Windows 7 с Visual Studio 2010. Я проверил его в TFS, и коллега внес в него некоторые изменения, прежде чем вернуть его обратно. Когда я попытался открыть его снова, я получил точную ошибку вы описали (расположение программы также было показано как MSDDS.IDdsDiagram.CreateConnector).

У моего коллеги установлены Visual Studio 2013 и надстройка инструментов данных бизнес-аналитики Visual Studio 2013, но он внес свои изменения в Visual Studio 2010.

Я подумал, что проблема может быть в версии файла, поэтому попытался установить Visual Studio 2013 и перезапустить, а затем снова открыть решение в Visual Studio 2010 - проблема не исчезла. Затем я установил надстройку инструментов данных бизнес-аналитики, которая идет с Visual Studio 2013, и перезапустил. Когда я снова открыл решение в Visual Studio 2010, проблема была решена, теперь я не получаю ошибок и могу видеть представление источника данных.

Короче говоря, я считаю, что проблема заключается в файле, который используется в надстройках инструментов данных BI 2010 и 2013 годов, версия которых изменилась.

Я понимаю, что это не точное решение, поскольку у вас разные версии, но, надеюсь, этой информации достаточно, чтобы помочь вам определить точные установки (или деинсталляции), которые вам необходимо выполнить. Если это приведет к тому, что вы решите проблему (или, по крайней мере, определите, что это такое), не могли бы вы опубликовать подробности своего сценария на случай, если это поможет кому-то еще?

person Jo Douglass    schedule 08.12.2014

Это может произойти, если кто-то редактирует проект на машине с более ранней версией Sql Server Data Tools (SSDT). Тоже вроде бы случилось однажды после некоторых обновлений системы. Похоже, что обновления зарегистрировали более раннюю версию ключевого файла SSDT.

Сначала просмотрите код в одном из измерений и найдите следующее:  Dimension.xml ddscontrol

Теперь создайте новое измерение и посмотрите на то же значение. Зафиксируйте все несвязанные изменения и сделайте резервную копию своего проекта.

Если значение для ddsxmlobjectstreaminitwrapper больше, попробуйте скопировать это значение из нового измерения в плохое, а затем снова открыть плохое измерение в своей среде IDE. Теперь он должен работать. Это будет свидетельством того, что размер был отредактирован на машине с более ранней версией SSDT.

Если новое измерение имеет более низкое значение, как для меня, это означает, что на моем компьютере установлена ​​более ранняя версия SSDT; однако у меня последняя версия, поэтому я перерегистрировал DdsShapes.dll

C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Bin>regsvr32 -u DdsShapes.dll
C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Bin>regsvr32 DdsShapes.dll

Использованная литература:

person Mark Dornian    schedule 17.08.2017