Thursday, September 26, 2013

SharePoint Basics

What is SharePoint ?

SharePoint is a Web Platform from Microsoft initially launched in 2001.SharePoint can be used to develop Intranet portals , Document Management System , Content Management System, Process Management System , Collaboration , Social Networks , Enterprise Search and Business Intelligence

Microsoft has released five major SharePoint versions till date

2001

Its first official branded version released in 2001 : SharePoint Portal Server 2001 and SharePoint Team Services (STS).  

2003

SharePoint Portal Server 2003  and Window SharePoint Services (WSS) 2.0

2006

Microsoft Office SharePoint Server (MOSS) 2007 and Windows SharePoint Services 3.0

2010

Microsoft SharePoint Server 2010 .it comes in three editions

1. SharePoint Foundation (free)
2. SharePoint Standard Edition
3. SharePoint Enterprise Edition

2012

Microsoft SharePoint Server 2013.it also comes in three editions

1. SharePoint Foundation (free)
2. SharePoint Standard Edition
3. SharePoint Enterprise Edition


Microsoft has also released SharePoint Cloud Version known as Office 365 in 2011


Farm

While you install SharePoint, First of all you need to create the Farm

Now What is Farm ?

Farm Consist of Web Server ,Application Server and Database Server . This all can be on one Physical Sever or different Servers

After your Farm is ready.To do anything in SharePoint , You need to Create the Web Application

Web Application

Web Application is very similar to the web application you create in ASP.NET. the only difference between ASP.NET web application and SP web application is some web.config entries. Similar to ASP.NET web application, SharePoint also host it on IIS.

Site Collection

After your Web Application is ready , you can not do anything unless or until you create the Site Collection. one web application can have different site collections but one site collection belongs to only one web application.one site collection can have multiple sites.

Site

Site is nothing but collection of web pages.one site collection can have multiple sites. when you create the site collection , SharePoint automatically create one default Site for you

Content Database

SharePoint keeps all it data in Database which is known as Content Database.
Apart from web application, you will not be able to see the information physically related to site collection and site because SharePoint stores that in Content Database.

One Web application can be in Multiple Databases but one site collection can only be in one Content Database so you cannot have single site collection span across multiple Content Databases

Feature

Feature contains deployment instructions.It is part of Packaging and deployment.To deploy anything in SP Environment you will require feature.A Feature can have four scope
1. Farm - it will be available for the entire farm
2. Web Application - it will be available for the particular web application
3. Site - it will be available for the particular site collection
4. Web - it will be available for the particular site

once you deploy the feature , you need to activate it before you can use it

Content Type 

Content Types are building block of SharePoint .it is reusable collection of columns/metadata that can be applied to a certain category of content

List 

In SharePoint every thing is a List.List is basically a collection of columns and rows. SharePoint keeps all its data in the form of list

Document Library

Document Library is special List where user can store its content/documents/artifacts

Master Page/Page Layout


Master Page provides common look and feel for web application while Page Layout is define structure of page in a site

Web part

Web Part is a set of controls that enable user to create and modify the content , appearance and behavior in a web page 

14 Hive

It is a special folder that is created at the time of installation where SharePoint keeps all its important information/configuration.

Powershell

Powershell is a scripting language from Microsoft which can be used to do administrative tasks in SharePoint

WSP

WSP stands for Windows SharePoint. these are cab files used by SharePoint to deploy into SharePoint Environment.WSP is a package that contains all the necessary files that SharePoint needs.

Delegate Controls



Delegate Controls are useful if you want to customize the functionality of SharePoint Site Controls without editing or even touching the Master Page


SP 2010 V4.master Delegate Controls

1. AdditionalPageHead
2. GlobalNavigation
3. GlobalSiteLink0
4. GlobalSiteLink2
5. QuickLaunchDataSource
6. SmallSearchInputBox
7. TopNavigationDataSource
8. PublishingConsole
9. TreeViewAndDataSource
10. GlobalSiteLink3


SP 2010 nightandday.master Delegate Controls

1. PublishingConsole
2. TreeViewAndDataSource
3. GlobalSiteLink0
4. GlobalSiteLink2
5. GlobalSiteLink3-mini
6. AdditionalPageHead
7. SmallSearchInputBox



SP 2010 minimal.master Delegate controls


1. MinimalMasterSiteLogo


SP 2010 Default.master Delegate controls

1. AdditionalPageHead
2. GlobalSiteLink0
3. GlobalSiteLink1
4. GlobalSiteLink2
5. SmallSearchInputBox
6. TopNavigationDataSource
7. PublishingConsole
8. QuickLaunchDataSource
9. TreeViewAndDataSource


you can also create your own delegate control or replace your control with out of the box control

Replacing Out of the Box control with your own control is quite easy.To replace the SmallSearchInputBox control with your own control follow the below steps

Step 1. Add One User Control with the name SearchBox. it will automatically add ControlTemplates Folder

Step 2. Add one Empty Element to define Element.xml for Feature 

                                                                

Step 3. Add your functionality in the SearchBox user control







Step 4. Modify the Element.xml file. Here control id should be same as the SmallSearchInputBox otherwise substitution will not happen. sequence no should be less than 100 because by default out of box sequence no is 100.ControlSrc is the location of your user control in the 14 hive folder



Now deploy your code.you will see your control in place of the Default control