{"id":1835,"date":"2017-03-05T22:01:21","date_gmt":"2017-03-05T20:01:21","guid":{"rendered":"https:\/\/www.vioreliftode.com\/?p=1835"},"modified":"2017-03-06T08:05:37","modified_gmt":"2017-03-06T06:05:37","slug":"sharepoint-2013-excel-services-to-excel-web-app-office-web-apps-server-2013-redirecter","status":"publish","type":"post","link":"https:\/\/www.vioreliftode.com\/index.php\/sharepoint-2013-excel-services-to-excel-web-app-office-web-apps-server-2013-redirecter\/","title":{"rendered":"SharePoint 2013 Excel Services to Excel Web App (Office Web Apps Server 2013) redirecter"},"content":{"rendered":"<input class=\"fooboxshare_post_id\" type=\"hidden\" value=\"1835\"\/><p>I am starting with a short update for those who don&#8217;t know the story with SharePoint 2013 Excel Services and Excel Web App (part of Office Web Apps Server 2013).<br \/>\nThere are two Excel &#8220;flavors&#8221;: SharePoint 2013 Excel Services (available in SharePoint 2013 Enterprise edition) and Excel Web App (available in Office Web Apps Server 2013). <a href=\"https:\/\/support.office.com\/en-us\/article\/Comparing-Excel-Services-and-Excel-Web-App-SharePoint-2013-855ee1a3-9263-425d-bccd-4070d2413aa7?ui=en-US&amp;rs=en-US&amp;ad=US\">These two Excel flavors offer different capabilities.<\/a> The bad part is out of the box SharePoint allows only one of them to be used. You can control which Excel (SP Excel Services \/ Excel Web App) to be used for specific actions, but that is a farm-wide setting. You don&#8217;t have much flexibility.<\/p>\n<p>&nbsp;<\/p>\n<p>For example, let&#8217;s say we have:<\/p>\n<ul>\n<li>a single SharePoint 2013 farm (the topology is not relevant);<\/li>\n<li>the SharePoint 2013 farm is linked to Office Web Apps Server 2013;<\/li>\n<li>the SharePoint 2013 farm will be used to host Business Intelligence site collections and also site collections with Libraries that have Information Rights Management (IRM) enabled;<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/support.office.com\/en-us\/article\/Comparing-Excel-Services-and-Excel-Web-App-SharePoint-2013-855ee1a3-9263-425d-bccd-4070d2413aa7?ui=en-US&amp;rs=en-US&amp;ad=US\">Microsoft is explaining this in its support article.<\/a><\/p>\n<p><em>&#8220;In SharePoint Server 2013 on premises, you could be using Excel Services in SharePoint Server 2013 <span style=\"text-decoration: underline;\"><strong>OR<\/strong><\/span> Excel Web App (as part of Office Web Apps Server) to view workbooks in a browser window, depending on how your SharePoint environment is configured. &#8220;<\/em><br \/>\n<em>&#8220;IMPORTANT: The decision about whether Excel Web App or Excel Services is used to display workbooks in a browser window applies to the entire SharePoint environment. You can\u2019t have Excel Web App in one site and Excel Services in another. Contact your SharePoint administrator for more information about how your environment is configured.&#8221;<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>The SharePoint admins who configure the farms to support Business Intelligence features using Excel, usually configure them using:<\/p>\n<pre class=\"brush: powershell; title: ; notranslate\" title=\"\">\nAdd-PSSnapin Microsoft.SharePoint.PowerShell\nNew-SPWOPISuppressionSetting -Extension \"XLS\" -Action \"view\"\nNew-SPWOPISuppressionSetting -Extension \"XLSX\" -Action \"view\"\n<\/pre>\n<p>&nbsp;<\/p>\n<p>What basically the above commands do is to change the default Excel behavior only for the View action. I call this a trick because these settings allow the Excel Services part of SharePoint 2013 to be used only for view mode, while Excel Web App (part of Office Web Apps Server 2013) will be used for the rest of the cases (edit, editnew, mobileView, embedview &#8230;).<\/p>\n<p>However, Excel Services part of SharePoint 2013 will be farm-wide used for view mode, case in which you will miss functionalities like viewing IRM protected workbooks in browser.<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_01.png\"><img loading=\"lazy\" class=\"size-full wp-image-1836 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_01.png\" alt=\"SPExcelWebAppRedirecter_01\" width=\"1392\" height=\"641\" srcset=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_01.png 1392w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_01-300x138.png 300w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_01-768x354.png 768w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_01-1024x472.png 1024w\" sizes=\"(max-width: 1392px) 100vw, 1392px\" \/><\/a><\/p>\n<p><em>Unable to Load Workbook<\/em><br \/>\n<em> This workbook is protected by Information Rights Management (IRM) and cannot be opened in the browser.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>In fact, the document can be opened in the browser using Excel Web App if the URL is adjusted.<br \/>\nReplace http:\/\/[servername]\/_layouts\/15\/<strong>xlviewer.aspx?id=<\/strong>\/Documents\/XYZ.XLSX with http:\/\/[servername]\/_layouts\/15\/<strong>WopiFrame2.aspx?sourcedoc=<\/strong>\/Documents\/XYZ.XLSX).<\/p>\n<p><a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_02.png\"><img loading=\"lazy\" class=\"size-full wp-image-1837 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_02.png\" alt=\"SPExcelWebAppRedirecter_02\" width=\"1392\" height=\"641\" srcset=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_02.png 1392w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_02-300x138.png 300w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_02-768x354.png 768w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_02-1024x472.png 1024w\" sizes=\"(max-width: 1392px) 100vw, 1392px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>To achieve this functionality I wrote an HttpModule that &#8220;intercepts&#8221; the URLs who contain xlviewer.aspx and redirects the request to the crafted WopiFrame2.aspx URL. In this way is possible to achieve a bit more extra flexibility in terms of controlling where to use Excel Web App (part of Office Web Apps Server 2013) on a farm configured to use SharePoint Excel Services as default.<br \/>\nThe solution is available on <a href=\"https:\/\/github.com\/iftvio\/SharePointExcelServicesToExcelWebAppRedirecter\">GitHub<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<p>The solution was developed as Web Application scoped feature. That means the extra flexibility in terms of the two Excel flavors applies to all the site collections within the Web Application where the &#8220;Excel Web App Redirecter&#8221; feature will be activated. The code I wrote can be forked or I can create branches for those who want to contribute and add a bit of extra functionality -&gt; to make the feature granular up to SPWeb level. In my case, the solution works perfectly because all the IRM protected SharePoint libraries are hosted by site collections part of a specific SharePoint Web Application.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Let&#8217;s see step by step how to download and deploy the <a href=\"https:\/\/github.com\/iftvio\/SharePointExcelServicesToExcelWebAppRedirecter\">SPExcelWebAppRedirecter<\/a> solution<\/strong><\/p>\n<ol>\n<li>Download <a href=\"https:\/\/github.com\/iftvio\/SharePointExcelServicesToExcelWebAppRedirecter\/raw\/master\/SPExcelWebAppRedirecter\/SPExcelWebAppRedirecter.wsp\">SPExcelWebAppRedirecter.wsp<\/a> and <a href=\"https:\/\/github.com\/iftvio\/SharePointExcelServicesToExcelWebAppRedirecter\/raw\/master\/SPExcelWebAppRedirecter\/deploySPExcelWebAppRedirecter.ps1\">deploySPExcelWebAppRedirecter.ps1<\/a> on one of your SharePoint servers (Web-Front or Application Server) and make sure you place both files in the same folder.<br \/>\n<a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_03.png\"><img loading=\"lazy\" class=\"size-full wp-image-1838 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_03.png\" alt=\"SPExcelWebAppRedirecter_03\" width=\"1273\" height=\"881\" srcset=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_03.png 1273w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_03-300x208.png 300w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_03-768x532.png 768w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_03-1024x709.png 1024w\" sizes=\"(max-width: 1273px) 100vw, 1273px\" \/><\/a><\/p>\n<p><span style=\"color: #ffffff;\">a<\/span><\/li>\n<li>Start the PowerShell console as Administrator and execute the <a href=\"https:\/\/github.com\/iftvio\/SharePointExcelServicesToExcelWebAppRedirecter\/raw\/master\/SPExcelWebAppRedirecter\/deploySPExcelWebAppRedirecter.ps1\">deploySPExcelWebAppRedirecter.ps1<\/a> PowerShell script.<br \/>\n<em>Please note the deployment duration will vary based on your farm topology. Please plan this deployment outside the production hours, because during the deployment IIS Application Pool recycle is performed.<\/em><em><\/em><em><\/em><em><br \/>\n<a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_04.png\"><img loading=\"lazy\" class=\"size-full wp-image-1839 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_04.png\" alt=\"SPExcelWebAppRedirecter_04\" width=\"1273\" height=\"881\" srcset=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_04.png 1273w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_04-300x208.png 300w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_04-768x532.png 768w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_04-1024x709.png 1024w\" sizes=\"(max-width: 1273px) 100vw, 1273px\" \/><\/a><\/em><br \/>\n<span style=\"color: #ffffff;\">a<\/span><\/p>\n<p><a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_05.png\"><img loading=\"lazy\" class=\"size-full wp-image-1840 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_05.png\" alt=\"SPExcelWebAppRedirecter_05\" width=\"863\" height=\"520\" srcset=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_05.png 863w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_05-300x181.png 300w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_05-768x463.png 768w\" sizes=\"(max-width: 863px) 100vw, 863px\" \/><\/a><\/p>\n<p><span style=\"color: #ffffff;\">a<\/span><\/li>\n<li>Once the solution was successfully deployed, it is time to activate it to the SharePoint Web Application where you want the default Excel view to be handled by Excel Web Apps (part of Office Web Apps Server 2013).<br \/>\n<a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_06.png\"><img loading=\"lazy\" class=\"size-full wp-image-1841 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_06.png\" alt=\"SPExcelWebAppRedirecter_06\" width=\"634\" height=\"837\" srcset=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_06.png 634w, https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_06-227x300.png 227w\" sizes=\"(max-width: 634px) 100vw, 634px\" \/><\/a><\/p>\n<p><span style=\"color: #ffffff;\">a<\/span><\/li>\n<li>Once the feature is activated, all the site collections hosted by that SharePoint Web Application will have the default Excel view handled by Excel Web Apps.<br \/>\n<a href=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_07.gif\"><img loading=\"lazy\" class=\"size-full wp-image-1842 alignnone\" src=\"https:\/\/www.vioreliftode.com\/wp-content\/uploads\/2017\/03\/SPExcelWebAppRedirecter_07.gif\" alt=\"SPExcelWebAppRedirecter_07\" width=\"920\" height=\"637\"><\/a><\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I am starting with a short update for those who don&#8217;t know the story with SharePoint 2013 Excel Services and Excel Web App (part of Office Web Apps Server 2013). There are two Excel &#8220;flavors&#8221;: SharePoint 2013 Excel Services (available in SharePoint 2013 Enterprise edition) and Excel Web App (available in Office Web Apps Server &hellip; <a href=\"https:\/\/www.vioreliftode.com\/index.php\/sharepoint-2013-excel-services-to-excel-web-app-office-web-apps-server-2013-redirecter\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">SharePoint 2013 Excel Services to Excel Web App (Office Web Apps Server 2013) redirecter<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"#SharePoint 2013 #Excel #Services to #Excel #Web #App (Office Web Apps Server 2013) #redirecter","jetpack_is_tweetstorm":false},"categories":[38,32,29],"tags":[8,106,9],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4NfDd-tB","_links":{"self":[{"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/posts\/1835"}],"collection":[{"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/comments?post=1835"}],"version-history":[{"count":0,"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/posts\/1835\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/media?parent=1835"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/categories?post=1835"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vioreliftode.com\/index.php\/wp-json\/wp\/v2\/tags?post=1835"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}