Archive for October, 2008

Audience Targeting

Posted: October 23, 2008 in Audience Targeting

By using target audiences, you can display content such as list or library items, navigation links, and entire web part to specific groups of people. This is useful when you want to present information that is relevant only to a particular group of people.
Any item in a SharePoint list or library can be targeted to specific audiences.
In addition, you can target site navigation links to audiences. Targeting the links simplifies the users’ experience, because they see only the navigation links that are relevant to them.

Target a navigation link to an audience

  • On the Web page that contains the site navigation, on the site actions menu, click Site Settings and then click Modify Navigation.
  • On the Site Navigation Settings page, click add link
  • In the Navigation Link dialog box, type the title and URL of the link, and then add one or more audience names to the Audiences list.

Target a Web Part to an audience

  • On the Web page that contains the Web Part, on the site actions menu, click Edit Page.
  • On the Web Part, click the edit menu , and then click Modify Shared Web Part.
  • Under Advanced, add one or more audience names to the Target Audiences list.

For more Info see http://office.microsoft.com/en-us/sharepointserver/HA101690531033.aspx


You will get this error whenever you try to update a list item.

“The security validation for this page is invalid. Click Back in your Webbrowser, refresh the page, and try your operation again.”

The solution will be working fine. And if you try running the same application after some time it will give the same error. If you rebuild the solution and GAC it again, the application will work fine. Check this post also

You may get this error because you are updating a list item by object model.To overcome this

  • Goto CentralAdmin ->Application Management -> Web Application General Settings
  • Select the appropriate web application
  • Under Web Page Security Validation section select change Security validation to off.

Now you can see the application running properly.

But aware this is not a  suggested solution.

SharePoint Site Definitions

Posted: October 21, 2008 in Site Definition

Why You Need Them and How to Use Them

The site definition process in SharePoint is complex, but very flexible. Techniques such as “ghosting” can save you a lot of server space and beef up performance. But you need to understand when and how to use site definitions in order to avoid unintended consequences down the line.

SharePoint makes developing templates easy. You simply create a site the way that you want it and then save it as a template, quickly and easily freezing the site setup into a reusable stamp that you can then use to create other sites. However, user templates in SharePoint can lead to performance problems and may not be the best approach if you’re trying to create a set of reusable templates for an entire organization. Instead, you should use site definitions to create templates that form the basis for creating new sites. The site definitions approach doesn’t suffer from the same limitations as user templates.

Understanding Ghosting and Unghosting before diving into site definitions it’s important to understand one of the inner workings of SharePoint. When you create a new site, SharePoint doesn’t really copy the pages for that site— default.aspx and so on—into a new database table or directory. These files exist once and only once on each of the front end Web servers. Instead, SharePoint creates a reference to those files in the database tables that define the new site, a process called “ghosting.” The outcome is that the site appears to have its own unique pages, but the pages are actually shared across all sites that use the same definition. This has two distinct advantages over copying the files to each site individually when the site is created. First, it saves space. If you have a thousand sites, rather than having a thousand copies of a file you still have only one. Second, it improves performance. Instead of having to load and cache a thousand pages from the database, the server needs to cache only one copy from the file system, which can improve performance by freeing cache memory for other purposes. Loading the file from the Web server’s local file system improves performance by eliminating the overhead of the database call and the network traffic to the database.

One interesting benefit of this approach is that when you make a change to one file on the file system, that change takes effect across all the sites that have been created. All in all, the process of ghosting is a huge benefit to SharePoint.

However, there are some limitations.

SharePoint can’t ghost every page. Some operations, such as editing a page in Designer, cause SharePoint to “unghost” dependent pages for the site. Because ghosting requires all ghosted pages to be exactly the same across all the sites that share them, SharePoint unghosts, or creates a copy of the page in the database, whenever a ghosted page changes, for example, when someone performs an edit operation on the page. Unghosting lets users customize their own sites without impacting other users who might be using the same file. Unfortunately however, unghosting also has a negative performance impact, and makes global changes, such as applying corporate branding to the entire collection of sites far more difficult. Unghosting is the primary reason why efforts to leverage the power of site definitions to change the branding of an entire site may not work as intended.

Quiescing the Server Farm

Posted: October 21, 2008 in Quiescing

This is a feature in MOSS that enables you to gradually shut down the farm for maintenance. This feature is called “Quiescing

Quiescing is the process of gradually bringing long-running applications of a resource offline without incurring data loss. It has been introduced in Microsoft Office servers for 2007.”
So if you need to perform maintenance on a farm, you “quiesce” it. IMHO, something like “Take Farm Offline” would have been a better choice.

Why should you use the quiesce feature?

  • Simply put, to prevent data loss.

How do you quiesce the farm?

  • From Central Administration, Operations, select “Quiesce Farm.”
  • Enter the number of minutes in which you want the farm to be fully quiesced and click “Start Quiescing.”
  • The page will display the quiescing status

Quiescing has three states: normal, quiescing, and quiesced.

  • Normal is the active state in which the farm handles all requests that come into it.
  • Quiescing is the state in which the farm only handles requests from existing sessions
  • Quiesced is the state in which the farm does not allow any new sessions to start.”

How do you “un-quiesce” (reset) a farm:

  • From Central Administration, Operations, select “Quiesce Farm.”
  • Click “Reset Farm.” Why couldn’t they have come up with an obscure word for “reset?”

To remove a column from newform.aspx if you dont want the user to enter the values for it explicitly then follow the steps in the list for which u need to customize the form.

  1. Go to Settings -> List Settings -> Advanced Settings
  2. Change Allow management of content types to yes
  3. Now in settings you will get a heading Content Types. Clicking on this displays all the columns that are in that list.
  4. Click on which you want to change the properties.
  5. In columns settings choose the appropriate option.(In this case hidden).

Click OK and if you view the Newform.aspx the column will be hidden.