Copy and paste a table (tablix) in SSRS

2019-04-03 03:35发布

问题:

I have a tablix that has data for one day, and I need to have the same data at the bottom but in 3 different lines. I'd like to copy the main day table 3 times at the bottom, and then use different datasets for each one.

I tried copying the tablix and pasting it into the Body beneath the tablix, but I get the following error:

Report Builder was unable to paste successfully.

How can I accomplish the copy and paste? Or if that isn't possible, is there another way to do what I am trying to accomplish?

Here's an animated screenshot:

回答1:

You are likely getting the error message Report Builder was unable to paste successfully because somewhere in the grid there is a cell that uses Custom Code From the Report

i.e. you cannot copy a textbox with this custom code: “Code.MyCustomeCode()”
- Report Builder was unable to paste successfully

This has been a reported bug since SSRS 2008:

When using Visual Studio 2008 to create new reports, we cannot copy and paste multiple textboxes in a tablix, and receive a popup error stating "Report Builder was unable to paste successfully"
- Unable to copy and paste textboxes in SSRS reports with Custom Code after 2008 R2 SP2 upgrade

Workaround:

  1. Open up the XML view for the report, either in Visual Studio by right clicking the report and selecting View Code, or by editing in any text editor.
  2. Comment out Code. blocks. Ctrl + F your way through the document looking for Code.. The goal is to preserve the code in some way, while temporarily commenting out the line. Depending on your actual code, this might be different, but I here's what I like to do:
    • Find:               =Code.
    • Replace With: ='Code.
  3. Go back to the Designer View and Copy and Paste the Tablix. You can do this by right clicking the top left corner of the tablix control:
  4. Go back to the XML View and reverse the find and replace
    • Find:                ='Code.
    • Replace With: =Code.

You should be all set!

Note: You cannot just copy the <tablix> block in the XML view after step 1 because it will create elements with the same exact name property



回答2:

Alternatively, you can just add a comment AFTER your code like so:

'custom code comment

Then you can copy and paste it as normal, without having to remove your comment afterwards or comment out your code beforehand.



回答3:

I encountered this issue, and I noticed that this bug occurred when there is a Code reference anywhere in the report, and is not limited to the copied fields.