Showing posts with label Sharepoint. Show all posts
Showing posts with label Sharepoint. Show all posts

Saturday, February 8, 2014

Adding a service to Default Application Proxy Group in SharePoint using PowerShell

When creating a Service application to a SharePoint server, we need to attach that service to Default Application proxy. We can attach the service application using following Power Shell commands,
Get the Service application proxy by using Get-SPServiceApplicationProxy command

$ServiceAppProxy=  Get-SPServiceApplicationProxy | where { $_.Name -eq “Name of the service Application” }

Get default proxy group by using Get-SPServiceApplicationProxyGroup command.

$serviceProxyGroup = Get-SPServiceApplicationProxyGroup | where { $_.FriendlyName -eq “default” }

Add service application proxy group to default proxy group using Add-SPServiceApplicationProxyGroupMember command.

Add-SPServiceApplicationProxyGroupMember -Identity $serviceProxyGroup -Member $serviceProxyGroup

By combining all commands we can see the script as

$ServiceAppProxy=  Get-SPServiceApplicationProxy | where { $_.Name -eq “Name of the service Application” }                              
$serviceProxyGroup = Get-SPServiceApplicationProxyGroup | where { $_.FriendlyName -eq “default” }
 Add-SPServiceApplicationProxyGroupMember -Identity $serviceProxyGroup -Member $serviceProxyGroup 

Friday, January 31, 2014

"Microsoft.SharePoint.Administration.SPUpdatedConcurrencyException", SharePoint exception after applying cumulative update\service pack

After applying a cumulative update on one of my SharePoint server, tried to run configuration file using psconfig.exe -cmd upgrade -inplace b2b -wait -force command, i got an error saying that "Exception: Microsoft.SharePoint.Administration.SPUpdatedConcurrencyException: An upgrade conflict has occurred and you must re-try this action"

We can fix this exception by setting line-update-running property to true. To do that Open command prompt with administrator privileges and navigate to bin folder (C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\Bin) and execute following command

stsadm -o setproperty -pn command-line-upgrade-running -pv Yes

By running this command on SharePoint server, it will reset the command-line-upgrade-running property. We need to execute this command on all the SharePoint servers in the farm after upgrading. Once we are done with running this command, we have to run config command as

psconfig.exe -cmd upgrade -inplace b2b –wait –force

Wednesday, January 29, 2014

SharePoint search error “SharePoint item being crawled returned error when attempting to download the item”

While working with SharePoint, I got an error in search service when I try to index a page having search results using for roll the content in site collection. My search service application and content source are working fine. After checking this error in logs and digging in to this error I found that we have to change User agent value.
To do that,

Open Registry editor (Run -> regedit) and navigate to “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\14.0\Search\Global\Gathering Manager” key.



Change the value of “User Agent” from “MSIE 4.01” to “MSIS 8.0” and restart SharePoint search service.

Tuesday, January 28, 2014

Content Enrichment web service callout in SharePoint

In SharePoint 2013 search, as a developer we can add custom steps to process the content to modify the managed properties before indexing. We can do this by implementing custom web service in SharePoint to enrich the managed properties of the items that processed.

To configure the content enrichment functionality by using Power Shell commands. By Using Get-SPEnterpriseSearchContentEnrichmentConfiguration command we can get the content enrichment configuration for search service application. We can write the commands as

$searchServiceApp = Get-SPEnterpriseSearchServiceApplication
Get-SPEnterpriseSearchContentEnrichmentConfiguration –SearchApplication $searchServiceApp

To save the content enrichment configuarations to the search service application using Set-SPEnterpriseSearchContentEnrichmentConfiguration command. 

To add new content enrichment object using New-SPEnterpriseSearchContentEnrichmentConfiguration and to remove current content enrichment configuration from specific search service application using Remove-SPEnterpriseSearchContentEnrichmentConfiguaration command as shown below.

$config = New-SPEnterpriseSearchContentEnrichmentConfiguration

$searchServiceApp = Get-SPEnterpriseSearchServiceApplication
Remove-SPEnterpriseSearchContentEnrichmentConfiguration –SearchApplication $searchServiceApp

In next post I will write how to create a content enrichment web service and how to configure that service to SharePoint 2013. 

Monday, January 27, 2014

Hit counter for SharePoint site

Generally few of blog sites I have checked the hit counter to count the number of hits for that site. For my blog also we can see the hit counter on the right bottom showing like the image below.


So Is there any feature or anything is available in SharePoint. Yes we have same kind of feature in SharePoint to view number of hits for specific page. By default it is available in SharePoint 2007 as explained in the URL here.

SharePoint 2010 we don’t have that feature. But we have a WebPart available in codeplex to achieve this functionality. We can download the file from codeplex.

But before adding this WebPart to our site, we have to create custom list as Statistics with URL (Multiple lines of text), Date (Single line of text), and Username (Single line of text) fields and provide contribute permissions for visitors and viewers group. So that all the visits will be listed. Hope it will help.

Sunday, January 26, 2014

Code Access Security in SharePoint web parts

Installing SharePoint web part dll files in GAC can cause some security implications. By default all the web parts will be installed in the GAC with full trusts. We can install web parts in web application dedicated bin folder. Web parts in bin folder will run in partial trust and will have only limited access to the bin folder.

If web part needs additional permission levels, we need to create custom CAS policies with permissions. By adding custom policies we can make the code to run in full trust and all the code will run with full trust without depending on the location where it installed.

Code accessibility Security (CAS) is a policy that limits the access to an assembly, System resources and operations. By default SharePoint will have built-in policies from ASP.NET, it will use minimal set of permissions to protect the server and infrastructure from vulnerable code. If web part needs greater access will have minimal settings and there are number of  ways that we can increase the permissions of the web part by creating custom CAS policy and increasing the overall trust level for the server farm in the web.config.

We can have WSS_UserCode, WSS_Minimal, WSS_Medium Built-In security settings in SharePoint foundation inheriting from ASP.NET trust levels. By default this built-in SharePoint Foundation policy files located in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\CONFIG directory named wss_usercode.config, wss_minimaltrust.config and wss_mediumtrust.config.

By default SharePoint foundation will have WSS_Minimal trust level. This will supports all the permissions in the ASP.NET minimal trust. WSS_Minimal policy will restrict accessing all the web parts from advanced operations.  WSS_Medium level allows accesing SharePoin object model and file operations. This will also allows to access to environment variables.
We can check security policies in web.config file as

<securityPolicy>
<trustLevel name="WSS_Medium" policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\config\wss_mediumtrust.config" />
<trustLevel name="WSS_Minimal" policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\config\wss_minimaltrust.config" />
</securityPolicy>

We can add custom files to SharePoint and add the tag to in Security policy tag as

<trustLevel name="WSS_Custom" policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\config\wss_custom_wss_minimaltrust.config" />

Sunday, December 15, 2013

Correlation Tokens in SharePoint workflow

Correlation tokens are unique identifiers in SharePoint that bridges to map the objects between the workflow and windows workflow environment. Windows workflow acts as a intermediate layer to communicate with other software. When incoming request arrives, runtime receives the request and determines the request and identifies the workflow instance. Then it process the request for the instance.

Windows workflow acts as a communication channel for all the workflow instances. We can have two separate correlation tokens for Workflows and task references. We cannot assign the correlation token to workflow task that used for workflow.

We have to declare the correlation token for the workflow in OnWorkflowActivated activity. We have to bind the this correlation token to  each activity in the workflow.
OnWorkflowActivated activity raises when workflow initiated  for SharePoint. This is the first event raised in workflow. Each task should have its own correlation token that provides the task related information. 

Thursday, November 28, 2013

Distribution lists in SharePoint

In SharePoint, we can manage the users by assigning the permission levels to groups. We can do that by setting up individual users of Active directory groups. We can do that in two ways using Security groups in site and using distribution groups.

A distribution group is used to send emails for not security-enabled users. We cannot list the distribution groups in discretionary access control list that are used to define the permissions. By selecting security groups users will not be accessible to my sites. User groups will be dedicated to only a specific site.

We can create SharePoint distribution groups by navigating security and clicking on the Approve or reject distribution groups in Users section.



Create new Item in the distribution group by clicking on new item link


Enter details of the item like group title, Alias name, Description, Owner Email details. Click on ok to save details. Here justification is message to the user who approves the requests in the distribution groups. We can see the requests in the list once it is approved.


Wednesday, November 20, 2013

Difference between Cumulative updates, Service Packs and Public Updates

While applying the updates in SharePoint I have a lot of confusion every time in Cumulative Updates, Service Packs and Public updates. By going through articles in TechNet and some of blog posts, i have found the following differentiation among them.

Service Pack:
It’s an update or combination of previous updates helps to make our product more reliable. It includes new fixes, functionality additions and all fixed that released previously (means Previous Service packs, Cumulative updates). That means if MS people released a service pack recently means that contains all the list of features up to date.

Service packs will not be multilingual. We have to download and install separate service packs for each installed language. We must install service packs for specific product as soon as possible. Microsoft provides all the latest fixes and updates in Service pack. There are no prerequisites for Service pack installations because each service pack includes all the recent updates from product release. Service Packs will not release frequently.

Cumulative Update (CU):
Cumulative update is collection of all the hot-fixes up to date. Generally Office hot fixes are released for every two months in a package. It includes fixes for all the issues collected from hot-fix accepted criteria that related to customer impact or reproducible. 

Cumulative update also includes critical on-demand hot fixes and security updates. It includes all the previous cumulative updates and public updates from previous service pack release. Cumulative updates are multilingual. It includes fixes for all languages. To install CU in our machine,, we have to install recent service pack related to that product (If released). 

Generally cumulative updates are not mandatory to install. We can install them to fix any issue. While downloading CU itself we can see the applicable scenarios in KB article page. There is lot of chances to affect the system. So we have to check before installation or advised by Microsoft people support to install. Cumulative updates releases frequently for a second month like (Feb, April, June, Aug, Oct, Dec)

Public Update and Critical On Demand:
Public update includes product fixes that applicable to large number of customers. Public update also applies for multilingual. To install public update we have to install most recent service pack if released. Sometimes Public Updates may have prerequisites for Cumulative updates also.  Public Update includes security fixes and it is recommended to install ASAP.

Critical On Demand will applicable for less number of customers facing critical problem. It will applicable for a specific problem or issue. COD is not multilingual. We have install COD’s on Microsoft people recommendations only.

Wednesday, November 6, 2013

SharePoint 2010 Access error - "This report failed to load because session state is not turned on. Contact your SharePoint farm administrator"

While working with SharePoint access services, Browsing contacts after publishing the Contacts form in SharePoint site I got an error saying that,
“This report failed to load because session state is not turned on. Contact your SharePoint farm administrator” as shown the image below.



We can fix this error by enabling the session state for SharePoint access reports. To do that we have to run the following Power Shell commands in SharePoint Management Shell with Administrator privileges,

Enable-SPSessionStateService

We can see the response to provide the Database name. Enter Database base as AccessServiceReports (We can enter any name). A database will be created with the name in SQLServer. Reset IIS (IISRESET)


We can enable session state for web application if we still have the problem. We can do that by using the steps below,

Open IIS Manager and Select the web application by expanding sites list. In IIS Section, double click on “Modules”.


In Top Right side of the modules window, click on “Add Managed Module” link.



We can see “Add Managed Module” popup window. Enter any unique name in “Name” text box and specify the Type as “System.Web.SessionState.SessionStateModule, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” from “Type” dropdown as shown the image below. Click on Ok to save the settings. Reset IIS.

Friday, October 4, 2013

Add BCC to SharePoint designer workflow

In SharePoint designer 2010, workflow to send emails, we cannot find BCC (Blind Carbon Copy) column. We can see only To and CC (Carbon Copy) options with Subject and Body. 


If we have the requirement to include users in BCC, we can do that by using the steps below,
Complete the Send Mail activity and click on OK. Select Email task in the workflow, click on “Advanced Options” on the top of the ribbon.


We can see “Send an Email Properties” window. In BCC column we can add users to include BCC. Browse users in workflow click on (…) on BCC Column. Add users and click on OK. Click on Ok to close “Send an Email…” window.



Save and publish workflow.

Friday, September 27, 2013

SharePoint – Back to basics - Quotas and locks in SharePoint

In SharePoint, as an administrator, I can control the storage limits for a site. Quota specifies the amount of data that stored in a site collection. Quota settings will send emails when quota limit is exceeded.

We can change the quota settings in SharePoint central Administration By Navigating to Application Management and Selecting Specify Quota Templates link.



We can the Quota template page with maximum size and personal site template. We can change the separate template also. Template name will edit the existing quota templates. We can create new templates in the template name section. Storage limits values will specify the whether to limit the amount of the storage available on the Site Collection. “Sand boxed Solutions with Code Limits” specifies the sand boxed code allowed in the site collection.



If warning limits exceeds, Quota template will send an email. Any change in the template will be affected all the sites in this template. To change the specific site collection quota without changing the quota template we need to follow the steps below,
Navigate to Application Management in Configure Quotas and Locks link Site Collections section.



In Quotas page, in the Current quota template, we have to choose the template quota and specify the Limit site storage and send warning details and Sand boxed Solutions Resource Quota.



Locks will specify administrators to disallow users to view, add, edit, and delete the items from a site. This will be useful while taking backup or migrating activities. We have four lock types are available in SharePoint.

Not Locked is the default scenario users can view or edit the contents. Adding Content Prevented option will add new content that blocked but edit/delete will allowed here. Through Read only option users can only view the content. Adding/editing/Deleting will not be allowed. Through No access users cannot allow to access the site.

We can configure locks by navigating to Application management and select configure quotas and locks. In the quotas and locks page, we need to specify the lock status in “Lock status for this site” option.


Thursday, September 26, 2013

Add File type extensions in SharePoint search

By Adding or Removing File type extensions from the list of file name extension in SharePoint search, Search index will include/exclude the properties from files that we have added or removed. To include a file type in search, we have to check that the file type will support for default or any third party filter-based in SharePoint search.

To add a file name extension to the Manager File Types page,
Navigate to Application Management in SharePoint Central Administration and click on Manage Service Applications link.



In the list of service applications, select Search Service Application.



On the Search Administration page, Click on File Types in Crawling section. We can see the Manage File Types page.



Click on New File Type and in the File Extension box We have to provide the file type to add and click on Ok.

We can the File type extension in the list of file types on Manage File types page.
To remove the file types select the file type in the list of file types and select delete to remove.

Monday, August 19, 2013

Configure Search in cross site publishing

Cross site publishing depends on the search to create a content source and to manage crawling for SharePoint cross-site publishing. In SharePoint, content source will specify crawling in SharePoint farm. By default, after creating the search service application content source will be created in SharePoint farm.

We can re index content source that contains the catalog for changes to be added to the search index. We can re index the catalog content by using the steps below,

Navigate the library/list and go to settings page. Click on Advanced settings in General settings section.

Click on Reindex List link in Advanced Settings Page Reindex List section. And click on Reindex List to confirm to the catalog to be reindexed during the next crawl, click on Ok.


Thursday, May 23, 2013

Error exporting the list named “Announcements” at the URL: Lists/Announcements while saving site as template in SharePoint

One of my client having a requirement that to create sub sites programmatically using SharePoint site template location in solution gallery. We need to create a site with some lists and libraries and save it as site template by navigating to site settings and clicking on save site as template link. By doing this I got an error saying that,
Error exporting the list named “Announcements” at the URL: Lists/Announcements

Tried to rename the list, but got the same error with another list. By Checking the logs I have found the error message below,
SPSolutionExporter: System.NullReferenceException: Object reference not set to an instance of an object.

After some troubleshooting on the issue, I have found that few of custom content types not set to defaults in site and site collection level.

To fix this issue run the following power shell commands to disable and enable the content type feature.

Disable-SPFeature –Identity ctypes –url “Site Collection URL

Enable-SPFeature –Identity ctypes –url “Site Collection URL

After running this power shell commands there is no change in content types. Now we can save the site template with out any issues.

Wednesday, May 15, 2013

SharePoint – Back to basics – Why SharePoint is so famous?

Few of my friends who working on .net and other technologies always asking me questions, why SharePoint is famous?  Why organizations (mid and enterprise size) are preferring SharePoint?
Incredulously, there are now well over 10,00,00,000 global users, Fortune 500 companies using this multi-functional platform. It’s one of Microsoft's biggest businesses and in past 5-6 years Microsoft sold over 36 million user licenses…!!!!  A reasonable follow-up question is what exactly does SharePoint offer to businesses that are so widely sought after? Below are the three brief points can help to understand what exactly in SharePoint platform?

      Collaboration Every business on the planet has an imperative need of slick, collaborative processes for every type of operation. Microsoft’s platform helps not only centralize items of all file-types, but it provides harmonized online and offline ways for multiple users collaborate at once. Regardless of location and devices, we are able to log on to our collaborative, SharePoint-based environment to work with our colleagues on documents, projects, or business processes. Additionally, agenda's, contacts, reports, and pretty much everything else under the sun is all synchronized simultaneously. Users can expect a seamless, versatile experience when working together on online and offline applications.  All these changes are updated in an automated fashion with SharePoint's hosted, online library at the guide.All our data can be edited within our own browser so as to avoid necessary applications on our device. SharePoint offers a way for people to work together; regardless of location.

      Internal Controls Imagine never having to worry about who can access what. Just think on an environment where all of our woes as to who can see our financial reports. SharePoint offers an incredibly observing permission tool, allowing us as a business manager or owner to have constant, unhindered control. The interface of SharePoint is a simple-to-use dashboard of all the tools needed to assign and inherit permissions. When building a new site, SharePoint administrators and members (who are assigned through cloud accounts at the commencement of the online portal) can select not only who can visit the site, but what levels of permission they have; site visitor, contributor, administrator, etc. To take this to an even more incentive's step, you can optimize project management by creating sites for clients to log on to, establish agendas, store information while still preserving your infrastructural integrity by restricting the same clients to their own site through permissions.

      Data Management We can also experience the joy of accessing documents from any location on any device; be it laptop, desktop, phone, or tablet. In previous times, the only way to edit data was through direct file access, normally in an offline environment. Every uploaded file, regardless of type or size, can be categorized within different sites and libraries accompanied with unique workflow traits. SharePoint not only allows as team members or business owners to open up documents via the web, but to also synchronize work through document collaboration. Rather than engage us in the hassle of sending files to others to carry out needed edits.SharePoint's powerful content management platform allows us to build up document management solutions with standard policies within our internal environment. With managed metadata, classification, and flexible architecture, SharePoint helps us to classify documents quickly so people will save time in searching and retrieving information every time they need it. Businesses have literally been able to save millions as a result of SharePoint's search integration.

Friday, March 15, 2013

Share Point 2013- Minimal Download Strategy


Minimal Download strategy:

Minimal Download strategy is enhancement introduced in share point 2013. It improves the rendering performance of a page, when there is large parts of the page don't change. So that it can provide more fluid navigation experience to the user. 

For example navigating from Home page to Shared documents page mainly content Area will be changed. There are just minor changes other parts like top navigation and side navigation (Global navigation and quick launch) as shown in the below images. 

 



As general AJAX case, controls uniquely interface with sever. In SharePoint Chrome controls are with the URL at their core. Minimal Download strategy implements a new download manager that interfaces between the client and server and retrieves data as needed depending on the initial request. each and every controls interfaces with DM to update itself.

In share point page we have mainly two parts chrome and content area.

Chrome defined by master page includes overall layout, core styling, page behavior, location and size of the content area and any common controls like navigation which shares across pages

Content Area defined by content page inherits styles from master page and interacts with the controls on the chrome.

Unlike SharePoint previous versions page will not be loaded every time when user request the page. Here MDS will reduces the amount of data need to be download like css, Scripts. So that the browser parsing and rendering time will be decreased ,performance will be improved and proves smoother transitions.

Minimal download strategy uses start.aspx file pages, with URL will be encoded in '#' mark.When navigating two pages only changes will be downloaded. Download manager is responsible for difference between source and destination pages.

Enable or disable:



In Site features we can activate or deactivate minimal download strategy feature as shown in the image. (Site Action->Site features). By default it will be activated.