April 29, 2009

Service Pack 2 for Office SharePoint Server 2007 and Windows SharePoint Services 3.0 are available

The Microsoft SharePoint Team has just announced the availability of the Service Pack 2 for Office SharePoint Server 2007 and Windows SharePoint Services 3.0

Source: here

Service Pack 2 for Windows SharePoint Services 3.0, x86 & x64: http://www.microsoft.com/downloads/details.aspx?FamilyId=79BADA82-C13F-44C1-BDC1-D0447337051B&displaylang=en

Service Pack 2 for Office SharePoint Server 2007, x86 & x64: http://www.microsoft.com/downloads/details.aspx?FamilyId=B7816D90-5FC6-4347-89B0-A80DEB27A082&displaylang=en

April 16, 2009

Microsoft SharePoint “14” is now Microsoft SharePoint 2010

You have probably seen the news announcement today where we announced the public beta for the new Microsoft Exchange Server 2010. As part of that announcement, we also talked about some of the names for the “14” wave of products including Microsoft Office 2010 and Microsoft SharePoint Server 2010. I wanted to answer some questions that I think will inevitably pop to the top of your mind:

What happened to the Office piece of the name? We love MOSS. . . .

The first thing you’ll notice is that the MOSS acronym goes away with the new name since Office is no longer in the SharePoint official name. No one should worry that SharePoint doesn’t work great with Office 2010 since we removed Office from the name, just like people didn’t worry whether SharePoint was a great portal product when we removed Portal from the 2007 name.

The primary reason why we took Office out of the name - lots of folks associate the name Office with the Office client. We wanted to take the opportunity to reestablish the Office name and brand to be synonymous with the client suite. I say “Give the people what they Want” so everyone should immediately think of Microsoft Office = Office apps.

Don’t try to acronym Microsoft SharePoint Server to MSS since MSS is already taken by Microsoft Search Server. Just remember, SharePoint is SharePoint is SharePoint.

What about Windows SharePoint Services?

When you read through the announcement, you may be wondering what happened to Windows SharePoint Services. While we didn’t announcement anything new for WSS, and I want to assure you that we’re definitely working on a new v4 version of the product. It’s too early to drill into any of the details but WSS is getting a lot of new features and will be a great release. We’ll talk more about WSS at a later date.

So, what was announced?

Here are my key takeaways from the interview with Chris Capossela:

• Exchange 2010 will lead the way for the 2010 (previously referred by its codename “14”) wave of technologies and it will be available in the second half of 2009.

• Using Office Web applications, customers will be able to create, edit and collaborate on Office documents through a browser.

• IT professionals will be able to choose to either deploy and manage on-premises or hosted as a service.

• For developers, we are working on Open APIs, deep support for industry standards and developer tool support with Visual Studio 2010.

Thomas Rizzo
Sr. Director
SharePoint


Source: http://blogs.msdn.com/sharepoint/archive/2009/04/14/microsoft-sharepoint-14-is-now-microsoft-sharepoint-2010.aspx

April 15, 2009

How to create or copy permission levels programmatically

The class representing the permission level in SharePoint is the SPRoleDefinition one: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.sproledefinition.aspx
To modifies the permissions, you have to use the BasePermissions property (
SPBasePermissions enumeration): http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.sproledefinition.basepermissions.aspx

Hereunder is the Permission Levels page of a SharePoint site before:




The following piece of code shows how to create a new permission level:

using (SPSite siteCollection = new SPSite("http://myserver:38000/sites/Test"))
{
    using (SPWeb site = siteCollection.OpenWeb(siteCollection.RootWeb.ID))
    {
        try
        {
            site.AllowUnsafeUpdates = true;
 
            // This code adds a new permission level
            SPRoleDefinition newRoleDefinitionTest = new SPRoleDefinition();
            newRoleDefinitionTest.BasePermissions = SPBasePermissions.ViewListItems | SPBasePermissions.OpenItems | SPBasePermissions.EditListItems | SPBasePermissions.AddListItems | SPBasePermissions.ViewVersions;
            newRoleDefinitionTest.Name = "Test";
            newRoleDefinitionTest.Description = "This is a permission level created for testing.";
            site.RoleDefinitions.Add(newRoleDefinitionTest);
 
            site.Update();
        }
        catch(Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        finally
        {
            site.AllowUnsafeUpdates = false;
        }
    }
}

The following piece of code shows how to copy a permission level (in this case the permission level of the Reader role) and to add two new permissions to it:

using (SPSite siteCollection = new SPSite("http://myserver:38000/sites/Test"))
{
    using (SPWeb site = siteCollection.OpenWeb(siteCollection.RootWeb.ID))
    {
        try
        {
            site.AllowUnsafeUpdates = true;
 
            // This code copies the Read permission level (Reader role) and adds AddListItems and EditListItems permissions
            SPRoleDefinition roleDefinitionRead = site.RoleDefinitions.GetByType(SPRoleType.Reader);
            SPRoleDefinition newRoleDefinitionAdvancedRead = new SPRoleDefinition(roleDefinitionRead);
            newRoleDefinitionAdvancedRead.BasePermissions |= SPBasePermissions.AddListItems | SPBasePermissions.EditListItems;
            newRoleDefinitionAdvancedRead.Name = "Advanced Read";
            newRoleDefinitionAdvancedRead.Description = "This the Read permission level + AddListItems + EditListItems";
            site.RoleDefinitions.Add(newRoleDefinitionAdvancedRead);
 
            site.Update();
        }
        catch(Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        finally
        {
            site.AllowUnsafeUpdates = false;
        }
    }
}

Hereunder are the Permission Levels page and the Edit Permission Level pages after:





April 10, 2009

Planning worksheets for Office SharePoint Server 2007

Here is the MSDN link where you can find all planning worksheets for Office SharePoint Server 2007: http://technet.microsoft.com/en-us/library/cc262451(TechNet.10).aspx

April 07, 2009

April 06, 2009

SharePoint Designer 2007 is now FREE

"SHAREPOINT DESIGNER 2007 IS NOW FREE! Be sure to watch the video in the "Related Resources" below to learn more about details and future direction. Office SharePoint Designer 2007 provides the powerful tools you need to deliver compelling and attractive SharePoint sites and quickly build workflow-enabled applications and reporting tools on the SharePoint platform, all in an IT-managed environment."

Download here

How to access the User Information List programmatically

To acces the hidden User Information List list of a SharePoint site (only accessible by administrators), the best way is to use the SiteUserInfoList property of the SPWeb object as in the following example:

using (SPSite mySiteCollection = new SPSite("http://myserver/myspsite"))
{
    using (SPWeb mySite = mySiteCollection.OpenWeb(mySiteCollection.RootWeb.ID))
    {
        SPList usersList = mySite.SiteUserInfoList;
    }
}

Note that there is another way to acces this list but I don't recommend it because it can throw an exception in a couple of situations:

using (SPSite mySiteCollection = new SPSite("http://myserver/myspsite"))
{
    using (SPWeb mySite = mySiteCollection.OpenWeb(mySiteCollection.RootWeb.ID))
    {
        SPList usersList = mySite.Lists["User Information List"];
    }
}

How to install Windows SharePoint Services 3.0 SP1 on Vista x64/x86

Here is an interesting link from Bamboo Solutions explaining how to install WSS 3.0 SP1 on Vista: http://community.bamboosolutions.com/blogs/bambooteamblog/archive/2008/05/21/how-to-install-windows-sharepoint-services-3-0-sp1-on-vista-x64-x86.aspx