{"id":751,"date":"2008-10-22T01:31:36","date_gmt":"2008-10-22T06:31:36","guid":{"rendered":"http:\/\/blogs.devhorizon.com\/reza\/?p=751"},"modified":"2008-10-22T18:44:03","modified_gmt":"2008-10-22T23:44:03","slug":"powershelldeploying-ssrs-reports-in-integrated-mode","status":"publish","type":"post","link":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/","title":{"rendered":"PowerShell:Deploying SSRS Reports in Integrated Mode"},"content":{"rendered":"<p>As I promised last week in <a href=\"https:\/\/blogs.devhorizon.com\/reza\/?p=745\">this <\/a>blog post, the first chance I get , I would craft up another POC using PowerShell that takes care of deploying SSRS reports and data sources in bulk to SharePoint.Here you go:<\/p>\n<p><a href=\"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/donload.png\" title=\"donload.png\"><img decoding=\"async\" src=\"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/donload.png\" alt=\"donload.png\" \/><\/a>You can download the script <a href=\"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/deployssrsinteg.rar\">here <\/a>and below are the steps to get this script to work:<\/p>\n<p>1) Create a folder and throw the script there.<\/p>\n<p>2) All right! now you need to compile the SSRS Porxy endpoint for SharePoint integrated mode (<a href=\"http:\/\/farm4.static.flickr.com\/3044\/2950616174_36f1a0b769_o.png\"><strong>ReportService2006.asmx<\/strong><\/a>) and build the\u00a0 ReportService2006.dll. There are couple ways to do this (like <a href=\"http:\/\/sharepoint.microsoft.com\/blogs\/zach\/Lists\/Posts\/Post.aspx?ID=9\">this<\/a>), but most likely the easiest way is by using Visual Studio command prompt.This is where wsdl.exe comes handy.Just as FYI, Wsdl.exe parses ReportService2006.asmx schema and its WSDL file and generates a .NET class (ReportService2006.cs). Since the schema of ReportService2006.asmx won&#8217;t change until the next version (I hope so!), you don&#8217;t need to repeat this step anymore. Open Visual Studio command prompt and type:<\/p>\n<p><strong>wsdl http:\/\/myserver\/_vti_bin\/ReportServer\/ReportService2006.asmx\u00a0<\/strong><\/p>\n<p>Now, invoke and point the C# compiler (csc.exe) to the generated class and create the DLL (in your active directory):<\/p>\n<p><strong>\u00a0csc \/t:library ReportService2006.cs<\/strong><\/p>\n<p>In the source code, this dll is used to communicate with the endpoint.<\/p>\n<ul>\n<li>If you don&#8217;t know what the hell I am talking about , I kindly ask you to read <a href=\"https:\/\/blogs.devhorizon.com\/reza\/?p=718\">this <\/a>post to know what I mean by SSRS proxy endpoint.Thanx!<\/li>\n<li>If you are lazy , you can download the dll right from <a href=\"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/reportingservice2006.rar\">here<\/a>. I&#8217;ve already generated the dll.<\/li>\n<\/ul>\n<p>3) Dump\u00a0 the ReportService2006.dll in the same folder as the script.<\/p>\n<p>4) Throw all of your reports and data source in the same folder.<\/p>\n<blockquote><p>Actually, this Powershell script (unlike the <a href=\"https:\/\/blogs.devhorizon.com\/reza\/?p=745\">feature <\/a>approach) is not bound to one shared data source.\u00a0 I read the data souce from the rdl file, so as long as the data source is physically present in the same folder,script works just fine. Obviously , this is just another POC ;therefore it comes with no exception handling!<\/p><\/blockquote>\n<p>5) Open the PowerShell command line , browse to your folder\u00a0 and type in the following command:<\/p>\n<p>DeploySSRSInteg.ps1 -targetRptLib &#8220;http:\/\/myserver\/myrptlib&#8221; -targetDCL &#8220;http:\/\/myserver\/myDCL&#8221; -sourceFolder &#8220;C:\\SSRSDeployment &#8221; -rsProxyEndpt &#8220;http:\/\/myserver\/_vti_bin\/ReportServer\/ReportService2006.asmx&#8221;<\/p>\n<p align=\"left\"><a href=\"http:\/\/farm4.static.flickr.com\/3163\/2963711060_9327269b09_o.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/farm4.static.flickr.com\/3163\/2963711060_684bc6dd73.jpg\" width=\"500\" height=\"105\" \/><\/a><\/p>\n<p>6) Once you hit the enter , you should be able to see a traffic light popping into your screen \ud83d\ude42 (just kidding!). Here is the execution screenshot:<\/p>\n<p><a href=\"http:\/\/farm4.static.flickr.com\/3006\/2962867663_c84b7ea90e_o.png\" title=\"AfterExecution by bahrez82, on Flickr\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/farm4.static.flickr.com\/3006\/2962867663_4fda3d6beb.jpg\" width=\"500\" height=\"126\" \/><\/a><\/p>\n<p>7) And here are all your data sources and reports deployed for you. PoSh rocks baby!<\/p>\n<p>Data sources are converted:<br \/>\n<a href=\"http:\/\/farm4.static.flickr.com\/3169\/2962867741_a29bd4d825_o.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/farm4.static.flickr.com\/3169\/2962867741_9467ce5608.jpg\" alt=\"DCLProof\" width=\"500\" height=\"169\" \/><\/a><\/p>\n<p>Reports are published &amp; <strong>its data source is nicely referenced<\/strong>:<br \/>\n<a href=\"http:\/\/farm4.static.flickr.com\/3171\/2962867769_6dc0514542_o.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/farm4.static.flickr.com\/3171\/2962867769_50c55ec7b6.jpg\" alt=\"ReportProof\" width=\"500\" height=\"184\" \/><\/a><\/p>\n<p>&#8216;8) As always, this is just a POC and by no means production ready , so use it at your own risk!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As I promised last week in this blog post, the first chance I get , I would craft up another POC using PowerShell that takes care of deploying SSRS reports and data sources in bulk to SharePoint.Here you go: You can download the script here and below are the steps to get this script to [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[43,47],"tags":[],"class_list":["post-751","post","type-post","status-publish","format-standard","hentry","category-moss-2007","category-ssrs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PowerShell:Deploying SSRS Reports in Integrated Mode - Reza Alirezaei&#039;s Blog %<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Reza Alirezaei\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/\"},\"author\":{\"name\":\"Reza Alirezaei\",\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/#\\\/schema\\\/person\\\/cdbb24d283697a65951cb4a14e474938\"},\"headline\":\"PowerShell:Deploying SSRS Reports in Integrated Mode\",\"datePublished\":\"2008-10-22T06:31:36+00:00\",\"dateModified\":\"2008-10-22T23:44:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/\"},\"wordCount\":458,\"commentCount\":15,\"image\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/wp-content\\\/uploads\\\/2008\\\/10\\\/donload.png\",\"articleSection\":[\"MOSS 2007\",\"SSRS\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/\",\"url\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/\",\"name\":\"PowerShell:Deploying SSRS Reports in Integrated Mode - Reza Alirezaei's Blog %\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/wp-content\\\/uploads\\\/2008\\\/10\\\/donload.png\",\"datePublished\":\"2008-10-22T06:31:36+00:00\",\"dateModified\":\"2008-10-22T23:44:03+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/#\\\/schema\\\/person\\\/cdbb24d283697a65951cb4a14e474938\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/2008\\\/10\\\/22\\\/powershelldeploying-ssrs-reports-in-integrated-mode\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/wp-content\\\/uploads\\\/2008\\\/10\\\/donload.png\",\"contentUrl\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/wp-content\\\/uploads\\\/2008\\\/10\\\/donload.png\",\"width\":20,\"height\":20},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/#website\",\"url\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/\",\"name\":\"Reza Alirezaei's Blog\",\"description\":\"Blogging from the field!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/#\\\/schema\\\/person\\\/cdbb24d283697a65951cb4a14e474938\",\"name\":\"Reza Alirezaei\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3ba940d84e0ecb909e62e93df4c56daf0395c7e53c914467ab2ee73124a7d7b6?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3ba940d84e0ecb909e62e93df4c56daf0395c7e53c914467ab2ee73124a7d7b6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3ba940d84e0ecb909e62e93df4c56daf0395c7e53c914467ab2ee73124a7d7b6?s=96&d=mm&r=g\",\"caption\":\"Reza Alirezaei\"},\"url\":\"https:\\\/\\\/blogs.devhorizon.com\\\/reza\\\/author\\\/rezaa\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PowerShell:Deploying SSRS Reports in Integrated Mode - Reza Alirezaei's Blog %","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/","twitter_misc":{"Written by":"Reza Alirezaei","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/#article","isPartOf":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/"},"author":{"name":"Reza Alirezaei","@id":"https:\/\/blogs.devhorizon.com\/reza\/#\/schema\/person\/cdbb24d283697a65951cb4a14e474938"},"headline":"PowerShell:Deploying SSRS Reports in Integrated Mode","datePublished":"2008-10-22T06:31:36+00:00","dateModified":"2008-10-22T23:44:03+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/"},"wordCount":458,"commentCount":15,"image":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/donload.png","articleSection":["MOSS 2007","SSRS"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/","url":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/","name":"PowerShell:Deploying SSRS Reports in Integrated Mode - Reza Alirezaei's Blog %","isPartOf":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/#primaryimage"},"image":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/donload.png","datePublished":"2008-10-22T06:31:36+00:00","dateModified":"2008-10-22T23:44:03+00:00","author":{"@id":"https:\/\/blogs.devhorizon.com\/reza\/#\/schema\/person\/cdbb24d283697a65951cb4a14e474938"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blogs.devhorizon.com\/reza\/2008\/10\/22\/powershelldeploying-ssrs-reports-in-integrated-mode\/#primaryimage","url":"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/donload.png","contentUrl":"https:\/\/blogs.devhorizon.com\/reza\/wp-content\/uploads\/2008\/10\/donload.png","width":20,"height":20},{"@type":"WebSite","@id":"https:\/\/blogs.devhorizon.com\/reza\/#website","url":"https:\/\/blogs.devhorizon.com\/reza\/","name":"Reza Alirezaei's Blog","description":"Blogging from the field!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.devhorizon.com\/reza\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blogs.devhorizon.com\/reza\/#\/schema\/person\/cdbb24d283697a65951cb4a14e474938","name":"Reza Alirezaei","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/3ba940d84e0ecb909e62e93df4c56daf0395c7e53c914467ab2ee73124a7d7b6?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/3ba940d84e0ecb909e62e93df4c56daf0395c7e53c914467ab2ee73124a7d7b6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3ba940d84e0ecb909e62e93df4c56daf0395c7e53c914467ab2ee73124a7d7b6?s=96&d=mm&r=g","caption":"Reza Alirezaei"},"url":"https:\/\/blogs.devhorizon.com\/reza\/author\/rezaa\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/posts\/751","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/comments?post=751"}],"version-history":[{"count":0,"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/posts\/751\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/media?parent=751"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/categories?post=751"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.devhorizon.com\/reza\/wp-json\/wp\/v2\/tags?post=751"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}