Important: In Excel for Microsoft 365 and Excel 2021, Power View is removed on October 12, 2021. As an alternative, you can use the interactive visual experience provided by Power BI Desktop, which you can download for free. You can also easily Import Excel workbooks into Power BI Desktop.
Symptoms
Consider the following scenario:
-
You use Microsoft SQL Server 2012 Reporting Services (SSRS 2012) or SQL Server 2014 Reporting Services (SSRS 2014) Power View for Microsoft SharePoint 2013 in a Microsoft Office Excel 2013 workbook.
-
The workbook is named in certain Korean characters.
-
You upload the workbook to SharePoint 2013.
In this scenario, you cannot view the workbook from SharePoint 2013 and you may receive the following error message:
Microsoft.Reporting.QueryDesign.Edm.Internal.EdmException: Unable to load the specified Entity Data Model. ---> System.ArgumentException: [net_WebHeaderInvalidControlChars]
Arguments:
Debugging resource strings are unavailable. Often the key and arguments provide sufficient information to diagnose the problem. See http://go.microsoft.com/fwlink/?linkid=106663&Version=5.1.20513.00&File=System.Net.dll&Key=net_WebHeaderInvalidControlChars
Parameter name: value
at System.Net.ValidationHelper.CheckBadWebHeaderChars(String name, Boolean isHeaderValue)
at System.Net.WebHeaderCollection.set_Item(String name, String value)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.UrlAccessHttpStreamHandler.<LoadImpl>d__6.MoveNext()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(IEnumerator`1 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl.BeginExecute(Func`2 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.BeginExecute(Func`2 asyncMethod, AsyncCallback userCallback, Object userState, AsyncEnumeratorSettings settings)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.UrlAccessHttpStreamHandler.BeginLoad(IUrlAccessMethodHandler urlAccessMethodHandler, List`1 requestCollection, AsyncCallback userCallback, Object userState)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.ReportServerConnection.<GetModelImpl>d__2d.MoveNext()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(IEnumerator`1 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl`1.BeginExecute(Func`2 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.BeginExecute[TResult](Func`2 asyncMethod, AsyncCallback userCallback, Object userState, AsyncEnumeratorSettings settings)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.ReportServerConnection.BeginGetModel(GetModelRequestInfo requestInfo, AsyncCallback userCallback, Object userState)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.EntityDataModelDefinitionService.<GetModelDefinitionImpl>d__4.MoveNext()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(IEnumerator`1 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl`1.BeginExecute(Func`2 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.BeginExecute[TResult](Func`2 asyncMethod, AsyncCallback userCallback, Object userState, AsyncEnumeratorSettings settings)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.<GetModelDefinitionImpl>d__ad.MoveNext()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(IEnumerator`1 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl`1.BeginExecute(Func`2 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.BeginExecute[TResult](Func`2 asyncMethod, AsyncCallback userCallback, Object userState, AsyncEnumeratorSettings settings)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.BeginGetModelDefinition(ModelIdentifier modelIdentifier, AsyncCallback userCallback, Object userState)
at Microsoft.Reporting.QueryDesign.Services.Internal.ModelManager.<>c__DisplayClass11.<LoadModelImpl>b__e()
at Microsoft.Reporting.QueryDesign.Services.Internal.ModelManager.WrapAnticipatedExceptions[T](Func`1 operation)
Note This issue occurs for file names that contain certain Korean characters. It does not occur if you rename the file by using other Korean characters or English characters. For example:
http://sharepoint/Shared Documents/한글.xlsx (This file reports error.)
http://sharepoint/Shared Documents/테스트.xlsx (This file can open successfully.)
http://sharepoint/Shared Documents/test.xlsx (This file can open successfully.)
Resolution
The issue was first fixed in the following cumulative update of SQL Server.
Cumulative Update 4 for SQL Server 2014 /en-us/help/2999197
Cumulative Update 2 for SQL Server 2012 SP2 /en-us/help/2983175
Cumulative Update 11 for SQL Server 2012 SP1 /en-us/help/2975396
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.