Tuesday, October 14, 2014
Wednesday, October 1, 2014
SharePoint 2013 REST API calls using Fiddler
SharePoint 2013 REST API is the best choice to access server objects from client site. The easiest and more convenient way to test this is using Fiddler tool
The below are the two samples to demonstrate how to use Fiddler and pass header and body content to send request
Example 1: Add a list item (task) to a List (Tasks list)
Header
ACCEPT: application/json;odata=verbose
Content-Type: application/json;odata=verbose
X-RequestDigest: 0xE2872916105EF8654E29E7295F06D7A0CA96847415B5AC010F00FE871BADC181D85783853ECA1C9002C402B675F2CC00C9312293668F261888E7B3694F138567,01 Oct 2014 18:39:40 -0000
Host: yourhost.com
Content-Length: 91
Body
{'__metadata': {'type':'SP.Data.TasksListItem'},
'Title': 'Let me in via Fiddler REST'
};
Example 2: Add a list to a Web
Header
ACCEPT: application/json;odata=verbose
Content-Type: application/json;odata=verbose
X-RequestDigest: 0x16F60B1D8E5FD4DEC53E3609823866DA3DD8BC187A2C4F8070B4761183FC2C60B974ECA083B2E5613A1019C79277B18B4EDDEB41E3452F2D43CCD01ACDAF3957,01 Oct 2014 19:41:49 -0000
Host: rmitscvpspqa02:2000
Content-Length: 191
Body
{ '__metadata': { 'type': 'SP.List' }, 'AllowContentTypes': true, 'BaseTemplate': 100,
'ContentTypesEnabled': true, 'Description': 'My list description', 'Title': 'Test List from fiddler' }
The below are the two samples to demonstrate how to use Fiddler and pass header and body content to send request
Example 1: Add a list item (task) to a List (Tasks list)
Header
ACCEPT: application/json;odata=verbose
Content-Type: application/json;odata=verbose
X-RequestDigest: 0xE2872916105EF8654E29E7295F06D7A0CA96847415B5AC010F00FE871BADC181D85783853ECA1C9002C402B675F2CC00C9312293668F261888E7B3694F138567,01 Oct 2014 18:39:40 -0000
Host: yourhost.com
Content-Length: 91
Body
{'__metadata': {'type':'SP.Data.TasksListItem'},
'Title': 'Let me in via Fiddler REST'
};
Example 2: Add a list to a Web
Header
ACCEPT: application/json;odata=verbose
Content-Type: application/json;odata=verbose
X-RequestDigest: 0x16F60B1D8E5FD4DEC53E3609823866DA3DD8BC187A2C4F8070B4761183FC2C60B974ECA083B2E5613A1019C79277B18B4EDDEB41E3452F2D43CCD01ACDAF3957,01 Oct 2014 19:41:49 -0000
Host: rmitscvpspqa02:2000
Content-Length: 191
Body
{ '__metadata': { 'type': 'SP.List' }, 'AllowContentTypes': true, 'BaseTemplate': 100,
'ContentTypesEnabled': true, 'Description': 'My list description', 'Title': 'Test List from fiddler' }
To test it, go to SharePoint site and verify. Its cool :)
Note : Where do I get the form digest value to include in my request?
As described on this page on MSDN, you can retrieve this value by making a POST request with an empty body to http://site/_api/contextinfo and extracting the value of the “d:FormDigestValue” node in the XML that the contextinfo endpoint returns.
Thursday, September 25, 2014
Solution deployment stuck on deploying
I got the deployment issue in visual studio and powershell scripts in farm solutions. Most of the solutions in the google are suggesting to do the following steps and I did and restarted the all the servers. But the issue continues. Fortunately I got the real reason after reviewing the sharepoint log file. So the lesson learned is "The reason may be anything and review your log file carefully"
The actions which I tried (not got the solution)
1. Make sure SharePoint timer service should be started on all the servers (web front ends as well as app server)
2. Try restarting the SharePoint Administration service on all the servers.
3. Restart all the SharePoint servers
4. Make sure that all the servers in farm are on the same time zone.
5. Execute stsadm -o execadmsvcjobs on all the servers of the farm
6. Cancel the deployment job by means of central administration, remove the solution and try to add the solution again & check the results.
7. Check the status of the jobs by means of CA-timer job status or use te following command - stsadm -o enumdeployments - This will give you the list of all the pending & active deployments.
Still had the error while cancel the deployment job using CA. The error thrown by CS is "Object reference not set to an instance of an object". This confuses me more and I started reviewing the sharepoint log file using ULS Viewer, and I got the real reason for this strange behaviour.
SharePoint Log Critical Error
Database full error on SQL Server instance 'XXX' in database 'SharePoint_Config'. Additional error information from SQL Server is included below. Could not allocate space for object 'dbo.Tombstones'.'PK_Tombstones' in database 'SharePoint_Config' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Solution
Increased the DB size and the issue is resolved
USE master;
GO
ALTER DATABASE SharePoint_Config
MODIFY FILE
(NAME = test1dat3,
SIZE = 10240MB);
GO
or Use "SQL Management Studio" as shown below.
The actions which I tried (not got the solution)
1. Make sure SharePoint timer service should be started on all the servers (web front ends as well as app server)
2. Try restarting the SharePoint Administration service on all the servers.
3. Restart all the SharePoint servers
4. Make sure that all the servers in farm are on the same time zone.
5. Execute stsadm -o execadmsvcjobs on all the servers of the farm
6. Cancel the deployment job by means of central administration, remove the solution and try to add the solution again & check the results.
7. Check the status of the jobs by means of CA-timer job status or use te following command - stsadm -o enumdeployments - This will give you the list of all the pending & active deployments.
Still had the error while cancel the deployment job using CA. The error thrown by CS is "Object reference not set to an instance of an object". This confuses me more and I started reviewing the sharepoint log file using ULS Viewer, and I got the real reason for this strange behaviour.
SharePoint Log Critical Error
Database full error on SQL Server instance 'XXX' in database 'SharePoint_Config'. Additional error information from SQL Server is included below. Could not allocate space for object 'dbo.Tombstones'.'PK_Tombstones' in database 'SharePoint_Config' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Solution
Increased the DB size and the issue is resolved
USE master;
GO
ALTER DATABASE SharePoint_Config
MODIFY FILE
(NAME = test1dat3,
SIZE = 10240MB);
GO
or Use "SQL Management Studio" as shown below.
Sunday, September 21, 2014
Useful Links
http://aaclage.blogspot.ca/2013/09/example-custom-ui-metro-style-tiles.html
http://karinebosch.wordpress.com/sharepoint-controls/peopleeditor-control/
http://www.sharepointanalysthq.com/2014/05/custom-webpart-editor/
http://fahadzia.com/blog/2009/08/peopleeditorpeoplepicker-control-as-web-part-property/
http://karinebosch.wordpress.com/sharepoint-controls/peopleeditor-control/
http://www.sharepointanalysthq.com/2014/05/custom-webpart-editor/
http://fahadzia.com/blog/2009/08/peopleeditorpeoplepicker-control-as-web-part-property/
Thursday, September 18, 2014
SharePoint 2013 Modal Dialog with parent page refresh
<script type="text/javascript"> function ShowModal() { ExecuteOrDelayUntilScriptLoaded(function () { var options = { url: 'http://sharepointsite.com/sites/devsite/Lists/Project%20Tasks/DispForm.aspx?ID=2&Source=http%3A%2F%2Frmitscvpspqa02%3A1000%2Fsites%2Fdevsite%2FLists%2FProject%2520Tasks%2FAllItems%2Easpx&ContentTypeId=0x010800EFF7689E39CAEB4C9BF59AEB73ABEFA9', tite: 'Add Vendor', width: 800, height: 475, allowMaximize: true, showClose: true, dialogReturnValueCallback: scallback }; SP.UI.ModalDialog.showModalDialog(options); }, 'sp.js'); } function scallback(dialogResult, returnValue) { alert(dialogResult); SP.UI.ModalDialog.RefreshPage(SP.UI.DialogResult.OK); if (dialogResult == SP.UI.DialogResult.OK) { alert('Ok'); SP.UI.ModalDialog.RefreshPage(SP.UI.DialogResult.OK); } } </script> <input onclick="javascript:ShowModal();" type="button" value="Model Popup"/>
Friday, September 5, 2014
Office 365 Development Setup & SharePoint PnP
Step 1 : SharePoint Online: Sign up for a free Office 365 Developer Site from your MSDN subscription
Step 3 : The home page will be shown like the below image
4
Step 4 : Click the SharePoint and the SharePoint Administrator page will appear as shown below. Note that the admin website link is required for some visual studio app development.
Step 5 : Create a Developer Site collection and it is highlighted as shown below
Step 6 : Now go to https://github.com/OfficeDev/PnP
and download the sample ZIP file. It contains core components and samples and
need VS 2013 (I tried using VS2013)
Step 7 : Open a sample project from the downloaded zip
file
Step 9 : That is it. :) ... Make sure you understand the code in the samples which will make your work easy and reduce your code dramatically. The good thing is its all CSOM and hosted in S2S (Provider hosted app model).
Reference :
Wednesday, September 3, 2014
SharePoint 2013 Designer Workflow - Expense claims approval process part 2 of 3
List of Article in Series
1.
Overview of Business requirement (part 1/3)
2. Build Workflow using SharePoint
Designer (part 2/3)
3. Deployment and Testing (part 3/3)
Build Workflow using SharePoint
Designer
In my previous article I have explained
the expense claims workflow logic and provided a Visio diagram. Make sure to
read the first article before proceeding further.
Used SharePoint Designer to develop the
workflow and no code. I used some basic activities which are available in
SharePoint 2013 and built a complex ( J ) approval process.
The below are the Text-based and visual
workflow designer code.
Text-based
Visual Designer
SharePoint 2013 .Wsp vs .App Scenario
Always try to use Apps whenever it is possible. Because
1. Sandbox solution is supported but it is deprecated.
2. Farm solution requires downtime, cost and monitoring
3. Choose the solution and Apps model based on the scenario and the below screen shot will explain the scenario and the recommended model
Wednesday, August 6, 2014
IIS Websites Maintenance PowerShell script
File Name : IISMaintenance.ps1
This is the main script which need to edit to add the app pools and web site names to do a complete reboot of IIS apppools and websites in a proper order.
This is the main script which need to edit to add the app pools and web site names to do a complete reboot of IIS apppools and websites in a proper order.
$appPoolNames = @( "DefaultAppPool"; "www.wfactory.ca"; ) $webSiteNames = @( "Tsc"; "TscM"; ) #Get-Location -This is automatic variable #$scriptPath = $PSScriptRoot $scriptPath = split-path -parent $MyInvocation.MyCommand.Definition CD $scriptPath #Stop AppPools foreach($appPool in $appPoolNames) { Write-Host "Attempting to stop apppool :" $appPool ./AppPoolStartStop.ps1 -appPoolName $appPool -stop:$true Write-Host "Stopped apppool :" $appPool -foregroundcolor "green" } #Stop Websites foreach($website in $webSiteNames) { Write-Host "Attempting to stop website :" $website ./WebSiteStartStop.ps1 -websiteName $website -stop:$true Write-Host "Stopped website :" $website -foregroundcolor "green" } Start-Sleep -s 10 #Restart IIS iisreset #Start AppPools foreach($appPool in $appPoolNames) { Write-Host "Attempting to start apppool :" $appPool ./AppPoolStartStop.ps1 -appPoolName $appPool -stop:$false Write-Host "Started apppool :" $appPool -foregroundcolor "green" } #Start Websites foreach($website in $webSiteNames) { Write-Host "Attempting to start website :" $website ./WebSiteStartStop.ps1 -websiteName $website -stop:$false Write-Host "Started website :" $website -foregroundcolor "green" } Start-Sleep -s 10
File Name : AppPoolStartStop.ps1
The script accepts app pool name and a switch (Boolean) as parameters to start or stop a App Pool in IIS
The script accepts app pool name and a switch (Boolean) as parameters to start or stop a App Pool in IIS
param( [string]$appPoolName, [switch]$stop ) $appPool = get-wmiobject -namespace "root\MicrosoftIISv2" ` -class "IIsApplicationPool" ` | where-object {$_.Name -eq "W3SVC/AppPools/$appPoolName"} if($appPool) { if($stop) { $appPool.Stop() } else { $appPool.Start() } }
File Name : WebsiteStartStop.ps1
The script accepts website name and a switch (Boolean) as parameters to start or stop a Web site in IIS
The script accepts website name and a switch (Boolean) as parameters to start or stop a Web site in IIS
param( [string]$websiteName, [switch]$stop ) Import-Module WebAdministration #[string]::IsNullOrEmpty(...) if (!$websiteName) { exit } if ($stop) { Stop-WebSite $websiteName } else { Start-WebSite $websiteName }
Wednesday, July 23, 2014
OneDrive for Business - Setup and Implementation for SharePoint 2013
Step - 1
Download the OneDrive for business from Microsoft site http://support.microsoft.com/kb/2903984
Based on your requirement you can download any client as shown in the below figure.
Step - 2
Before installation, let us create a custom document library for our demonstration and testing purpose. We will use this document library to upload and sync the documents. Name is as "MySharePointLibrary" as shown in below figure.
Step - 3
Now upload a document by just drag and drop from your windows explorer.
Step - 4
Install the OneDrive now, which you have downloaded in step 1
During the installation, the wizard have to provide the document library which you want to download to local machine and sync.
Optionally you can also change the path of the local directory.
Installation and Sync in progress
That is it.
Step - 5
Testing. Go to your local directory which you have configured during the installation and you can see the document which is actually downloaded to local machine during the sync process.
Now add a new document (txt file) to the local directory
Now right click on the OneDrive (in the tray) and press "Sync now" context menu.
Now the new file will appear in the SharePoint document library as shown below
Now I am going to delete as shown below from SharePoint
NB, this time I am going to use the Sync from SharePoint as shown in the below figure (see the top right corner)
Step - 6
Additional Information : OneDrive is free and have some limitations and see the below Information for Plans and features
Friday, July 11, 2014
SharePoint 2013 Designer Workflow - Expense claims approval process part 1 of 3
List of Article in Series
1. Overview of Business requirement
3. Deployment and Testing
Overview of Business requirement
Employees upload their Expense Claims document in the document library with metadata such as Expense amount, Title etc. The below is the flow chart of the business process and read the rules logic in the process carefully.
We can develop the workflow solution either in Visual studio project or SharePoint Designer (SPD) tool. Since the logic is not complex and SPD 2013 is so matured and comes with many handy actions, we are going to develop in SharePoint 2013.
Please wait for the part 2 of 3 article, I will publish is shortly.
Wednesday, July 9, 2014
SharePoint 2013 BI & SSRS Useful links
SharePoint 2013 BI - Business Intelligence - EPC Group.net
http://www.youtube.com/watch?v=9ZaImjFdYwI
BI Tools: Reporting Services (SSRS) in SharePoint (Tutorial)
http://www.youtube.com/watch?v=mMEIx3S4gqs
Good SSRS Report development with Grouping (parent and child level group), Parameter , Currency format, Header text formats and Deployment (using visual studio)
http://www.youtube.com/watch?v=hjcf8F-b3Iw
http://www.youtube.com/watch?v=9ZaImjFdYwI
BI Tools: Reporting Services (SSRS) in SharePoint (Tutorial)
http://www.youtube.com/watch?v=mMEIx3S4gqs
Good SSRS Report development with Grouping (parent and child level group), Parameter , Currency format, Header text formats and Deployment (using visual studio)
http://www.youtube.com/watch?v=hjcf8F-b3Iw
Drillthrough and drilldown
Document Maps Lable (Bookmark)
Tuesday, July 8, 2014
The search request was unable to connect to the Search Service.
Getting user preference failed: Microsoft.Office.Server.Search.Query.SearchServiceNotFoundException: The search request was unable to connect to the Search Service.
Cause : The search service application proxy is responsible for the communication between the search webpart and the search service application. Also the proxy application may be corrupted.
Resolution : If you already have a search service application proxy, then delete it. Now run the below command to create a new proxy
$searchServApp = Get-SPEnterpriseSearchServiceApplication
New-SPEnterpriseSearchServiceApplicationProxy -SearchApplication $searchServApp
Thursday, June 26, 2014
Friday, June 20, 2014
SharePoint Workflow - Video and Text
Workflow actions in SharePoint Designer 2010: A quick reference guide
Create a Site Workflow and modify its form using InfoPath
Creating a Workflow on a List using SharePoint Designer 2010
Customize “Start Custom Task Process” in SharePoint Designer 2010
SPD Workflow Packaging and Deployment
http://blogs.msdn.com/b/sharepointdesigner/archive/2012/08/30/packaging-list-site-and-reusable-workflow-and-how-to-deploy-the-package.aspx
Advanced Workflow 2013
http://blogs.msdn.com/b/chhopkin/archive/2011/11/17/create-your-own-visualizations-for-sharepoint-workflows-built-with-visual-studio-and-visio.aspx
http://plexhosted.com/billing/knowledgebase/300/How-to-enable-workflow-visualization-at-the-SharePoint-site-SharePoint-2010.html
SharePoint 2013 Visual Studio workflows for escalations (StateMachine type with code)
http://www.youtube.com/watch?v=cl_vo6JFBlE
SharePoint 2013 VS Workflow Declarative type (NO code) Sandbox deployment
http://www.codeproject.com/Tips/620173/Step-by-Step-Approach-to-Create-a-Visual-Studio-Sh
http://blogs.msdn.com/b/officeapps/archive/2013/03/27/sharepoint-workflow-development-with-office-developer-tools-for-visual-studio-2012.aspx
SPD 2013
SharePoint 2013 Workflow ( using Workflow Manager )
Topics on Sharepoint 2013 workflow
1: SharePoint 2013 and Workflow Manager 1.0 In-Depth
This module explains in detail the architecture that makes up the SharePoint 2013 workflow story including SharePoint 2013, Workflow Manager 1.0 and Service Bus 1.0.
2: SharePoint 2013 and Workflow Manager 1.0 Debugging
This module covers the different options developers have in their toolbox to debug workflows they are building for SharePoint 2013 and Workflow Manager 1.0.
3: The New Workflow Services Manager Client API
This module covers the different client APIs, both for managed and unmanaged code, that have been added to control the workflow surface in SharePoint 2013 and Workflow Manager 1.0.
4: Creating Custom Forms for SharePoint 2013 Workflows
This module covers the background story for creating custom forms in SharePoint and guidance on how to create custom forms for SharePoint 2013 workflows.
5: Creating Custom Reusable Activities and Actions for Workflows
This module covers creating custom activities for use in other SharePoint 2013 Visual Studio authored workflows as well as action files for using the activities within SharePoint Designer 2013 authored workflows.
Videos at http://www.pluralsight.com/training/Courses/TableOfContents/sharepoint2013-workflow-advanced-topics
Install and configure Workflow in SharePoint Server 2013
http://technet.microsoft.com/en-us/library/dn201724(v=office.15)
Step 1
Create a Site Workflow and modify its form using InfoPath
Creating a Workflow on a List using SharePoint Designer 2010
Customize “Start Custom Task Process” in SharePoint Designer 2010
SPD Workflow Packaging and Deployment
http://blogs.msdn.com/b/sharepointdesigner/archive/2012/08/30/packaging-list-site-and-reusable-workflow-and-how-to-deploy-the-package.aspx
Advanced Workflow 2013
http://blogs.msdn.com/b/chhopkin/archive/2011/11/17/create-your-own-visualizations-for-sharepoint-workflows-built-with-visual-studio-and-visio.aspx
http://plexhosted.com/billing/knowledgebase/300/How-to-enable-workflow-visualization-at-the-SharePoint-site-SharePoint-2010.html
SharePoint 2013 Visual Studio workflows for escalations (StateMachine type with code)
http://www.youtube.com/watch?v=cl_vo6JFBlE
SharePoint 2013 VS Workflow Declarative type (NO code) Sandbox deployment
http://www.codeproject.com/Tips/620173/Step-by-Step-Approach-to-Create-a-Visual-Studio-Sh
http://blogs.msdn.com/b/officeapps/archive/2013/03/27/sharepoint-workflow-development-with-office-developer-tools-for-visual-studio-2012.aspx
SPD 2013
SharePoint 2013 Workflow ( using Workflow Manager )
Calling an External Web Service using Workflow Manager 1.0 in SharePoint 2013
http://msdn.microsoft.com/en-us/library/office/dn518136(v=office.15).aspx
Workflow Association and Initiation form - Visual studio
Topics on Sharepoint 2013 workflow
1: SharePoint 2013 and Workflow Manager 1.0 In-Depth
This module explains in detail the architecture that makes up the SharePoint 2013 workflow story including SharePoint 2013, Workflow Manager 1.0 and Service Bus 1.0.
2: SharePoint 2013 and Workflow Manager 1.0 Debugging
This module covers the different options developers have in their toolbox to debug workflows they are building for SharePoint 2013 and Workflow Manager 1.0.
3: The New Workflow Services Manager Client API
This module covers the different client APIs, both for managed and unmanaged code, that have been added to control the workflow surface in SharePoint 2013 and Workflow Manager 1.0.
4: Creating Custom Forms for SharePoint 2013 Workflows
This module covers the background story for creating custom forms in SharePoint and guidance on how to create custom forms for SharePoint 2013 workflows.
5: Creating Custom Reusable Activities and Actions for Workflows
This module covers creating custom activities for use in other SharePoint 2013 Visual Studio authored workflows as well as action files for using the activities within SharePoint Designer 2013 authored workflows.
Videos at http://www.pluralsight.com/training/Courses/TableOfContents/sharepoint2013-workflow-advanced-topics
Thursday, June 19, 2014
Wednesday, June 18, 2014
SharePoint Registration ID, List Template ID
The list template ID is required for a hardcore SharePoint developer and frequently I used to refer this. Hope some one will see this page and useful for them.
100 Generic list
101 Document library
102 Survey
103 Links list
104 Announcements list
105 Contacts list
106 Events list
107 Tasks list
108 Discussion board
109 Picture library
110 Data sources
111 Site template gallery
112 User Information list
113 Web Part gallery
114 List template gallery
115 XML Form library
116 Master pages gallery
117 No-Code Workflows
118 Custom Workflow Process
119 Wiki Page library
120 Custom grid for a list
130 Data Connection library
140 Workflow History
150 Gantt Tasks list
200 Meeting Series list
201 Meeting Agenda list
202 Meeting Attendees list
204 Meeting Decisions list
207 Meeting Objectives list
210 Meeting text box
211 Meeting Things To Bring list
212 Meeting Workspace Pages list
301 Blog Posts list
302 Blog Comments list
303 Blog Categories list
1100 Issue tracking
1200 Administrator tasks list
100 Generic list
101 Document library
102 Survey
103 Links list
104 Announcements list
105 Contacts list
106 Events list
107 Tasks list
108 Discussion board
109 Picture library
110 Data sources
111 Site template gallery
112 User Information list
113 Web Part gallery
114 List template gallery
115 XML Form library
116 Master pages gallery
117 No-Code Workflows
118 Custom Workflow Process
119 Wiki Page library
120 Custom grid for a list
130 Data Connection library
140 Workflow History
150 Gantt Tasks list
200 Meeting Series list
201 Meeting Agenda list
202 Meeting Attendees list
204 Meeting Decisions list
207 Meeting Objectives list
210 Meeting text box
211 Meeting Things To Bring list
212 Meeting Workspace Pages list
301 Blog Posts list
302 Blog Comments list
303 Blog Categories list
1100 Issue tracking
1200 Administrator tasks list
Tuesday, June 17, 2014
SQL Server 2012 SP1 SSRS Integration with SharePoint 2013
The below are the Important points
1. Install SQL Server 2012 featured installation with SharePoint Integrated mode (Install only)
If App server and WFE server is in a single box, then follow the steps 2 and 3
2. Install SQL Server 2012 SP1 featured installation option in "App server"
3. Choose the shared features "Reporting Services - SharePoint" and "Reporting Services Add-in for SharePoint products"
If App server and WFE server are in different box 4 to 6
4. Install SQL Server 2013 SP1 featured installation option in "App server"
5. Choose the shared features "Reporting Services - SharePoint" in "App server"
6. Choose the shared features "Reporting Services Add-in for SharePoint Products" in WFE server.
7. In app server (where we installed SSRS) you have to run the below power shell scripts
Install-SPRSService
Install-SPRSServiceProxy
get-spserviceinstance -all |where {$_.TypeName -like “SQL Server Reporting*”} | Start-SPServiceInstance
Note : SSRS in integrated mode (now as a service application) needs to be installed on the SharePoint server, not the SQL
Server.Also, with 2012, you should be installing the SP1 update in order to integrate with SharePoint 2013.
Sunday, June 15, 2014
Thursday, June 12, 2014
Wednesday, June 11, 2014
Tuesday, June 10, 2014
SharePoint Secure Store Application - How to use
The main use of Secure store application is
-To store the secured credentials in encrypted format in database
-To allow a group of users to use the credentials to use applications such as Excel services, Performance point services etc.
-To Impersonate the users to run with elevated privileges.
- The below screen shot is the example to use Secure Store Application in BCS
-To store the secured credentials in encrypted format in database
-To allow a group of users to use the credentials to use applications such as Excel services, Performance point services etc.
-To Impersonate the users to run with elevated privileges.
- The below screen shot is the example to use Secure Store Application in BCS
The below two videos demonstrates how to configure secure store application in Central admin and usage in BCS to access SQL Server.
Saturday, June 7, 2014
Friday, June 6, 2014
When to use and not to use SharePoint
Introduction
SharePoint technology is adopted in many organizations and
supported by IT due to it’s Out of the box features and its Integration with
other systems. Although we can do everything in SharePoint because of its rich
features and support, we need to analyze and take a decision whether to use
SharePoint or ASP.NET (Forms or MVC).
When to use SharePoint
If the new application requires more collaboration, less
database intensive operations, BI, Publishing, Content & document
management and adopts most of the SharePoint OOTB features (with less custom
development), then SharePoint is the best choice.
Key features of SharePoint technology
1.
Collaboration
2.
Single Sign on
3.
BI Insight
a.
Reporting Service Integration
b.
PerformancePoint
c.
Excel services ( Power view, Power pivot, Power
Map)
4.
Project Server Integration
5.
Office
a.
Web based access to the office applications
b.
Drag and drop from desktop to the platform
c.
Exchange Integration
d.
Improved notification
6.
Social Networking
7.
CMS Integration
8.
Advanced Search
9.
User profiles
10.
Business Process workflows with Workflow
manager
11.
Business connectivity services (BCS)
12.
Security
13.
Mobile support (contemporary HTML5 view, Device
channels, Office Web Apps Ux with touch support)
14.
OOBT Site columns, Content types, Page layouts,
Master pages, Themes, Web parts and Workflows etc.
15.
OOBT Site templates (example Team site,
publishing site etc.)
16.
OOBT Objects such as lists and document
libraries (example Task list, Issue list, contacts list, picture library etc.)
17.
Document and Records Management. (Versioning,
co-authoring, Retention policy, Barcode, Label, Audit etc.)
18.
WCM
a.
Cross site publishing
b.
Video and Embedding
c.
Image Rendition
d.
Clean URLs
e.
Variations and Content translation
f.
Metadata navigation
g.
Search Engine Optimization (SEO)
19.
SharePoint Store
20.
Cross browser functionality
21.
e-Discovery feature with e- Discovery center
site templates.
22.
Publishing to Multiple formats (Intranet,
Extranet, Internet, Mobile, Tablet)
23.
OData
24.
And much more.
When not to use SharePoint /
When to consider ASP.NET
However there are certain circumstances we may not choose
SharePoint and the better alternative is ASP.NET custom application
development.
1.
Complex
database: If the application uses RDBMS with many tables with
relations and Indexes, It is better to go with traditional ASP.Net application.
Although we can achieve the same database table structure in Sharepoint List
and document library using lookup columns and Taxonomy, it is flexible and easy
in SQL and traditional ASP.NET applications. In addition, creating OLAP cubes
using Database tables, Creating BI reports and creating Indexes to fine-tune
the BI report performances are easy. In simple words, SharePoint lists and
libraries are not the correct substitute for Relational database.
2.
Database vs. SharePoint list: If your business logic requires
transactions, storing data in a database is preferable to using lists. Also, SharePoint
lists are meant to store simple data structures. If you require a complex data
model with intricate relationships, a database is more appropriate.
Benefits
|
Database
|
SharePoint list
|
Handles complex data relationships
|
Yes
|
No
|
Handles large numbers of items
|
Yes
|
No
|
Handles transactions
|
Yes
|
No
|
Is easy to use
|
No
|
Yes
|
Accommodates workflows
|
No
|
Yes
|
Includes a standard interface
|
No
|
Yes
|
Can easily add binary data
|
No
|
Yes
|
3.
Administrator
/ IT Configurable UI Components: SharePoint webparts such as Announcements,
Weather Information, Sales dashboard web parts are reusable in multiple pages
across the multiple websites and required to create new pages and include the
reusable web parts by Sharepoint administrators or site collection
administrators. If such requirement is not required, we need to consider
choosing traditional way.
4.
Branding:
Sharepoint branding Implementation is comparatively time consuming than ASP.net
and the end results not great especially in admin interfaces which have ribbon
and breadcrumb. Ribbon and Breadcrumb design requires some styles
customization, if we are using our custom branding (custom master page)
5.
Performance:
SharePoint have an extra layer which translates CAML query to T-SQL and then it
executes it. The SharePoint lists and document libraries have some extra
overhead in accessing Data and have items boundary and over the limit
SharePoint won’t support and have performance Issues. However Database table
item storage boundaries are high and optimized according to our data volume.
6.
“Untouchable”
Database: Microsoft strongly recommended not to touch the SharePoint
content database and its objects, as the structures of the Sharepoint tables
are not like normal application table structure.
7.
Time
and Dev server hardware and software requirements:
Developers normally use visual studio to build & deploy many times during
the day, moreover the time spent for building & deploying a SharePoint
solution is normally double or triple the time for a normal ASP.NET application.
This will increase much more if the Developer machines have less than the
Microsoft recommended hardware such as RAM, Processor and Free hard disk space.
8. Complex knowledge platform: It requires a very advanced understanding of the complex concepts of ASP.NET, database & windows server like Active directory,
PowerShell, Memory management, caching, hardware capabilities & networking.
9. Deployment: Complex compared to
ASP.NET, which require to copy DLLs (GAC or Bin directory) and a files in to a
specific folders. A few SQL commands to add Tables, add Meta data etc. In
SharePoint it is complex, and we need to prepare the solution and write
PowerShell commands to add, upgrade, Activate solutions. In addition we need to
activate the features in Farm, Site collection, Web levels. The deployment
process also includes Metadata Import scripts, some manual and automated
process.
10. Estimation: Estimation is difficult
and sometimes we can get a solution from codeplex for free and sometimes we
need to develop from scratch. In addition, there are multiple ways in
Sharepoint to get a required solution such add a list of contacts from a csv
file to SharePoint list. This task can be achieved using Server object model
(c#), CSOM, PowerShell script, SharePoint UI data entry (if the contact list is
small).
11.
Administration:
Backup and restore of ASP.Net application is simple and the administrator needs
to take the backup Database related the application only, whereas in SharePoint
we need to take the snapshot of the server and All the databases related to
Site, Central admin, IIS configuration, Service applications etc.
12.
Full
Control: Since SharePoint is a framework we can’t change certain
features and needs a few workarounds to attain the solution. In case of ASP.Net
application we have a full control over all the UI, Libraries, controls which
we have created and we can modify and fix issues very easily and quickly.
Advice from Jeff Teper, Corporate Vice President SharePoint
- Use
SharePoint as an out-of-box
application whenever possible - We designed the new SharePoint
UI to be clean, simple and fast and work great out-of-box. We encourage
you not to modify it which could add complexity, performance and
upgradeability and to focus your energy on working with users and groups
to understand how to use SharePoint to improve productivity and
collaboration and identifying and promoting best practices in your
organization.
- Be
thorough in custom web design, development and testing – We know many
SharePoint sites are published portals or custom web apps and are excited
about the new features we designed for these scenarios. We encourage you
to review the new features and guidance to reduce the amount of custom work you need to do.
But even there, code is code and we encourage you to validate your design
early in your development cycle and with particular focus on peak usage
performance testing for how your customizations impact HTTP and SQL Server
roundtrips. We have guidance and page and object caching techniques that
can help here.
Reference:
Other references:
SharePoint Performance and boundaries
Subscribe to:
Posts (Atom)