Jean Paul's Blog

There are 2 types of People in the World, One who Likes SharePoint and..

    Advertisements
  • Microsoft MVP

  • MindCracker MVP

  • CodeProject MVP

  • eBook on SharePoint 2010

  • eBook on Design Patterns

  • eBook on Windows Azure

  • NLayers Framework @ CodePlex

  • MSDN Forums

  • .Net vs. Java

    Due to Public Demand
  • Advertisements

Posts Tagged ‘sharepoint 2013’

Color Palette

Posted by Paul on August 18, 2014

In this article we can explore how to create a color palette & deploy it.

Color Palette

A Color Palette is a combination of colors used in a SharePoint site. Each Master page contains multiple elements with color-names. A color palette contains color values for these pre-defined names.

A Color Palette has the extension .spcolor.

Following is the content of a sample .spcolor file.

image

Location of Color Palette File

The color palette file resides in the root site collection themes folder. You can access the location from Site Actions > Site Settings > Themes page.

image

Following is the Themes page.

image

Creating New Palette

You can open the themes gallery > 15 hive folder > download an existing .spcolor file. Later modify the color values according to your need.

Deploying New Palette

You can open the themes gallery > 15 hive folder > choose new document. In the appearing dialog choose the new spcolor file and upload.

image

Once uploaded, you can see the new palette in look and feel page.

image

Editing files

We can open the .spcolor file in notepad & edit the color hex values. Alternatively, there is a very good tool named Color Palette Tool which provides a graphical user interface in editing colors.

image

The tool can be downloaded from:

http://www.microsoft.com/en-us/download/confirmation.aspx?id=38182

Please find my other article on using the same.

image

Please note that the themes folder also contains font files.

References

http://msdn.microsoft.com/en-us/library/office/jj945889(v=office.15).aspx

Summary

In this article we have explored color palette and deployment.

Advertisements

Posted in SharePoint, SharePoint 2013 | Tagged: , | Leave a Comment »

JS Link for Web Parts

Posted by Paul on August 1, 2014

SharePoint 2013 has a new CSR (Client Side Rendering) support through the JS Link property for web parts.

What is JS Link?

JS Link is a property available for web parts.  We can specify a client side script file here.  The scrip will be executed once the page gets loaded; on the client side.

This feature enables us to quickly associate JavaScript & JQuery files rather than using the Content Editor web part.

How to set the JS file?

Open a list or library and choose Edit Page > Edit Web Part option.

image

Open the Miscellaneous tab and you will see the JS Link.

image

You can set your client side script file for this property.

image

~sitecollection

We can use the pre-defined ~sitecollection for accessing the site collection path.

References

http://msdn.microsoft.com/en-us/library/office/jj193034(v=office.15).aspx

Summary

In this post we have explored the JS Link property and its usage.  I hope this will help you take advantage of the SharePoint 2013 features.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Open and Closed Term Sets

Posted by Paul on July 5, 2014

In this article we can explore Open and Closed Term Sets inside SharePoint.

Term Sets

Term Sets allow users to create collection of terms which they can reuse to associate with content.

Usually the Site Owner creates the Term Sets for all the other users.

Example of a Term Set is Programming Languages with values like:

1. C#

2. Java

3. Python

Term Store Management Tool

For site collections we can use the Term Store Management Tool. This is available from Site Actions > Site Settings > Term store management tool

image

Closed Term Sets

By default Term Sets are closed. Here the term manager has to create the terms & users will have to use it. There is no provision to add new terms on the fly.

image

Term association dialog is shown below.

image

Open Term Sets

Open Term Sets allows users to create more terms on the fly.

Once we mark the same Term Set as Open, we can add new terms in the association time.

image

Selecting a parent term & clicking Add New Item allows us to create new term under the parent.

Groups, Term Sets & Terms

Please note that there is subtle difference between Groups, Term Sets & Terms. You can notice the icons for the same.

image

References

http://technet.microsoft.com/en-us/library/ee519604(v=office.15).aspx

Summary

In this article we have explored Open and Closed Term sets.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Power of Assets Library

Posted by Paul on June 8, 2014

You might be thinking what is the specialty about Assets Library? Can we use an ordinary library to store videos & images?

image

What are the features of Assets Library?

Following are the features of Assets Library:

Content Types Assets Library has pre-configured content types for Image, Audio & Video. These content types offer pre-defined columns like Thumbnail, Preview, Size etc.

image

You can see the content types from the New menu.

image

Preview Assets Library provides Preview support. For example, storing an image or video file creates a thumbnail of the same & the library gets displayed in the thumbnail view.

image

Metadata Automatic metadata extraction is done by the Assets Library while file upload. We can get information image like dimensions, size & for video like play duration. Image files supported are BMP, GIF, ICO, JPEG, PNG, and TIFF.

image

Podcast RSS Podcast is enabled for the Assets Library which will enable users to subscribe for new content uploads.

Search Preview Previews are provided for the Assets Library search results. This includes the thumbnail view & preview popup box.

image

Video Renditions User can upload different resolutions of the same video. The video renditions can have different codecs and formats, and bit rates. Then the user can choose the rendition to play.

image

If you just need to store picture files, then Picture Library would be the right option.

References

http://bit.ly/1hjlN1P

Summary

In this article we have explored the features of Assets Library.

Posted in SharePoint, SharePoint 2013 | Tagged: , | Leave a Comment »

Video Search

Posted by Paul on June 1, 2014

In this article we can explore Video capabilities & Video Search in SharePoint 2013.

Video Capabilities

SharePoint 2013 supports video playback using HTML 5 player. Video files can be stored in Assets Library where a pre-configured Video content type exists.

Search Result for videos uses the Video item template.

What is Video Search Vertical?

Enterprise Search Center page provides a Video vertical where the user can search only on Videos.

clip_image002

What are the pre-requisites for Video storage?

Following are the pre-requisites:

1. Enable Video and Rich Media feature at site collection level

2. Create Assets library

After performing the same, you can try uploading a Video file into the library & perform a Full crawl. Later you can search using the file name.

Practical

Let us perform a Video search.

Step 1 Activate Feature

Activate the Video and Rich Media feature from Site Collection features.

clip_image004

Step 2 Create Assets Library

Choose Add an App > Go to Page 2 > Asset Library

clip_image006

Enter a name for the Library.

clip_image008

Step 3 Upload Video File

Download a 1 MB video file from Internet & Upload to the library.

clip_image010

You can see the uploaded file shown below.

clip_image012

Step 4 Add File Type

Open Central Administration > Manage Service Applications > Search Service Application > File Types > Add mp4 extension.

clip_image014

clip_image016

Few video file extensions are not pre-configured & might not appear in the search results. You need to explicitly add them in the Search Configuration.

Step 5 Perform Crawl

Perform an Incremental Crawl for the content source & Wait for the completion.

Step 6 Test Search

Open the Enterprise Search Center site & search for the video using the name.

clip_image018

You can also see the Video preview offered by OOTB.

clip_image019

This concludes our article on Video Search.

Summary

In this article we have explored Video Search in SharePoint 2013.

Posted in SharePoint, SharePoint 2013 | Tagged: , | Leave a Comment »

People Search

Posted by Paul on May 29, 2014

In this article we can explore People Search and How to configure it for SharePoint 2013 Search.

What is People Search?

People Search is the ability to Search for People by their Name & Conversations. People Search is performed by clicking the People vertical in Enterprise Search center.

For example: You can search using an existing Employee Name of your SharePoint site.

Is People Search enabled by default?

In the default configuration it is not enabled. We need to do additional configuration steps to setup people search.

Before Configuration

Following is the situation before People Search Configuration.

No result yielded when searching by name, even though the user created a document.

image

Configuration for People Search

Following are the configuration items for People Search:

1. Create My Site

2. Create Content Source

3. Full Crawl

Pre-Requisites

Following service applications should be running:

· Search Service Application

· Managed Metadata Service Application

· User Profile Service Application

Steps

Following are the configuration items for People Search:

Step 1: Create My Site

Open Central Administration > Manage Service Applications > User Profile Service Application > Setup My Sites option.

image

In the appearing page, enter the Search Center URL & Click Ok button.

image

Step 2: Create Content Source

Now we need to create a New Content Source for People Search. Open Central Administration > Manage Service Applications > Search Service Application > Content Sources link > New Content Source.

image

Enter the following details:

1. Name as People Search

2. Address as sps3://my-site-url

3. Only crawl the Site Collection of each start address

4. Save changes

image

If you receive an error saying the URL is already part of another content source, then perform following steps:

1. Stop all crawls

2. Open Local SharePoint Sites content source

3. Remove sps3:// url from there

4. Save changes

5. Try creating People Search content source again

image

The SPS3:// specifies the Protocol as SharePoint People Search. If you are using https, then choose sps3s. In the remaining part, you need to enter the My Site URL obtained from the previous step.

Step 3: Perform Full Crawl

Now perform a full crawl for the content source.

image

Wait for few minutes for the crawl to be completed.

Step 4: Test People Search

Back in the SharePoint Search user interface; try searching using a valid user name. You should see the result in the Everything and People vertical.

image

This confirms our People Search configuration as successful.

image

You need to have User Profile Synchronization running to search by a user name. Please refer the References section for more information.

References

http://technet.microsoft.com/en-us/library/hh582311(v=office.15).aspx

Summary

In this article we have explored People Search configuration for SharePoint 2013.

Posted in SharePoint, SharePoint 2013 | Tagged: , | Leave a Comment »

Change Result Page

Posted by Paul on May 22, 2014

In this article we can explore how to change the default search result page in SharePoint 2013.

Why we need to change the result page?

After creating Search Center site, there are 2 options for the user:

1. Use the default search box which takes to the default result page

2. Use the search center site for searching

The preferred approach is to change the default result page once the search center site is created.

Default Search Results Page

Following is the snap of the default search results page. The path would be _layouts/15/osssearchresults.aspx.

clip_image002

Default Search Results Page

Following is the snap of the enterprise search results page. The path would be searchcenter/pages/results.aspx

clip_image004

How to perform the change?

Open Site Actions > Site Settings page from the root site.

clip_image006

Click on the Search Settings link from the page. You will get the following page.

clip_image008

You can make the following changes:

1. Enter Search Center URL (for example /YourSearchCenterSite)

2. Uncheck Use the same results pageoption

3. Enter Result Page URL (for example /YourSearchCenterSite/results.aspx)

Click OK to save changes.

(my search center URLs looks like below)

clip_image010

After saving, you can Test the changes. Open the root site & search using the default search box.

clip_image012

You should see the results are shown in the Enterprise Search Center results page.

clip_image014

clip_image016

Please note that you need to create an Enterprise Search Center site before attempting this step.

Summary

In this article we have learned how to change the default search results page.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Content Enrichment Web Service

Posted by Paul on May 21, 2014

In this article we can explore an Advanced Search feature of SharePoint 2013.

What is Content Enrichment Web Service?

SharePoint 2013 allows developers to add a custom step between content processing. SharePoint while content source crawl will call our custom web service. We can create or change the metadata properties associated with the crawl item.

Under the hood, the web service is actually implementing a pre-defined interface. Each crawl item will be passed to the interface method where item URL & properties can be accessed.

Scenarios

We can use Content Enrichment Web Service for the following scenarios:

1. You have multiple web content sources configured. You need to create new Managed Properties based on each URL. Example: Blog, Website etc.

2. You have a content source with limited metadata information. You need to add new Managed Properties based on the content.

3. You have a content source with metadata information. You need to correct the Managed Properties.

4. You have a SharePoint list where Age column exists. You need to classify the content as Minor & Major using Managed Properties.

Infrastructure

Following are the Infrastructure need:

1. Visual Studio 2012

2. IIS website to host the service

3. WCF service

Practical

To perform the Practical, we need to setup the following.

1. SharePoint 2013 Enterprise site

2. Create Enterprise Search Center site

3. Central Administration > Search > Create Content Source > Add www.jeanpaulva.com

4. Central Administration > Search > Create Content Source > Add www.sharepointcto.com

5. Central Administration > Create Crawl Rules > Include query strings (?) for both URLs

6. Server > IE Enhanced Security Configuration > Off

7. Perform Full Crawl for both content sources

After the above steps, Try searching for sharepointcto from the Enterprise Search Center site & you should be able to see results from both the URLs as shown below.

image

Our aim is to provide refiners like below.

image

Steps

Step 1: Create Service

Create a new WCF service application project.

image

Delete the existing Service files & create a new Service.

image

You can delete the interface file as well. The Solution Explorer looks like below.

image

Add Reference to the following assembly:

· 15HIVESearchApplicationsExternalMicrosoft.Office.Server.Search.ContentProcessingEnrichment.dll

Step 2: Implement Interface

Open the SVC file & implement pre-defined interface IContentProcessingEnrichmentService as shown below.

image

The only method named ProcessItem passes an Item argument and returns ProcessedItem argument.

The interface IContentProcessingEnrichmentService belongs to the ContentProcessingEnrichment assembly.

The Item type has a property named ItemProperties which contains pre-defined Name-Value pairs of:

ContentType

Access the Content Type of the item

Name

Access the Name of the item

Title

Access the Title of the item

Path

Access the Path of the item

ContentSource

Access the ContentSource name

We can specify the input & output properties while registering the service. In our case we are using the Path property.

Step 3: Create Method

Replace the method with the following code. Right click & Resolve type name errors.

public ProcessedItem ProcessItem(Item item)

{

ProcessedItem processedItem = new ProcessedItem();

processedItem.ItemProperties = new List<AbstractProperty>();

var p = item.ItemProperties.Where(n => n.Name == “Path”).First();

string url = p.ObjectValue.ToString();

if (!string.IsNullOrEmpty(url))

if (url.StartsWith(“http://www.sharepointcto.com&#8221;))

{

Property<string> property = new Property<string>()

{

Name = “WebType”,

Value = “Site”

};

processedItem.ItemProperties.Add(property);

}

else if (url.StartsWith(“http://www.jeanpaulva.com&#8221;))

{

Property<string> property = new Property<string>()

{

Name = “WebType”,

Value = “Blog”

};

processedItem.ItemProperties.Add(property);

}

return processedItem;

}

The above code performs the following:

1. Get the Path property value

2. If Path value is of www.sharepointcto.com then creates a Managed Property WebType and set value to Site

3. If Path value is of www.jeanpaulva.com then creates a Managed Property WebType and set value to Blog

4. The processedItem object will be returned by method

Step 5: Run the Service

Save & Run the Service.

image

Step 6: Create Managed Property

Open Central Administration > Service Applications > Search Service Application > Search Schema > New Managed Property page. Enter the following details.

image

· Name as WebType

· Type as Text

· Searchable enable

· Queryable enable

· Refinable yes-active

Step 7: Register Service using PowerShell

Open PowerShell ISE editor & Paste the following code.

# Add PowerShell Snapin

if ((Get-PSSnapin “Microsoft.SharePoint.PowerShell” -ErrorAction SilentlyContinue) -eq $null)

{

Add-PSSnapin “Microsoft.SharePoint.PowerShell”

}

# Get SearchServiceApplication

$ssa = Get-SPEnterpriseSearchServiceApplication

Remove-SPEnterpriseSearchContentEnrichmentConfiguration –SearchApplication $ssa

$c = New-SPEnterpriseSearchContentEnrichmentConfiguration

$c.Endpoint = “http://localhost:52156/WebsiteEnrichmentService.svc&#8221;

$c.DebugMode = $false

$c.SendRawData = $false

$c.InputProperties = “Path”

$c.OutputProperties = “WebType”

Set-SPEnterpriseSearchContentEnrichmentConfiguration –SearchApplication $ssa –ContentEnrichmentConfiguration $c

Please remember to use the correct URL for the service.

Save & Run. If no errors, your service is installed successfully.

Step 8: Perform Full Crawl

Open Central Administration & Perform Full Crawl for the following content sources.

1. Web content source for www.sharepointcto.com

2. Web content source for www.jeanpaulva.com

Step 9: Add Refiners to Result Page

Open the Enterprise Search Center result page, bring the page to edit mode, edit the refiner web part & add the WebType refiner. You can view References section on how to add Search Refiners.

Step 10: Test Search

Open the Enterprise Search Center Site & Try searching for content. You can see the Web Type refiner appearing & try clicking on the values.

image

If the result is filtered based on Blog or Site values, it means the Refiners are working correctly.


As the Content Enrichment Web Service will be called for all the Content Sources, Performance can become sluggish as there is a delay involved in the service invocation. It is recommended that we should deploy the service closer to the SharePoint system. Alternatively, one can try Asynchronous mode too.

We can also debug the service. Ensure the Service is running & set breakpoints.

image

References

http://msdn.microsoft.com/en-us/library/office/jj163982(v=office.15).aspx

http://www.jeanpaulva.com/index.php/2014/04/20/search-refiners/

Summary

In this article we have explored Content Enrichment Web Service. The source code & script is attached along with for download.

Posted in SharePoint 2013 | Tagged: , , | Leave a Comment »

DocKit – File migration to SharePoint 2013

Posted by Paul on May 18, 2014

In this post we can have an overview on DocKit – File Migration tool for SharePoint 2013. 

Why we need a File Migration Tool?

Upon times we might require to upgrade an old content management system to SharePoint.  In most cases we can isolate the documents inside the CMS as files & then migrate to SharePoint.

Metadata

After migrating the files, we might require to map the custom metadata properties of source system.
The Tool DocKit provides this facility.

 

Download

You can download the tool from following link:

http://www.vyapin.com/products/sharepoint-migration/dockit/sharepoint-migration-tools.htm

Screenshots

Screenshots of the tool are given below.

image

Choose the New Task option.

clip_image001

Choose the source folder and destination library.

clip_image002

Choose the metadata file.

clip_image003

I am using the following file which have a required-column named Path and items are mapped through the source file path.

image

Click the Finish button in wizard for the migration to take place.

clip_image005

Options available to exclude sub-folder structure.

clip_image006

You can see the files are copied with metadata.

image

Metadata

The metadata file should be generated using your custom logic.

Summary

The tool is very efficient in doing migration of files & setting metadata.  But the price $1700 seems to be little above the upper-band.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Search Crawling Error : The content for this address was excluded by the crawler because this item was marked with a no-index meta-tag. To index this item, remove the meta-tag and recrawl.

Posted by Paul on May 15, 2014

While setting Content Sources in SharePoint 2013, especially External Web content sources, one may encounter following errors.

I had faced the error while configuring web content source for my blog:

http://www.jeanpaulva.com

I had configured Crawl Rules to include domain/*.  But still the error happened.

The content for this address was excluded by the crawler because this item was marked with a no-index meta-tag. To index this item, remove the meta-tag and recrawl.

error blog

As the content is able to parse inner URLs, we can discard the chances of Firewall & Antivirus blockages.

Solution

The error essentially may not depend on the Source URL; It can be caused by the Crawling Machine configuration as well.

Following are the fixes you can try one by one:

Solution 1 Check robots.txt

Open your URL/robots.txt & Ensure there are no blocking verbs.

For example a fully-liberal robots.txt looks like below:

image

Solution 2 Check meta tags

View the source of the HTML page & ensure no blocking tags like below are there:

image

You can even discard the META tags Or create new tag with INDEX or FOLLOW values.

Solution 3 Check Crawling Machine & Crawl Credentials

Open your Crawling Machine (If in Farm) using the Crawl Credentials.  You can find it from Search Service Application

image

Try accessing the URL in the browser. If any extra login prompts appears, you need to increase the permissions for Crawling Account.

Solution 4 Turn Off IE Enhanced Security Configuration

image

Restart your machine after this. (If still unresolved, restart all servers in farm & retry)

Solution 5 Lower Internet Explore Security Configuration

Open your Crawling Machine & Lower the Internet Explorer Security settings.

image image image

Restart your machine after this. (If still unresolved, restart all servers in farm & retry)

Solution 6 Re-create Search Service Application

Go to Central Administration, Delete & Re-create the new Search Service Application.

Solution 7 Run Fiddler & Check ULS Logs

You can experiment with Fiddler in examining the underlying request/response.

http://www.telerik.com/fiddler

You can also check ULS Logs with Verbose mode turned on.

Solution 8 Run Cumulative Updates

Find the latest cumulative updates for SharePoint 2013

Solution 9 Update SharePoint with Service Pack

The latest service pack for SharePoint Server 2013 is available at:

http://www.microsoft.com/en-us/download/details.aspx?id=42544

Solution 10 Contact Microsoft Support

If you have Paid Support, Contact Microsoft for fxing this.

References

http://googlewebmastercentral.blogspot.com/2007/03/using-robots-meta-tag.html

Summary

In this post we have explored a weird content source crawling issue & possible solutions to fix that.

Posted in SharePoint, SharePoint 2013 | Tagged: , , , | Leave a Comment »