Tuesday 31 May 2011

Migrate MOSS 2007 to SharePoint Server 2010


Microsoft recently released the Beta version of SharePoint Server 2010. Microsoft claims that migrating from SharePoint 2007 to 2010 is a easy and straightforward, however, I remember when migrating from SharePoint 2003 to 2007 the process was painful and difficult and there were several  incompatible elements that had to be dealt with. So I approached the migration to Sharepoint 2010 from MOSS 2007.
The sample intranet site presented in this article is hosted on Windows Server 2008 R2 64-bit (which is required for SharePoint 2010) with SQL 2008 Express 64-bit.
First, let’s look at the SharePoint 2007 site we migrate. For this demonstration I created a simple MOSS 2007 Enterprise environment based on the Collaboration template, which contains some generic web parts we’ll test on SharePoint 2010, Document Center and Search Center. I setup and double checked the search, because I wonder if the migrated SharePoint would be able to use the search database crawled in the previous, 2007 version of SharePoint. Search is an important issue for migrating Sharepoint installations with large amount of data where a full crawl of the content may take weeks.
The Site in MOSS 2007
Now, install SharePoint Server 2010 right on the existing installation. In the Setup window, we can view the server requirements, installation guide etc. We will skip this part and proceed straight to the Installation.
Installation of Share Point 2010
First we need to install software prerequisites. We may already have all required components since we are already running MOSS 2007, but to be sure, we’ll go select this option.
The preparation tool window that launches checks our server for the required components, and installs them if needed. The components that will be updated are:
  • Application Server Role and IIS Role
  • SQL Server 2008 Native Client
  • Microsoft “Geneva” Framework Runtime
  • Microsoft Sync Framework Runtime v1.0
  • Microsoft Chart Controls for Microsoft .NET Framework 3.5
  • Microsoft Filter Pack 2.0
  • Microsoft SQL Server 2008 Analysis Services ADOMD.NET
Let’s open the preparation tool. After reading the short tool description and accepting the terms, the preparation tool will start updating the server immediately.
SharePoint Server 2010 Preparation Tool
After succesfull configuration, the summary screen will be displayed and the tool will likely request a  reboot of the system.
When Finish button is clicked the system will reboot automatically. After the reboot, the Preparation Tool launches again and finishes the rest of the steps. Now our system is ready to install SharePoint Server 2010, so select that option from the setup pane.
We will be prompted to enter the license key (which is necessary even when Sharepoint 2010 is in Beta):
After the key we have to read and accept licence terms. Next screen advise that MOSS 2007 was detected.
As advised in the above screen we need to run the stsadm command now to ensure our intranet can be successfully migrated. Open cmd.exe console in administrator mode.
Navigate to the MOSS 2007 Bin Directory, which is located by default at C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12bin directory.
Enter stsadm -o preupgradecheck. This command does  not perform any repairs, but only checks for and reports issues with possible solutions to apply before the migration. As the command executes we will see the output continuously displayed on the screen with different status notifications. In this check, some notifications were “Aborted due to internal error”. We will ignore this for now as the overall check was succesfull.

The browser will then open  to display the  html document with the summary of the output and details of every issue. As all components passed the test  we are ready for the migration.
Go back to our SharePoint Server 2010 Setup window and click the Install Now button.
After the installation, we’ll see the final screen where we are informed that we must launch the SharePoint configuration wizard in order to update our content to latest SharePoint version.
Click Close to run SharePoint Configuration wizard. If you were expecting a wizard similar to the SharePoint 2007 wizard, you will be disappointed . We have now entirely new environment for Sharepoint 2010 version and hence a new Configuration Wizard.
Click Next, and the below warning will be shown:



Warning Window in SharePoint 2010 Configuration Wizard
Click Yes and we will see a new feature of Sharepoint 2010  -  Farm Passphrase.

Farm Security Settings Window
The Farm Passphrase will prevent server administrators from changing any data in  our SharePoint 2010 installation when no password is provided. Administrations won’t be able to use content or configuration databases even if  full database backups are obtained. Enter a password and continue with the configuration.
The next step is the Visual Upgrade.

Visual Upgrade Window


Next Steps will be Soon..............................



Tuesday 10 May 2011

BCS External List Limitations

One of the big features for Share Point 2010 (and for building OBAs) is the Business Connectivity Services (BCS).
There are a number of features that are missing when you create an External List based on an External Content Type. This can cause a lot of issues with end users because even though it looks exactly like a normal list it might not behave exactly like a normal list (or at least have some features missing).Here are those.

      Workflows cannot be configured on External Lists
      Cannot create Information Management Policies
      No versioning or version history
      No Inline Editing or Datasheet View
      No ratings
      No ability to Export to Excel, Create Visio Diagram, Open with Access or Open with Project
      No REST access through ListData.svc to External Lists
      No RSS Feeds
      No Item Level Permissions
      No item or field level validation
      No Lookups
      No attachments

So, let’s describe all
      Workflows cannot be configured on External Lists
Unfortunately as you can see you cannot actually run a workflow on an external list. You neither have the option to define any workflows nor can you actually start one. Now this is even if the workflow that you are thinking of defining will not alter the External List item in anyway, doesn’t matter, External List = No Workflows!



      Cannot create Information Management Policies
When we go to “List Settings Information management policy settings” of external list, you will see the following error. That means, we can’t create any management policy for external list.



      No versioning or version history
You cannot version or see version history for an External List. Now this does make sense since in many external systems there is no concept of versions.
      No Inline Editing or Datasheet View
Inline editing allows you to edit list items from within the list view itself, kind of a datasheet view for an individual item. Datasheet view is a way where you can easily change metadata for multiple items. Neither of these is available.


      No Rating
This does suck but you cannot rate any items in an external list.




      No ability to Export to Excel, Create Visio Diagram, Open with Access or Open with Project
Some of these are not available to all list types (Create Visio Diagram or Open with Project for example) but all standard lists are able to be exported to Excel or opened with Access. This is a real shame I think because exporting to Excel is an oft use feature that will be missed by users.

      No REST access through ListData.svc to External Lists
You can’t access an External List though REST.

      No RSS Feeds
No RSS Feeds are available either


      No Item Level Permissions
You also cannot configure item level permissions for External Lists.

      No item or field level validation
So as you can see there are quite a few limitations that one should be aware of. The thing that is concerning is that from a users perspective you can’t actually tell that a list is external and without all these things being available this can lead to some confusion. But it is out of the box functionality after all and with a little SharePoint Designer and XSL magic you might not be in the situation to expose external lists anyway.

      No Lookups
Unfortunately the only thing that you can do a look up on in an external list is on the ID column, anything else and you are out of luck.

      No Attachments
No attachments either. (Attachment option is disabled)

Limitations of External list using BCS in SharePoint 2010

1. Workflows cannot be associated with external lists

2. Cannot create Information Management Policies

3. LINQ to SharePoint spmetal.exe does not support external lists

4. No versioning

5. No Inline Editing or Datasheet View

6. No ratings

7. No alerts

8. No attachments


9. No REST access through ListData.svc to External Lists

10. No RSS Feeds

11. No Item Level Permissions

12. No item or field level validation

13. No Lookups

14. No ability to Export to Excel, Create Visio Diagram, Open with Access or Open with Project