Search This Blog

Total Pageviews

Sunday, October 31, 2010

For lists and libraries with large numbers of items, users can access the items with a mix of views and search. The following are some suggestions for views that work well with an indexed column:

Recently changed: To create a view of only the items that have changed in the past week, you can index the Modified column and then apply the filter Modified (Indexed) is greater than [Today]-7.

New items: To create a view of only those items that were added in the past week, you can index the Created column and then apply the filter Created is greater than [Today]-7.

My items: To create a view of only those items that you added, you can index the Created By column and then apply the filter Created By is equal to [Me].

Due today: For lists or libraries with a Due Date column, you can index that column and then apply the filter Due Date is equal to [Today].

Discussion board updates: To create a view of only the discussions that were updated in the past month, you can index the Last Updated column on a discussion board, create a new Subject view, and then apply the filter Last Updated is greater than [Today]-30.

People and Groups: If you have a lot of people visiting your site, you can improve the performance of the All Groups and All People pages by indexing the Content Type column for the User Information List.

Even if only a few people appear on the All People page, many people visiting the site will result in inactive users being written to the User Information List, which can still affect the performance of this list.
Find links to more information about creating or changing views and about formulas and functions that you can use to filter views in the

Note: Because creating views that use a column index correctly is more complicated for large lists and libraries, you might want to remove the Manage Personal Views permission from contributors for a large list or library. By removing this permission, you can prevent users from creating a view that spans all of the items and that might adversely affect the performance of the rest of the site.

There are several study guides about now for example: http://blog.beckybertram.com/Lists/Exam%2070573%20Study%20Guide/AllItems.aspx and http://techtrainingnotes.blogspot.com/2010/05/sharepoint-2010-part-1-preparing-for-70.html, but I wanted to record the articles and blogs etc I’d used.

To help I’ve copied in the Microsoft learning content from http://www.microsoft.com/learning/en/us/exam.aspx?ID=70-573&locale=en-us#tab2

MSDN walkthrough for basic site definition: http://msdn.microsoft.com/en-us/library/ee231583.aspx
MSDN walkthrough for content in site definition: http://msdn.microsoft.com/en-us/library/ff189392.aspx
Manage SharePoint object life cycle by using the Dispose API

The most common issue in alert is the user will get the initial email, but will not get when changes are made to the list where he configured the alert. Check the following settings in order and ensure that it is correct.

1. Is it an upgrade from V2 to V3? If yes, check the upgrade section at the bottom of this page.

2. If this is a new install of V3 (WSS or MOSS), then do the following

a. Create a new web app and see if the alerts work there. If yes, you can move the content db of the non-working site to this one. If customer is not ready to do that, then try the following.

b. Open the command prompt and go to the 12\Bin folder. Run this command and see whether alerts are enabled for the web application.

Stsadm.exe-o getproperty -url http://problemsite -pn alerts-enabled

The expected output is . If you don’t get this, run the following command to change the value.

If the property is Yes and still the alerts are not sent, toggle the property from Yes to NO
and then from No to Yes. This may delete all the existing alerts and warn the customer
about this.

c. Check the property job-immediate-alerts schedule through command prompt. Run this command from the 12\bin folder. If we have issues with Scheduled alerts like daily or weekly, then check the property job-daily-alerts and job-weekly-alerts.

d. Confirm the above step through the UI. Central adminàOperationsàTimer Job Definitions and ensure that a job named Immediate Alerts is present for the web application.

e. Configure the alert for a user in a list. Instead of typing the domain name\ user name, type the email address of the user and see if he gets initial email. Then make a change to the list and see whether he gets the mail related to the change.

f. If he gets the alert as expected, then create a new alert and this time select the user from the people picker or type the domain name\user name.

g. If the alert is not working after doing the above step, then check the ImmedSubscriptions / SchedSubscriptions table of the content db of the web application depending on the type of alert and see a new record is added and ensure that the email field for the user is populated correctly. If not, check whether the email address is present in the user’s profile through the SSP admin page.

h. The initial alert is not security trimmed. So irrespective of whether the user has privileges on the list or not, the initial alert will be sent. If the user is not getting alert for any changes, then check whether the user has Read permission on the list.

i. This also happen if there is some issue in their mail provider (third party email providers. In this case, capture the ULS log with all information events in the verbose mode and check for lines which says Alert has been sent.

j. Email enabled security groups can also be used for configuring alerts. If the changes are not notified to the members of the group, check whether the group is added to the list with minimum Read permission. Also some email providers block email groups if the number of members are more than certain number.

k. Open SQL Query Analyzer; connect to the content database of problematic site. Run the following query.

Select * from timerlock

This server is responsible for processing the timer service. You can follow this KB –
http://support.microsoft.com/kb/934838 to sync the accounts and password across the
Farm

The internal working mechanism of how an alert should work in v3:

The EventCache table records the SQL level events as they occur and the EventData and ACL columns are not NULL for an alert event. There is an alerts timer job that runs periodically to process the records in the EventCache. After the alerts timer job runs, it nulls out the EventData and ACL columns. Then, it will log an event into the EventLog table. So check the following in SQL.

select * from eventcache where EventData is not null

This will output all of the subscriptions which have not been processed yet. We can see if there are some alerts which are not processed.

select * from eventlog where ListID = 'xxx'

You can get the ListID from the EventCache table by running

Select * from EventCache and check the documents which correspond to the problematic list.

If you cannot find any record, perform the following tests:

Run filemon on the MOSS server which is responsible for the timer service and check if the Timer
service picks up the alert template during the whole process.

Upload a new document to the document library which is supposed to have the alerts. Begin running
the filemon and analyze the logs.

p. select * from eventcache order by EventTime DESC

Check if the latest log is the one corresponds to your uploaded document. Make sure the EventData and ACL columns are not NULL.

After 5 minutes or more minutes, check the EventCache table again to see if the EventData and ACL columns are NULLed.

If so, stop filemon after the EventData and ACL columns are NULLed . Review log.

Upgrade from V2 to V3

1. Check this KB - http://support.microsoft.com/kb/936759/en-us

2. If no alerts are getting triggered even for a new web app, then run the Psconfig Wizard without changing any options.

The timer job displayed an older date because the upgrade job was hung

3. If the alert works on new web apps, then you can move the site collections from the upgraded web app to the newly created web app through stsadm –o backup / restore or stsadm –o export / import. This action will be useful only if you have fewer site collections and this is only a workaround.

Case Study

ERROR MESSAGE:
================
Running the psconfig wizard fails immediately with "Unable to upgrade SharePoint
Products and technologies because an upgrade is already in progress"
No psconfig process in task manager

CAUSE:
=======
The timer job displayed an older date because the upgrade job was hung

Monday, October 4, 2010

When you create a sharePoint Publishing site by defauly you can able to see only 2 sub site templates avaliable, but you can able to configure what are the types only site owners can create as a sub site.