ADFS Configure external url for Alerts

To configure SharePoint to receive the url of the email alerts in ADFS zone format, it is necessary to execute the following PS:

$wa= get-spwebapplication “https://urlwebapp”
$wa.useExternalUrlZoneForAlerts = $true
$wa.ExternalUrlZone = “Intranet”

You can change the zone to set it within your ADFS zone in the SharePoint farm

Installing Worfkflow Manager in offline mode


Next steps are only to the offline installation of WorkFlow Manager, first of all it is necessary to download all the software stated below:

  • First of all, in a machine with Internet connection, download the Web Platform Installer
  • Open a CMD as admin and execute the following commands:
    • webpicmd /offline /Products:WorkflowManager /Path:C:wfinstallmsswf
    • webpicmd /offline /Products:ServiceBusCU1 /Path:C:wfinstallsbcu1
    • webpicmd /offline /Products:WorkflowCU3 /Path:C:wfinstallwfcu3
  • Then copy those files to the servers where it is necessary to install the workflow manager, open a CMD as admin and execute the following:
    • webpicmd /install /Products:WorkflowManager /XML:C:wfinstallmsswffeedslatestwebproductlist.xml
    • webpicmd /install /Products:ServiceBusCU1 /XML:C:wfinstallsbcu1feedslatestwebproductlist.xml
    • webpicmd /install /Products:WorkflowCU3 /XML:C:wfinstallwfcu3feedslatestwebproductlist.xml

Note: Once the WorkflowManager is installed it is necessary to cancel the installation, because the next SW are to updated the Workflow farm.

In case you have a farm of several servers, you need to install the WorkFlow client in all of these servers, to do that, you have to follow this procedure:

webpicmd /offline /Products:WorkflowClient /Path:C:wfclientwfclient


webpicmd /install /Products:WorkflowClient /XML:C:wfclientfeedslatestwebproductlist.xml

Finally, register the farm are you’re done Register-SPWorkflowService –SPSite “http://urlportal” –WorkflowHostUri “” –AllowOAuthHttp

Finally, you need to test from Designer if the option of Workflows 2013 is already activated.

Till the next time folks!


Excel error Unable to create or access

Hi again, today suddenly a bunch of users people started getting these errors while opening Excel files in the browser:

at C:WindowsTEMPExcel ServerFileCachefa812204-b6ff-40ec-9209-fe8add3de89eRanges. Excel Services Application is unable to function without a workbook cache.

Thanks to below links, issue could be resolved


Unable to create or access workbook cache at C:WINDOWSTEMPExcel ServerFileCacheSharedServices1-1078443246Ranges. Excel Services is unable to function without a workbook cache. (you can see this error in Event viewer)



Unknowingly you may have deleted the above mentioned folders. So, Excel services is not able to save the temporary files under the “Ranges” folder.


Login inside the SharePoint server and create the “Ranges” folder as per the above mentioned folder structure. If you are not able to see the “Excel Server” folder inside “C:WindowsTemp” folder, just create it manually.

hope it helps!

SharePoint 2013The EXECUTE permission was denied on the object


Today I bring a problem that was pretty easy to get solved, in this case I installed a new feature from a colleague in a SharePoint farm, but when we tried to access to the feature to configure it, we were receiving the following error message:

Getting Error Message for Exception System.Web.HttpUnhandledException (0x80004005): Exception of type ‘System.Web.HttpUnhandledException’ was thrown. —> System.Data.SqlClient.SqlException (0x80131904): The EXECUTE permission was denied on the object ‘proc_GetTimerJobLastRunTime’, database ‘SharePoint_Config’, schema ‘dbo’.

So, to solve it, we had to execute the following SQL query:

use [SharePoint_Config]


GRANT EXECUTE ON [dbo].[proc_putObjectTVP] TO [WSS_Content_Application_Pools]

GRANT EXECUTE ON [dbo].[proc_putObject] TO [WSS_Content_Application_Pools]

GRANT EXECUTE ON [dbo].[proc_putDependency] TO [WSS_Content_Application_Pools]

GRANT EXECUTE ON [dbo].[proc_GetTimerJobLastRunTime] TO [WSS_Content_Application_Pools]


That’s all, hope it helps!

There was no endpoint listening

I recently encountered an issue in a SharePoint 2013 deployment where viewing and editing of existing workflows would result in the standard error page “Something went Wrong”.

When I checked the ULS for the correlation ID I found a number of messages with a single Unexpected error

“System.IO.PipeException: The pipe endpoint ‘net.pipe://localhost/security TokenServiceApplication/appsts.svc’ could not be found on your local machine

I ran across a TechNet post that described the issue – Post 

I checked on the WFE server and the two services were stopped.

  • Net.Pipe Listener Adapter
  • Net.TCP Listener AdapterHope this will save some of you time if you run into this issue in your environment

After starting the two services, then I was able to get to the workflow details as well as starting new workflows on ítems.

SharePoint 2013: error activating reporting feature

Today we received an error while we triying to actívate the Reporting feature in a SC:

Lo sentimos, se ha producido un problema

El tipo de contenido con el identificador 0x010100C3676CDFA2F24E1D949A8BF2B06F6B8B definido en la característica {e8389ec7-70fd-4179-a1c4-6fcb4342d7a0} se encontró en la colección de sitios actual o en un subsitio

To solve this problem we needed to execute the following PS:

Enable-SPFeature -Identity e8389ec7-70fd-4179-a1c4-6fcb4342d7a0 -Url https://url -forcé

Till next time!

Databases running in compatibility range, upgrade recommended (for BdcServiceDatabase)

The SharePoint Health Analyzer showed the below error after March 2013 PU Upgrade for SharePoint 2013.

Title:  Databases running in compatibility range, upgrade recommended.

Severity: 2 – Warning

Category: Configuration


The following databases have versions that are older than the current SharePoint software, but are within the backwards compatible range:SP_BDC_DB

– When I browsed to the Upgrade and Migration -> Review database status



Run the below command in SharePoint Management Shell

(Get-SPDatabase | ?{$_.type -match “BdcServiceDatabase”}).Provision()


Now if you try to open the BCS Service Application you get the below error.


To fix this give the BCS Service Applications’ App Pool Account SPDataAccess on the BCS database.


till the next time!


Remove Newsfeed, Skydrive and Sites from the Top bar

A client wanted us to hide the Newsfeed, SkyDrive, and Sites links in the upper right corner of their SharePoint environment because none of them would be in use. Even though this requires editing the master page, it is fairly easy to accomplish.

In the master page, you simply need to search for the following code and either remove it or comment it out:

<SharePoint:DelegateControl id=”ID_SuiteLinksDelegate” ControlId=”SuiteLinksDelegate” runat=”server” />

I would recommend commenting it out because if you ever want to make the links visible again, you can easily do so by removing the comments. To comment out the code, add <!– at the beginning of the tag and –> at the end, as such:

<!–<SharePoint:DelegateControl id=”ID_SuiteLinksDelegate” ControlId=”SuiteLinksDelegate” runat=”server” />–>

Now if you check on the site, the links should be hidden!

User Profile Synchronisation Errors In SharePoint 2013

While setting up the User Profile Synchronization services on SharePoint  I had a couple of warnings and errors that I had to address:

Detection of product ‘{90140000-104C-0000-1000-0000000FF1CE}’, feature ‘PeopleILM’, component ‘{1C12B6E6-898C-4D58-9774-AAAFBDFE273C}’ failed.  The resource ‘C:Program FilesMicrosoft Office Servers14.0ServiceMicrosoft.ResourceManagement.Service.exe’ does not exist.

Followed by event 1001:

Detection of product ‘{90140000-104C-0000-1000-0000000FF1CE}’, feature ‘PeopleILM’ failed during request for component ‘{9AE4D8E0-D3F6-47A8-8FAE-38496FE32FF5}’
These were repeated for another component GUID.

And event 1015:

Failed to connect to server. Error: 0x80070005

These were repeated for another component GUID

The reason is that the WMI calls are made under the credentials of Network Service account and that this account doesn’t have permissions on the folder indicated in the event.

After I gave the Network Service account read and execute permissions on the “C:Program FilesMicrosoft Office Servers15.0” folder the events didn’t reappear.

Also, is it posible to give this permissions by PowerShell:

$Acl = (Get-Item "E:Microsoft Office Servers15.0").GetAccessControl('Access')
$Ar = New-Object"NT AUTHORITYNETWORK SERVICE","Read, ReadAndExecute, ListDirectory", "ContainerInherit, ObjectInherit", "None", "Allow")
Set-Acl "E:Microsoft Office Servers15.0" $Acl

Hope it helps!

Cleanup IIS Log files on SharePoint

A common problem I see in many of our customers environments is that their SharePoint servers will start to run lower on disk space on the C: drive after being up and running for a while. Asides from the typical growth due to patching the customers have reported that there have been no other changes or software installations done on the servers. If you have built the system partition based on Microsoft’s recommendations of a minimum of 80GB then you wont be getting low for some time, however even seeing a disk starting to drop 5-10GB faster then you expect can cause some alarm.

What I find to be the case more times then not is that they have either not moved the SharePoint logs from the C: partition or they have not setup any type of job to purge the IIS logs. These logs can grow faster then you might think and when you have multiple web applications this just speeds things up further.

There is a quick way to fix this using a few lines of PowerShell code. This method I am outlining does not do any type of archival of the logs. If this is needed some additional code can be added to this to achieve without a tremendous amount of effort. The goal of this is a quick way to purge the logs and regain space. This is particularly useful in dev and QA environments where no historical data is required.

Take the code below and paste it into a text file and save with a .ps1 extension. This script will go through all sub folders below the LogFiles directory and clean up the log files.

get-childitem -Path C:inetpublogsLogFiles -recurse | where-object {$_.lastwritetime -lt (get-date).addDays(-7)} | Foreach-Object { del $_.FullName }

Once saved you can then create a new scheduled task that will call this script on the desired interval to purge your IIS logs and reclaim storage. To change the time the log files are kept you just need to change the number value in the script to the desired number of days.

Another simple solution is to disable the IIS logging, to do this, you have to do the following:

  1. Open IIS Manager and navigate to the level you want to manage. For information about opening IIS Manager.
  2. In Features View, double-click Logging.
  3. On the Logging page, in the Actions pane, click Enable to enable logging or click Disable to disable logging.

That’s all, hope it helps!!