Home Dashboard Directory Help
Search

SQL 2012 SP1 Reporting Services Web Parts cab file is broken by Kyle Hale


Status: 

Active


2
0
Sign in
to vote
Type: Bug
ID: 808292
Opened: 11/11/2013 3:14:19 PM
Access Restriction: Public
2
Workaround(s)
view
2
User(s) can reproduce this bug

Description

The RSWebparts.cab file provided by the SQL Server 2012 SP1 Reporting Services add-in found here:

http://www.microsoft.com/en-us/download/details.aspx?id=35583

is invalid because the subfolders for the localization packs have been removed from the cab file. (See attachments for details.)

Please see this community post for some additional details:

http://social.msdn.microsoft.com/Forums/sqlserver/en-US/1e851132-1382-4abc-b5f1-8443437a2573/sql-2012-rswebpartscab-file-fails-to-extract-during-sharepoint-20072010-loads-with-stsadmin-or?forum=sqlreportingservices&prof=required
Details
Sign in to post a comment.
Posted by m.l.barebulb on 12/4/2013 at 11:40 AM
I have been able to confirm that the web parts that are included in the RSWebParts.cab that can be found while installing ONLY SSRS Native Mode, do work against a SQL 2012 SSRS Native Mode instance.
Posted by m.l.barebulb on 12/4/2013 at 7:25 AM
As a follow up to the workaround I submitted I found that the RSWebParts.cab deployed in the SSRS Native Mode ONLY install, appear to be the old (SQL 2008) version of the web parts. It is not clear to me whether these web parts will work against a SSRS 2012 Native Mode instance. I will be trying this and will post an update when I know.
Sign in to post a workaround.
Posted by m.l.barebulb on 12/4/2013 at 6:50 AM
1. Install SSRS Native Mode on a server all by itself (don't install any other SQL Server features on the same server).
2. Use the RSWebParts.cab file that is installed with SSRS in \Program Files (x86)\Microsoft SQL Server\110\Tools\Reporting Services\SharePoint\ directory.

We ran into the same "cab file extraction" error, when we used the RSWebParts.cab file that was installed in the same location, when installing SQL Server 2012 features, other than SSRS Native Mode.

We also ran into issues rebuilding the cab based on the instructions in the other workaround. While we were able to install using this method, we had questions about which .resources.dll files were supposed to go in which language/locale folder. When you extract from the cab files, you'll notice you get 10 or so .resources.dll files and some of them are different sizes. For this reason, we assumed they must be different and specific to a particular locale. Even so, we were able to install the web parts using this method, but when attempting to use them on a SharePoint 2013 site, we received the error: "Unable to import web part".

After installing SSRS Native Mode from the SQL 2012 install media, alone, on one of our WFEs, we looked at the RSWebParts.cab file and noticed that it had a different timestamp than the one we had worked with previously. We then used Powershell to install the web parts using the new/different cab file and were subsequently able to use the web parts in our SharePoint 2013 site. Since this activity was part of a SP2010 to SP2013 upgrade, we also noticed that the existing SQL 2008 version of the web parts, which were already being used on the site, just started working.
Posted by Kyle Hale on 11/13/2013 at 9:25 AM
1) Extract the localization resources from the working RSWebParts.cab for 2008 R2 or earlier into a directory.
2) Extract RSWebParts.cab fro 2012 SP1 into same directory and recreate folder structure per manifest.xml file.
3) In the same directory as the files, create a Diamond Directive File (*.ddf) with the following contents:

;******************* RS WEB PARTS DDF *********************************;

.OPTION EXPLICIT ; Will Generate errors for mistakes
;.Set CompressionType=MSZIP ;** All files are compressed to cabinet files
.Set DiskDirectoryTemplate=CDROM;
.Set DiskDirectory1=;
.Set Cabinet=on
.Set CabinetNameTemplate=RSWebParts.cab

manifest.xml
report_explorer.gif
report_viewer.gif
RSWebParts.dll
RSWebParts.inf
RSWebParts.resources.dll
SPExplorer.dwp
SPViewer.dwp

.Set DestinationDir=de
de\RSWebParts.resources.dll

.Set DestinationDir=es
es\RSWebParts.resources.dll

.Set DestinationDir=fr
fr\RSWebParts.resources.dll

.Set DestinationDir=it
it\RSWebParts.resources.dll

.Set DestinationDir=ja
ja\RSWebParts.resources.dll

.Set DestinationDir=ko
ko\RSWebParts.resources.dll

.Set DestinationDir=pt
pt\RSWebParts.resources.dll

.Set DestinationDir=ru
ru\RSWebParts.resources.dll

.Set DestinationDir=zh-chs
zh-chs\RSWebParts.resources.dll

.Set DestinationDir=zh-cht
zh-cht\RSWebParts.resources.dll

4) Open a Command Prompt and run

makecab /f <your ddf location>

5) This will create an RSWebParts.cab file in the directory that is properly structured. Copy this to your Sharepoint server and install it per the instructions on MSDN.
File Name Submitted By Submitted On File Size  
RSWebParts.cab 11/13/2013 59 KB
incorrect_cab_structure.png 11/13/2013 21 KB
correct_cab_structure.png 11/13/2013 37 KB