ASPHostCentral.com Sharepoint 2010 Hosting BLOG

BLOG about the newest Sharepoint 2010 Hosting Product

Sharepoint Foundation 2010 Hosting:: Solving the SharePoint Health Analysis Issues

clock March 31, 2011 09:53 by author Administrator

The SharePoint 2010 Health Analyzer is a great way of getting information about the state of your SharePoint farm. It checks things including disk space and database fragmentation and other security, performance and configuration issues. If the health analyzer finds issues you are presented with a message when you browse to the Central Administration site. There is also a link to find out details of all problems that were found.


One thing to note, however, is that it can take a few days or weeks before all the health rules are run on the default schedules. When building a new farm it can be useful to get instant feedback, so you can make sure the new installation is in a healthy state. Did you remember to remove the farm account from the administrators group after setting up User Profile Synchronization? I find this helpful as a consultant as I can rectify issues such as disk space or other problems while I’m on-site with a client and avoid having to return if something is missed.

To get instant feedback you can run all the health analysis jobs immediately through PowerShell. Note that this will place some load on your system so running this on a live environment should be done with caution but in the case of a fresh build with no users that is unlikely to be an issue.

To run all the jobs immediately fire up a SharePoint 2010 Management Shell as a farm administrator and drop in the following PowerShell:

$jobs = Get-SPTimerJob | Where {$_.DisplayName -match "Health Analysis Job"}
foreach($job in $jobs) {
  Write-Host "Running" . $job.DisplayName
  $job.RunNow()
}

You should now see any problems appear in the Health Analyser screen, ready for you to address while you are on site before the client sees an angry red message when they use Central Administration the next day. Note this can take a few seconds to update so check the timer job history or the modified column to ensure the latest results are showing.


Once you have fixed the issues you can either run the PowerShell again or check the rules individually using the Reanalyze Now button that is displayed within each problem.
Missing server side dependencies.


Explanation: [MissingWebPart] WebPart class [8d6034c4-a416-e535-281a-6b714894e1aa] is referenced [6] times in the database [AdminContentDB], but is not installed on the current farm. Please install any feature/solution which contains this web part. One or more web parts are referenced in the database [AdminContentDB], but are not installed on the current farm. Please install any feature or solution which contains these web parts.

Solution: Following the steps in the article Missing Server Side Dependencies – 8d6034c4-a416-e535-281a-6b714894e1aa to browse to the SearchAdministration.aspx and SearchFarmDashboard.aspx in Central Adminstration and perform an iisreset seemed to fix the issue for me.

The server farm account should not be used for other services.

Explanation: DOMAIN\spfarm, the account used for the SharePoint timer service and the central administration site, is highly privileged and should not be used for any other services on any machines in the server farm. The following services were found to use this account: User Profile Synchronization Service(Windows Service)

Solution: Unfortunately I don’t have an easy fix for this one (assuming it is referring to the User Profile Service – any other services should not be running as the farm account). Spence and Spence on TechNet both indicate the farm account must be used to run the User Profile Synchronization service application. Changing this to any other managed account seems to break the UPS app so if you know how to avoid this please let me know.

Verify that the Activity Feed Timer Job is enabled

Explanation:The newsfeed displayed on My Site and Profile pages uses the Activity Feed Timer Job. Without this timer job, no newsfeed will be available on My Site and Profile pages. This also applies to any third-party product that uses this newsfeed.

Solution: Start the User Profile Service Application – Activity Feed Job from the Monitoring > Job Definitions page in Central Administration.

As a side note some of the common non-trivial messages are:

 



Sharepoint Foundation 2010 Hosting :: How To Create Status Indicators in Sharepoint 2010

clock March 29, 2011 08:01 by author Administrator

Status Indicator is a report type, where it shows and compares the actual performance of particular measure with goal value. Without doing any calculations, you can know the performance of a measure with good status indicator. You can know whether measure results are on target or off target. This post explains how to create a status indicator in SharePoint 2010. 

Status Indicator shows name, results and icon. It provides a quick information, green icon indicates good performance, Red icons flags the problem areas and yellow icons warn of potential problems. The typical status indicator looks as follows


Creating status indicator

status indicator is an item in status list in SharePoint. You can create a status list in two ways

1. Create a status list
2. Create a web part with status list

Creating a Status List

Create a Status List in the Business Intelligence Center site in SharePoint. You can add status indicator once you create a list. Steps to create a list

1. click Site Actions, and then select View All Site Content, click create option as shown below


2. On Create page, click the Status List icon


3. Enter name and description for Status List as shown below


Create a Web Part with Status List, take these steps

1. Click Dashboards from BI site quick launch panel

2. Click Documents tab in the Library Tools group

3. Click New Document, and then select Web Part page with Status List


4. Select the layout from the list


Add a status indicator to a Status List

You have to create a Status List to create a status indicator. Click new on Status List tool bar as shown below


Select the indicator type from the available options, in this example I am using SharePoint List based Status Indicator

SharePoint List based Status Indicator

To create a new status indicator that is based on a SharePoint list

In the list url box, enter the URL of the list or library


2. Select the view that you want items in the status indicator from view box

3. select the calculation method that you want to use in the Status Indicator

Calculation options

1. Percentage of list items in the view where you can select the criteria
2. select the column and comparison operator from the drop-down list
3. Type the value that you want to use for comparison in the text box

you can either select Number of list items in the view as shown in the above dialogue

4. In the Status Icon Rules section, do the following



From the Better values are drop down list, select Higher to have SharePoint change icons when increasing values meet or exceed goal.

In the Display when value has met or exceed goal box, type the goal value. when the indicator value reaches this goal, SharePoint changes the icon to show the performance on target

In the Display when value has met or exceeded warning, type the value at which performance is unacceptable.



Sharepoint 2010 Hosting :: How to program Managed Metadata columns in Sharepoint 2010?

clock March 21, 2011 08:43 by author Administrator

You can provision managed metadata column into the content type.

You need to add the “Metadata” column into the site columns and content type using element xml file, and also need to connect the field to metadata column in the feature activation.

Here is the solution:

1.    You need to add a new field element of the type “TaxonomyFieldType”. 

<xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
 <Field ID="{46138ADB-1778-4E05-8371-114006F725A0}"
    Type="TaxonomyFieldType"
    DisplayName="Locations"
    ShowField="Term1033"
    Required="TRUE"
    EnforceUniqueValues="FALSE"
    Group="_Custom"
    StaticName="Locations"
    Name="Locations"
     />
</Elements>

2.    Add this filed to the content type, just need to add a new “FieldRef”

<FieldRef ID="{46138ADB-1778-4E05-8371-114006F725A0}" Name="Locations"/>

3.    Now we have to connect this field to managed metadata service(MMS).

For this we need to create an event receiver for the feature. Right click on the feature  and select “Add event receiver”.
Uncomment the “feature activate” code and replace it with the following code.  

public override void FeatureActivated(SPFeatureReceiverProperties properties)
 {    
              SPSite site = properties.Feature.Parent as SPSite;    
             Guid fieldId = new Guid(“{46138ADB-1778-4E05-8371-114006F725A0}"   
             if (site.RootWeb.Fields.Contains(fieldId))
             {
                       TaxonomySession session = new TaxonomySession(site);        
                       if (session.TermStores.Count != 0)
                       {            
                            var termStore = session.TermStores["Managed Metadata Service"];            
                            var group = termStore.Groups.GetByName("Locations Group");            
                            var termSet = group.TermSets["Towns"];                    
                           TaxonomyField field = site.RootWeb.Fields[fieldId] as TaxonomyField;           
                           field.SspId = termSet.TermStore.Id;            
                           field.TermSetId = termSet.Id;            
                           field.TargetTemplate = string.Empty;            
                           field.AnchorId = Guid.Empty;            
                           field.Update();        
                      }   
                }
} 

This method will check if the field has been deployed. We used Guid to retrieve the filed as defined in the XML.  Your term store group definition should look like this.                              

If it is different then you need to change the “group name” and “term set” name in the feature activation according to your MMS environment.

Now you deploy your content type and can test it by creating a new list from that content type.

The result with the metadata column is shown in the below picture.

 



Sharepoint 2010 Hosting :: Installing and Configuring Features in Sharepoint 2010

clock November 25, 2010 03:01 by author Administrator

<!--[endif]-->

Features are SharePoint Server 2010–specific declarative (XML) programming elements. Features configure, associate, define, create, and copy.

Features are most commonly used for the following:
- To define the columns that make up list types and the fields that the columns are based on
- To copy Web parts and master pages to their respective galleries
- To associate Visual Studio workflows with a list or site
- To modify and extend the configuration of the SharePoint Server 2010 user interface
- To serve as a control panel that allows code and configuration changes to be turned on and off in the browse

Note: Features can affect four different scopes: farm, Web application, site collection, and site. Site-scoped and site collection–scoped features can be controlled by information workers, which allows farm administrators to delegate responsibility for them


Feature Location:

Features are XML files and must be contained in a folder in C:\Programs Files\CommonFiles\Microsoft Shared\Web Server Extensions\14\TEMPLATE\FEATURES

Basic Know-how:

Features are generally composed of two types of files: a feature header file and one or more element files. Because the feature files are simply XML and because they are located in TEMPLATE\FEATURES, they can be easily inspected by browsing to the appropriate folder and examining the contents of the files. Feature header files are generally named Feature.XML

Feature Life Cycle

There is a four-stage feature life cycle
- Features are installed, activated, deactivated, and uninstalled
- Features can be manipulated with Stsadm.exe, Central Administration,and Windows Power Shell
- Features are deployed using solution packages with either full-trust or sandboxed deployment mechanisms

How to install a Feature:

Features are deployed with solution packages and should be automatically installed when deployed. Although it is uncommon to have to manually install features, you should know what the installation process does to install features

To install a feature, the necessary feature files must already be deployed to the TEMPLATE\FEATURES directory on all servers in the farm. Installing a feature simply makes it available to be activated. Any installed feature that does not have the property Hidden=True can be seen and activated through the SharePoint Server 2010 user interface

Features must be installed using either Stsadm.exe or Windows Power-Shell.

Stsadm.exe is located in C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN. To install a feature using Stsadm.exe, use the following
command:

stsadm.exe -o installfeature {-filename | -name } [-force]

To install a feature using Windows PowerShell, use the following command:

Install-SPFeature -Path [-AssignmentCollection ] [-Confirm []] [-Force ] [-WhatIf []] []

How to Activate/Deactivate features:

To activate or deactivate a farm-scoped feature using Central Administration, do the following:

- Browse to Central Administration, System Settings, Manage Farm Features
- Click either the feature’s Activate or Deactivate button
- To deactivate a feature, confirm the deactivation

Activating Web application–scoped features in Central Administration has changed considerably and is now accomplished using the new management Ribbon

To activate a Web application–scoped feature, do the following:
- Browse to Central Administration, Application Management, Manage Web Applications
- Click the row that contains the Web application that the feature should be activated on
- Click the Web Application tab in the management Ribbon
- Click the Manage Features button in the management Ribbon
- Click either the feature’s Activate or Deactivate button
- To deactivate the feature, confirm the deactivation

Activating and Deactivation Features in Site Collection

If a feature has been installed to the farm and scoped to a site collection, a site collection administrator can then either activate or deactivate the feature. To activate or deactivate a site collection–scoped feature, do the following:
- Open the appropriate site collection in the browser
- From the Site Actions drop-down menu, click Site Settings
- Click the Site Collection Features hyperlink in the Site Collection Administration group,If the Site Collection Administration group contains a Go To Top Level Site Settings hyperlink, click on it to go to the top-level site, and then click the Site Collection Features hyper-link.
- Click the Activate or Deactivate button
- To deactivate a feature, confirm the deactivation

Activating and Deactivation Features in a Site

If a feature has been installed to the farm and scoped to a site, a site owner can activate and deactivate the feature. To activate or deactivate a site-scoped feature, do the following:
- Open the site in the browser.
- From the Site Actions drop-down menu, click Site Settings
- Click the Manage Site Features hyperlink in the Site Actions group
- Click the Activate or Deactivate button
- Confirm the deactivation

Activating and Deactivation Features using STSADM.EXE

Features can also be activated and deactivated from the command line using Stsadm.exe. Activate or deactivate features using the appropriate stsadm.exe command:

stsadm.exe -o activatefeature {-filename | -name | -id } [-url ] [-force]|

Or

stsadm.exe -o deactivatefeature {-filename | -name | -id } [-url ] [-force]

Activating and Deactivation Features using Windows PowerShell

Windows PowerShell uses a slightly different naming system than Stsadm.exe and
the user interface. Instead of using the activate and deactivate parameters, Windows PowerShell use the verbs Enable and Disable. To activate (enable) or deactivate(disable) features with Windows PowerShell, use the appropriate cmdlet:

Enable-SPFeature -Identity  [-AssignmentCollection ][-Confirm []][-Force ] [-PassThru ] [-Url ][-WhatIf []] []

Or

Disable-SPFeature -Identity [-AssignmentCollection ][-Confirm []][-Force ] [-Url ] [-WhatIf []][]

 

 



Sharepoint 2010 Hosting :: Working with Claim-based Authentication

clock October 21, 2010 07:22 by author Administrator

Today when duplicity problem has increased a lot, authentication has become a must. Authentication is the process of determining if someone is who they claim to be. It answers the question "Who is this guy really?" Taking advantage of SharePoint Server 2010 Claims Based Authentication feature may help you curb this duplicity issue. Even if you are a SharePoint Foundation 2010 user, you can enjoy the same feature to authenticate the user identity.

In case you are looking for a place to host your Enterprise Wiki Sharepoint site, please have a look at ASPHostCentral.com. With the lowest and most affordable Sharepoint Server 2010 hosting price, you can maximize the use of this template for the benefits of your company/organizations


Most enterprise applications need some basic user security features. At a minimum, they need to authenticate their users, and many also need to authorize access to certain features so that only privileged users can get to them. Some apps must go further and audit what the user does. On Windows Azure, these features are built into the operating system and are usually quite easy to integrate into an application. By taking advantage of Windows integrated authentication, you don't have to invent your own authentication protocol or manage a user database. By using access control lists (ACLs), impersonation, and features such as groups, you can implement authorization with very little code. Indeed, this advice applies no matter which OS you are using. It's almost always a better idea to integrate closely with the security features in your OS rather than reinventing those features yourself.


In the real world, we face the following challenges:
* Privacy regulations and other pieces of legislation are impacting what kind of information we are allowed to capture and store about users, so in some cases we can't just demand that people give us all of their personal details.
* Businesses want to interoperate with other businesses, and government organizations want to provide more integrated services to citizens. However, different systems use different authentication systems and businesses want to integrate in a secure, legally compliant manner.
Consequently, claims based authentication in SharePoint Server is designed to address the two challenges mentioned above. Claims based authentication addresses privacy and other compliance concerns by requesting less specific, less personal information about people, and by trusting other parties or systems to do the "proof of identity" check. Claims based authentication addresses integration of different systems by allowing communications using open standards, and by providing a platform for developing more specialized 'identity connectors' between systems.


How to implement Claims based authentication?

The claims-based authentication is implemented in the following way:
* From a developer's point of view, the platform that Microsoft is providing is called the Windows Identity Foundation. Earlier, it was called the Geneva framework. It provides a programming library suitable for building claims-aware applications. This library is also used by SharePoint 2010
* Active Directory Federation Services implement services to create, accept, and transform tokens that contain claims.
* Cardspace provides a user interface for users to select which "identity card" they wish to use for a particular system
Claims based authentication won't address the lifecycle management of identity information.
Claims based authentication may let our system know that a user is a contractor from a partner company, but it alone won't let us specify a rule that says "all of my company's financial spreadsheets must not be seen by contractors". Not only does claims based authentication not provide this capability, but neither do the role-based access controls provided by SharePoint. In fact SharePoint's role-based access control model itself is too limited to address this. It still needs substantial improvements.
Claims based authentication feature was not available in MOSS 2007; SharePoint Server 2007 uses a native Active Directory-based authentication between machines and systems. In addition to claims based authentication, take advantage of other exclusive features in SharePoint Server 2010 and also enjoy some free SharePoint templates or web parts that come with SharePoint products.



Sharepoint 2010 Hosting :: What’s the difference between a Discussion Board and a Blog?

clock October 19, 2010 06:14 by author Administrator

While consulting with clients new to SharePoint and how the robust functionality can empower their organization’s collaboration efforts, we are typically asked this question:  “What’s the difference between a discussion board and a blog?”

Well, that’s a very good question to ask and sometimes a little difficult to explain.  Why?  It’s mainly due to the fact that the technical functionality between a discussion board and a blog are essentially the same.  Both provide a platform for a user or users to post a message that other users can respond to.   However, there are three core differences that separate the two within SharePoint

Organization – A discussion board’s posts are typically organized by a topic.  The blog on the other hand is organized in a chronological format, with the posts assigned to a category

List vs. Site – In SharePoint specifically; a discussion board is a preconfigured List template.  On the flip side of that coin, a blog in SharePoint is actually an entire Site template.  The blog being a site allows a great deal more functionality, while the discussion board is limited because it’s only a list


The main difference:

Purpose
– the philosophical purpose of a discussion board and Blog are very different from each other

A discussion board is used to solicit feedback from others and is a great tool for generating dialogue between users in a group.   Anyone can post a message and users have a platform to respond to each other in a constraint free environment.  We typically think of a discussion board as a conversational view of an email (think ‘Reply All’ here).

A blog however is intended for a specific person or a specific group to post ideas, thoughts, and articles.  Generally the posts are considered expertise (although an occasional rant) and visitors can comment on them.  A blog’s purpose isn’t to start dialogue, but is meant to deliver a message

Here’s an example that will put it in perspective

Scenario: We want to find out what my team thinks is the best place to have lunch on Friday

Discussion Board or Blog:  Discussion Board



Scenario: We want to explain why Just Fresh is the best place for team lunches on Fridays

Discussion Board or Blog:  Blog

Conclusion

As you can see, the discussion board and blog have some major conceptual differences between them.  Although the core functionality is similar (topic, post, comments) what sets the two apart is what you want to accomplish with them.  If you want to have communication between users about a topic, utilize a discussion board.  If you have a topic that you want one user to communicate to users, utilize a blog.  In the next article we will review the blog Site template in SharePoint and how it can be used in organizations