Showing posts with label bookmarks. Show all posts
Showing posts with label bookmarks. Show all posts

Wednesday, March 21, 2012

Error on Export to Excel with Bookmarks and Navigation Jumps

Hello All,

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

Error on Export to Excel with Bookmarks and Navigation Jumps

Hello All,
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
sql