posted 8/3/2010 by MarkGStacey - Views: [4117]
So when exporting scorecards to PowerPoint or Excel, I'd get the error below:
An unexpected error occurred. Error 46645.
Exception details:System.ServiceModel.FaultException: The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the <serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation and inspect the server trace logs.
Server stack trace: at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter) at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at Microsoft.PerformancePoint.Scorecards.IBIMonitoringServiceApplication.ExportScorecard(String exportSettings, RepositoryLocation scorecardLocation, WebPartContext webPartContext) at Microsoft.PerformancePoint.Scorecards.BIMonitoringServiceApplicationProxy.<>c__DisplayClassca.<ExportScorecard>b__c9(IBIMonitoringServiceApplication channel) at Microsoft.PerformancePoint.Scorecards.BIMonitoringServiceApplicationProxy.ExecuteOnChannel(CodeBlock codeBlock)
And in the event viewer, the error below:
An unexpected error occurred while trying to export.
System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.AddGridCell(Int32 absoluteRow, Int32 absoluteColumn, GridCell cell, GridHeaderItem rowGridHeaderItem, GridHeaderItem columnLeafItem, GridFormatInfo format, Int32 maxDisplayElements) at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.AddGridCell(GridHeaderItem rowHeader, Int32& currentRowOffset, Int32 absoluteColumn, GridHeaderItem colLeafItem, Int32 maxDisplayElements) at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.TraverseRowHeaders(Int32 absoluteColumn, GridHeaderItem colLeafItem, Int32 maxDisplayElements) at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.TraverseColumnTree(GridHeaderItem colItem, Int32 rowThreshold, Single& colHeaderWidth, Single& colHeaderOffset) at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.TraverseColumnTree(GridHeaderItem colItem, Int32 rowThreshold, Single& colHeaderWidth, Single& colHeaderOffset) at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.ProcessScorecard(ExportFormat exportFormat, GridViewData viewData, DataTable filterTable, Boolean filterMode, DictionaryWrapper`2 clientViewState) at Microsoft.PerformancePoint.Scorecards.ServerCommon.Export.Engine.GridFactory.CreateGridFromScorecard(ExportFormat exportFormat, IExportModel exportModel, RelatedInfo relatedInfo, GridViewData currentGridViewData, PrimitiveGrid& primitiveGrid, String[]& tempFileCleanupLog, DataTable filterTable, Boolean filterMode, DictionaryWrapper`2 clientViewState)
PerformancePoint Services error code 20400.
Not very helpful, and not much documentation on the internet.
So I followed a standard debugging approach
And it turned out to be the Custom Indicator.
Odd though, because one of the metrics that I'd added was already a custom indicator
So I compared the two, and as it turns out, I hadn't assigned an icon to the noData value, as I wanted it to be blank. I created a new icon, all white in this case, but you'd normally want an all transparent icon, uploaded, and voila, all fixed.
Hope this helps
Good stuff. Did the job. Thanks.