We're running RS 2005. I have a problem in a report using two
main sections. There's a top level report, made up from 4 tables
within a rectangle. The second section of the report contains the
detail of the calculations making the top level figures.
The second section of the report contains bookmarks and jump links to
drill to different levels of the reporting structure. This works
fine.
The top level of the report also has jump to bookmark links to drop
into the relevant section of section two, and display the detail.
The problem I'm having is that although the jump links work fine within
report manager, the report will not export to excel from report
manager. It errors with the error at the bottom of this post.
Removing the bookmark links from the top level of the report solves the
export issue (but obviously without the functionality I require).
The strangest thing is that the export works fine from the development
environment in VS .NET 2005, although the bookmarks do not work and
claim an "invalid link" (or something similar).
Any ideas, anybody?
Thanks in advance.
Jon
Error message below:
w3wp!reportrendering!1!06/22/2006-16:51:19:: e ERROR: Throwing
Microsoft.ReportingServices.ReportProcessing.WrapperReportRenderingException:
An error occurred during rendering of the report., ;
Info:
Microsoft.ReportingServices.ReportProcessing.WrapperReportRenderingException:
An error occurred during rendering of the report. >
Microsoft.ReportingServices.ReportRendering.ReportRenderingException:
An error occurred during rendering of the report. >
System.ArgumentException: Item has already been added. Key in
dictionary: ' 2' Key being added: ' 2'
at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
at System.Collections.Hashtable.Add(Object key, Object value)
at
Microsoft.ReportingServices.Rendering.BIFFUtility.WorkBook.AddBookmarkLink(String
name, String uniqueName, Boolean keepName)
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.RenderTextBox(TextBox
textBox, PageReportItemInfo reportItemInfo, PageCell pageCell,
PageTableGrid pageTableGrid, ReportItem dataRegionParent,
Hashtable& duplicateItemsTable, Hashtable riReferenceTable, Int32
row, Int32 col, Boolean addHeaderRows)
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.RenderGridCell(PageLayout
pageLayout, Int32 row, Int32 col, Hashtable& duplicateItemsTable,
Boolean addHeaderRows, ReportItem parentItem, Hashtable
riReferenceTable)
at
Microsoft.ReportingServices.Rendering.BIFFUtility.WorkSheet.WriteRowBlocksAndCells(ExcelRenderer
excelRenderer, Stream stream, UInt32 indexBeginOffsetPosition, Int32
minCol, Int32 maxCol)
at
Microsoft.ReportingServices.Rendering.BIFFUtility.BaseWorkSheet.WriteWorkSheet(ExcelRenderer
excelRenderer, Stream stream, Int32 offset)
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.RenderPageLayout(PageLayout
pageLayout, Int32& currentPageNumber, Stack& stack)
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.RenderPageCollection(PageCollection
pageCollection, Int32& currentPageNumber, Stack& stack,
PageLayout& lastPageLayout)
at Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.GenerateWorkSheets()
at Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.GenerateMainSheet()
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.RenderExcelWorkBook(CreateAndRegisterStream
createAndRegisterStream)
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.ProcessReport(CreateAndRegisterStream
createAndRegisterStream)
at
Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer.Render(Report
report, NameValueCollection reportServerParameters, NameValueCollection
deviceInfo, NameValueCollection clientCapabilities,
EvaluateHeaderFooterExpressions evaluateHeaderFooterExpressions,
CreateAndRegisterStream createAndRegisterStream)A little more on this issue.
I've two extra tables to the top level of the report to represent other
views on the same data. I've found that the top level figure -
which is a single table, with only a detail row, and only a single row
of data feeding into it - works fine, whilst another new table (with
again, a single table, only a detail row, but a different dataset with
the same fields) does not work.
Confused |||Again... some more on this issue!
A colleague of mine has a similar problem. Making a couple of
assumptions, the common issue seems to be when you have bookmark/jump
IDs that are generated from the dataset. If you have two
different jump points that jump to the SAME bookmark, there appears to
be an issue.
As mentioned previously, I can export through the development environment but the bookmark links show up as being invalid.
I'm sure this is a feature supported by Excel. Is this possibly a bug with the excel renderer?
Cheers,
Jon|||
It definately seems like a bug, although I haven't been able to duplicate it yet. I don't have an idea for a workaround at this time.
The fact that you can run it successfully from Visual Studio is puzzling. Do you have different versions of Reporting Services installed on your server vs. where you are developing?
- Geoff
|||Hi Geoff,Thanks for looking at this post too.
I do run both RS 2000 and 2005, but they're hosted on seperate servers,
and I develop using the appropriate version of VS .NET (2k3 for RS 2k,
and 2k5 for RS 2k5). In this case it's VS 2k5 with RS 2k5.
It will export from VS, but the bookmark links on the Excel version do
not work and come up with a "Reference Not Valid" error when
clicked. It simply won't export from the report manager and
errors (as above). Would you like me to mail you spreadsheet with
the export from the development environment? With the error
message posted above, you can see what happens from both VS and report
manager.
Regards,
Jon|||
Hi Jon,
This looks like a bug to me. The best way to continue here is to submit it via Microsoft Connect, at https://connect.microsoft.com/SQLServer. This will get the issue into our bug pipeline so that it can be properly addressed and tracked for a fix.
Thanks, Geoff
|||OK Geoff, thanks for your help.I've now logged this bug, so we'll see if something comes back from
it. Unfortunately, connect isn't particularly compatible with
Firefox so I ended up submitting it 4 times!
Shall I submit this bug too
Thanks again,
Jon