Stefan Goßner posted a great series of posts about the Content Migration API (formerly known as PRIME) for SharePoint (WSS 3.0 and MOSS 2007). In just 5 post he explains everything about this API and where SharePoint uses it. It's an excellent start point for many SharePoint administrators and developers out there. I also refer to this post in my training's about SharePoint as well.

If you want some other great info about migration check Replication and High Availability from Joel Oleson.



More and more people are migrating their Report Server environment to SharePoint. This migration will give you the ability to open your reports in SharePoint instead of just another UI. For a complete explanation on this migration check a previous blog of my at SQL Server 2005 Service Pack 2 (Integration between Reporting Services and SharePoint 2007). Before you can integrate between Reporting Services and SharePoint you have to decide if you'll setup a separate Application Tier. Almost all my customers have a similar setup as pointed out below.

SERVER 1 - Data Tier

.NET Framework 2.0

SQL Server 2005 SP2 (Database)

SERVER 2 - Application Tier

Internet Information Server 6.0

.NET Framework 2.0 & 3.0

Windows SharePoint Services 3.0

SQL Server 2005 SP2 (Reporting Services)

Reporting Services Add-in for Microsoft SharePoint Technologies

It's also possible to install all these products on one machine, but it isn't advisable. Reporting Services installs some Web Services and a Web manager (will be replaced by the Reporting Services Add-in for Microsoft SharePoint Technologies). After installation you can find all files at the Program FilesSQL ServerMSSQL.#Reporting ServicesReportServer directory. If you've installed al of the above products and updated it with the latest service packs and updates you can start the Reporting Services Configuration Manager. This tool can  be started for the Start menu at All Programs - SQL Server 2005 - Configuration Tools - Reporting Services Configuration. Depending on the choice of installation you will see a similar screen like this.


If some of the above sections displays a red cross mark fulfill these steps.

  • The Report Server virtual Directory should point to the web site where you installed and configured SharePoint.
  • The Report Manager Virtual Directory will become obsolete, so it isn't necessary to implement this step.
  • The Windows Service Identity is used under which the Report Server Windows service runs. The Report Server Windows service performs initialization, reversible encryption, database maintenance tasks, and all scheduling and delivery. The service runs in the background. It performs end-to-end processing for reports that run on a schedule (specifically, it creates report snapshots and runs subscription reports).
    Because it performs all encryption operations, the Report Server Windows service must be running whenever you specify or use encrypted values. Specifying stored credentials, running a report that uses stored credentials, and publishing a report to a report server (data source information is encrypted) are all operations that require the Report Server Windows service.
  • The Web Service Identity creates or uses a application pool under which the identity runs in IIS.

Now all steps are completed and Reporting Services is initialized you can start completing the last step to complete SharePoint Integration. Click on the Database Setup section and Change the Server Mode from Native to SharePoint Integration. After hitting the change button fill out the following screen and make sure the Create the report server database in SharePoint Integrated mode is selected. 


Type in new Database Name (e.g ReportServerWSS). Note. Don't start to create a database which starts with WSS because in some cases the connection will fail. After creating the database the SharePoint integration is completed.


Although it isn't hard to install and configure the add-in, it will give you a lot of steps to fulfill. First of all you have to make a decision about your server topology. Secondly you must setup Reporting Services to use you're data tier (remote or local). Third upgrade your database, so all content will be added to SharePoint and the rendering and caching stays in SSRS. In my next blog I'll explain how Activating SharePoint for Reporting Services works.


I wasn't blogging for a long time, but now I'm back with a strong rhyme.
Look, near the camera, snap my picture. I'll sign my name on it, then I get richer.
Like LL said don't call it a comeback and face the fact Jack I'm all that.

The last couple of months I spend a lot of time developing and giving courses. Like a few of my colleagues already posted on their blogs, I spent a lot of time on our Summer Classes . Check Update summer classes 2007 at and Summer Classes 2007 at for the details. My part in these classes was the developing an teaching the BI part. I had lots of fun with all my students and they appreciated my experiences as well. By the way these classes will be held again in January or February of 2008. See Class-A Summer Classes become Winter Classes at for full details.

Besides the BI part, I also developed a couple of our SharePoint modules. SharePoint is the reason why I was unable to post blogs for a long time. Our SharePoint courses SHAREPOINT 2007 DEVELOPMENT UNLEASHEDSHAREPOINT 2007 BI and SHARPOINT INSTALLING & CONFIGURING are almost every week sold out. I'm not surprised because SharePoint is HOT and other course provides can't deliver a training because the MOC (Microsoft Official Curriculum) material isn't available yet.

Here is some info about my next posts. More and more people are migrating their Report Server environment to SharePoint. I already received a couple of emails how to setup such an environment, but I never had the time to create a post. Today I received another mail requesting me to explain this. So my next posts will be about this subject. I'll divide this subject in three post.

  1. Post: Installing & Configuring the Integration between Reporting Services and SharePoint
  2. Post: Activating SharePoint for Reporting Services
  3. Post: Developing Reports for Reporting Services under SharePoint

I'll keep you posted.



Since the time Jan beat me by delivering his Return of the SmartPart, I still get lots of request to complete my initial blog about dynamically loaded User Controls in SharePoint 2007 / ASP.NET 2.0 Portals. Keep in mind SmartPart is a great WebPart, but focuses completely on SharePoint. The WebPart even inherits from Microsoft.SharePoint.WebPartPages.WebPart and isn't what I found able to use enumerators. Besides this I like to complete where I once started and Microsoft is still not delivering an additional component which they once promised. See a blog of Scott Guthrie where he describes some info about whether it will be possible to host Web Parts built as ASP.NET 2.0 User Controls within SharePoint 2007.

The last time I stuck at part V which was al about the WebPart EditorPart, to select a UserControl from the "UserControls" directory. This part of the blog series focuses on discovering the properties of selected UserControl. In this blog I won't be bother you with big code screen but only with three small ones. All other code will be included as attachment, so you can read and investigate it. You can learn a lot of debugging code. Most of the ASP.NET 2.0 portals uses personalization, which can be setup with the aspnet_regsql.exe command. This command can be found at %WINDOWS%Microsoft.NETFrameworkv2.0.50727. After running this all portal users are able to store their settings of the given WebParts. I added the ability to store the properties of UserControl as well. To set and show the properties of a UserControl you can use the [WebBrowsable] and [Personalizable] attribute.

I divided the properties in three categories.

  1. String -> rendered as a TextBox
    private string _textField;
    [WebBrowsable(true), Personalizable(true)]
    public string TextField
            return this._textField;
            this._textField = value;
  2. Boolean -> rendered as a CheckBox
    private bool _boolField;
    [WebBrowsable(true), Personalizable(true)]
    public bool BoolField
            return this._boolField;
            this._boolField = value;
  3. Enumerators -> rendered as a ComboBox
    public enum Days
        Saturday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday
    private Days _enumField;
    [WebBrowsable(true), Personalizable(true)]
    public Days EnumField
            return this._enumField;
            this._enumField = value;

Most of my classes kept the same signature compared to the initial design. For a complete description of all classes their methods,  you can read the second post of the blog series.

Class Diagram

To use the UserControlWebPart assembly you must register it in your ASP.NET 2.0 portal application or populate it in SharePoint. A good guide to follow for populating the SharePoint WebParts Gallery is of Mart Muller. See It's based on Office SharePoint Server 2007 Beta 1 TR, but still do the job. After this you can use it in any of these apps as a normal WebPart. Your UserControls need to be in the "UserControls" folder of the application. When a UserControl contains a separate assembly file, you must place it in the "bin" folder of the application.

UserControl in ASP.NET 2.0 Portal and SharePoint using my own UserControl WebPart

As you can see in the image, I now have create my an UserControl EditorPart which customizes / personalizes a UserControl.

I did it again. This time it costs me several days instead of hours, because retrieving and storing the properties of user control isn't easy. Maybe somebody can confirm this ;-), it would encourage me to finish the blog series. The next part will focus on setting up connectable user controls by using the consumer / provider model of ASP.NET 2.0. Frankly I don't have a clue when I post this blog because I'm working on setting up TFS to run over SSL and off course about WSS 3.0 the MS way. To give everyone including the SharePoint Team the ability to start using this WebPart I included the sources and DLL in the post as well. If somebody has better ideas (e.g. AJAX) or want to help writing this code, send me an email.



When an ASP.NET application is started it processes the web.config file. Doing so it is combined with all web.config files found up in the tree of virtual directories. Suppose I have a website located at and a w00t app like When the application is loaded by the web server the web.config of the root website is read as well. Even when the physical path does not have a tree structure at all. Luckily it reads the highest file in rang first, so if you want to change settings for the app all settings made in the root are overruled. Things get worse when an ASP.NET 1.1 app enters the stage. This will also try to process all files named web.config up in the virtual directory tree, regardless of their intended framework version. The real bad thing is that ASP.NET does not understand an ASP.NET 2.0 config file. The latter happened to me while installing SharePoint 2007 on a production server running several 1.1 apps.

After searching the Net I ran in some strange post of Microsoft. How to: Modify Configuration Settings for an Application to Coexist with Windows SharePoint Services. This post doesn’t work at all and is intended for WSS v2. However this post is released in the WSS v3 documentation. Shame on you MS.

So it was up to me to solve this problem. I changed the ASP.NET configuration settings to use ASP.NET 2.0 as it ASP.NET version. This way all settings in the web.config of SharePoint are now understood by my w00t app.

The only part left to do is add the lower statements to the web.config of the web application

<trust level="Full" originUrl="" />
  <remove name="PublishingHttpModule" /> 
  <add name="Session" 
<pages enableSessionState="true" />

This way the app will be fully trusted, except sessions and resolve a small error which will be added to the eventlog. For complete details about this error, browse to Unable to connect publishing custom string handler for output caching of Steven Van de Craen

Maybe it wasn’t a good idea to install SharePoint on a production machine without testing it, but you must dare to live. By the way, SharePoint and all apps works like a charm.



Let's take a quick look at what these extensions can do for you. As you can expect from me I'm only interesting in the Web Part section of this product. For all other options check out this blog called Walkthrough - Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions. About handling Web Parts, Mart Muller wrote an excellent blog about how you Create a SharePoint 2007 webpart step by step. With the new extensions you only have be aware of the steps Mart wrote, but you don't have to execute those anymore.

After installing the product you have the ability to select a Web Part project from the SharePoint project types. Web Parts were first introduced in Windows SharePoint Services v2. The concept was so compelling that the model was improved and added to the second generation of ASP.NET: ASP.NET 2.0. This wasn't the only addition to ASP.NET 2.0. Other improvements and enhancements allowed the Windows SharePoint Services team to revamp their underlying architecture that resulted in it being rebuilt on top of ASP.NET 2.0 (previously, WSS v2 had it's own rendering engine).


After selecting this project, it will create a base project with a template file as shown below. As you can see it will inherit from the ASP.NET 2.0 WebPart class (System.Web.UI.WebControls.WebParts.WebPart), but you can also build Web Parts that inherit the WSS v3 WebPart class (Microsoft.SharePoint.WebPartPages.WebPart). To decide from which Web Part you should derive check Creating Web Parts in Windows SharePoint Services. In most cases you could stick to default settings. As we can expect from a custom control we do need to set it's rendering. After doing so, check you settings of the project.

    1 using System;

    2 using System.Runtime.InteropServices;

    3 using System.Web.UI;

    4 using System.Web.UI.WebControls.WebParts;

    5 using System.Xml.Serialization;


    7 using Microsoft.SharePoint;

    8 using Microsoft.SharePoint.WebControls;

    9 using Microsoft.SharePoint.WebPartPages;


   11 namespace My_First_Extension_Web_Part

   12 {

   13     [Guid("e17149f4-56e6-4c5d-909c-3cec0a1d0f27")]

   14     public class My_First_Extension_Web_Part : System.Web.UI.WebControls.WebParts.WebPart

   15     {

   16         public My_First_Extension_Web_Part()

   17         {

   18             this.ExportMode = WebPartExportMode.All;

   19         }


   21         protected override void Render(HtmlTextWriter writer)

   22         {

   23             // TODO: add custom rendering code here.

   24             writer.Write("My First Extensions Web Part!");

   25         }

   26     }

   27 }

The extensions introduced a new Tab for a SharePoint Solution. In this tab you can set the settings for its solution, the feature and even the element itself. This will give you the ability to easilly set these settings without creating additional files. Besides this extra tab, the project will also sign this assembly with a strong name key, so it can be easily added to the GAC. Note: This key is for every newly created project on the same machine identical.

In the next screen dump you can see the project is deployed to the web server, which contains SharePoint. It will create a *.wsp file, which will automatically add the Web Part to the GAC, mark your Web Part as safe in the web.config of the SharePoint site, populate your Web Part gallery and reset its server.  

------ Build started: Project: My First Extension Web Part, Configuration: Debug Any CPU ------

C:WINDOWSMicrosoft.NETFrameworkv2.0.50727Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:"C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12ISAPIMicrosoft.SharePoint.dll" /reference:C:WINDOWSMicrosoft.NETFrameworkv2.0.50727System.dll /reference:C:WINDOWSMicrosoft.NETFrameworkv2.0.50727System.Web.dll /reference:C:WINDOWSMicrosoft.NETFrameworkv2.0.50727System.Xml.dll /debug+ /debug:full /keyfile:PropertiesTemporary.snk /optimize- /out:"objDebugMy First Extension Web Part.dll" /target:library PropertiesAssemblyInfo.cs "My First Extension Web PartMy First Extension Web Part.cs"


Compile complete -- 0 errors, 0 warnings

My First Extension Web Part -> D:ProjectsWebPartsMy First Extension Web PartbinDebugMy First Extension Web Part.dll

------ Deploy started: Project: My First Extension Web Part, Configuration: Debug Any CPU ------

------ Generate My First Extension Web Part.wsp file and setup batch file------

Creating solution ...

Operation completed successfully.


Creating setup batch file ...

Operation completed successfully.


------ Add and deploy My First Extension Web Part.wsp to the SharePoint ------

Adding solution ...

Operation completed successfully.


Deploying solution ...

Operation completed successfully.


------ Activate features in solution if necessary ------

Activating feature My_First_Extension_Web_Part ...

Operation completed successfully.


Restarting IIS ...

 After deploying you can add your newly created web part to your SharePoint site like you've done thousands of times before.

It's good to have these new extensions for Web Parts. Offcourse you still have to know the steps mentioned by Mart, but you don't have to follow them exactly anymore. I personally think it's a great effort of the SharePoint team and like to thanks you guys.



Christmas do come early this year. The SharePoint team in Japan has just finished working on the next version of their popular team productivity application template, GroupBoard Workspace 2007. This is the first of the “Fantastic 40” Application Templates for Windows SharePoint Services 3.0 early next year

The GroupBoard Workspace template creates a space for a group or team to connect and share information in a collaborative environment, improving team efficiency and productivity. The template helps track team member whereabouts and status, and includes a built-in timecard list and organization chart. Meetings can be scheduled with attendees, and meeting rooms and other resources can be reserved. It also enables members to share phone messages and circulate memos.

Check out the following pics for some detailed info.


Time card


I repeat my first sentence by claiming Christmas do come early this year. I can't hardly wait till the other 39 Application Templates will be released.



An update of this blog is available. In the new blog I refuted all point which has been carried by Jason Barile. This blog describes of full Guide which every TFS administrator can follow to upgrade to WSS v3.

Before you read this post I must warn you, this solution is as is. I'm trained professional so don't do this at work. 😉 

According to Jason Barile, you will not be able to create project portals for TFS projects if you upgrade Windows SharePoint Services v2 to v3.

Via Jason: If you happen to upgrade your WSS2.0 to WSS3.0, you can expect the following behavior:

  • The Team Explorer's 'Documents' node will have a red x on it and will not expand. 
  • Team Project Creation Wizard will fail with the standard templates, only templates with all WSS functionality removed will work. 
  • You will not be able to browse to the site by right-clicking on the project and selecting 'Open Project Portal'. 

Although I believe him, I would like to test it myself. The first two bullets are really necessary to use it in your Team Project environment. The last bullet is not a show stopper, but as a developer it can be very handy for going to the portal or create document libraries, folders and documents from the Team Explorer.

Why should you want to upgrade to WSS 3.0?

For Example:

  • Customize your sites quickly
  • Better control with master pages
  • Send e-mail to a SharePoint site
  • Get mobile access to a SharePoint list
  • Poll people more effectively with improved surveys
  • Receive updates about lists and libraries with RSS Feeds
  • Track your work with improved calendars
  • Copy documents easily to another location
  • Better management of versions
  • Better document recovery

Should I go on or should I show you how to upgrade.

How to install
When you try to install one of the default upgrades it can give you several errors and unfortunately this isn't the correct way for upgrading right now.

Upgrade WSS 2.0 -> 3.0

As you can see in the picture above the default instance of WSS 2.0 is created by the TFSSERVICE account. It isn't even possible to install and configure a WSS 2.0 site yourself (e.g. Create permissions, set databases). The configuration is done by the TFSSERVICE account, so that's maybe an issue why you can't upgrade. Mine TFSSERVICE account only has "Log on as a Service" policy enabled as mentioned in Rob Caron's installation guide. So select 'No, do not upgrade at this time'.

How to configure
After installing WSS 3.0 you can't extend your WSS 2.0 site, but you can create a new Web Application which is using the same site location (e.g C:inetpubwwwroot) and same content database (STS_Content_TFS) as your WSS 2.0 site uses. Before you create your new Web Application you first have to prescan the site with prescan.exe. Just use the /all attribute and the site is ready to upgrade. Use all values (as given) to overwrite your previous site, use port 80 to open it for TFS and name the site (e.g. SharePoint - 80). After the Application is created you need to reset IIS by using iisreset /noforce. This way the site will be reloaded and uses all his new configuration settings including those of SharePoint.

Upgrade your Team Project server

Check the result
Jason expected the following result "The Team Explorer's 'Documents' node will have a red x on it and will not expand." but it's working perfectly. You not only upgraded one Team Project site, but you upgraded all subsites of http://server/sites. Besides showing the documents in Team Explorer, you also use all the features in it (e.g Show Project Portal..., New Document Library..., Upload Document... and New Folder).

Bullet 1 is off the list

Still one red x to go. Check your Internet Information Services (IIS) Manager to see there are two sites configured at port 80. The 'Default Web Site' and the new configured site 'SharePoint - 80'. The report server doesn't work anymore cause you created a new Web Application. We have to reconfigure SSRS. You may delete your 'Default Web Site' because you just created a new one.

Reconfigure SSRS
Back in the old days 😉 configuring SSRS was quite a job. Luckily we now have the Reporting Services Configuration Manager. With this manager it's easy to create the two Virtual Directories with the correct setting and permissions needed. The only thing left is to change the Application Pool for both directories. You can do this in the Internet Information Services (IIS) Manager by selecting 'ReportServer' in the properties dialog of one of the directories. When you finished with this option you can click Refresh in the Reporting Services Configuration Manager and the Web Service Identity will be mark as correct. After doing this you can refresh your Team Explorer and look at the result. As you can see in the image everything works perfectly.

Complete the upgrade

How about new Team Projects
Having upgraded your old WSS 2.0 sites to WSS 3.0 sites you can ask yourself the question "Can I still create new Team Projects?". Jason expected the following "Team Project Creation Wizard will fail with the standard templates, only templates with all WSS functionality removed will work.". It's even worse because you can't use any template at all. I've tried to create a Site Template "VSTS_MSFAgile" (This name can be found in WssTasks.XML which is part of the Process Guidance) based on a previous project. As you can see in the next image it's not working.

Create a new Project

Finally I ended by downloading my default Process Guidance and cleared the WssTasks.XML. After customizing the Process Template I uploaded it to TFS. As you can see it's almost empty. I only added the portal tags, so the plugin won't fail.

Content of WssTasks.XML

By doing this you are able to create a new Team Project without having any errors. You now have to create a site using SharePoint Central Administration. It's up to you what site template you want to use because you could even use a Team Site template. The only important part is, is to create at the http://server/sites location and give it exactly the same name as your Team Project. You now have created a new site using WSS 3.0 which can be used in a TFS V1 environment. It's a good idea to create a default site definition which already has all the TFS documents for your process in it. Or you can just copy all files using the Web Client service by connecting to one of the created document libraries (e.g. http://server/sites/teamproject/process guidance). It's not perfect but it works, so bullet two is gone as well.

Newly created Team Project

I hope you're as excited as I'm and will soon upgrade you TFS environment to WSS 3.0. Ok, there are some disadvantages, but compare to the advantages of WSS 3.0, at least give it a shot. Of course this is as is, so Microsoft will not support this upgrade. As Jason mentioned in his blog "the upcoming service pack for TFS will not add support for WSS 3.0.  We are investigating options for supporting WSS3.0 and beyond in future releases of TFS." Why is Microsoft trying so hard to not use this feature in a service pack update. Why is the team trying so hard to push us in the direction of 'Orcas'. 'Orcas' is great update (Read Brian Harry post about the TFS roadmap, he doesn't even mention WSS 3.0) and I will certainly advise everybody to upgrade, but WSS 3.0 has nothing to do with 'Orcas'. It's just laziness of the team or orders from the management above. After upgrading to WSS 3.0, you can even install SP1 for TFS and uninstall WSS 2.0, without harming the system. If you've upgraded to SP1 and you uses Office 2007 this system really rocks. You get even more advantages, because Office 2007 integrates seamlessly with TFS and WSS 3.0.

Office 2007 using TFS

Please TFS Team help us

  • Jason bullet 1; Just make sure the WSS 2.0 databases are ready to update. So all people don't have to follow my workaround.
  • Jason bullet 2; Just update the plugin for SharePoint (Microsoft.ProjectCreationWizard.Portal). How hard can it be to use the services of WSS 3.0.
  • Jason bullet 3; No issue, just reboot your system after all these changes.

How hard can it be? Lots of people invested in a marvelous SDLC tool, why can't they upgrade easily to WSS 3.0. It's free, it's full off nice features and they are ready for future.


As I've written in a previous blog:

I recently checked a couple of blogs about using dynamically loaded User Controls. Some of the blogs mentioned SmartPart v2 (aka SonOfSmartPart) to load ASP.NET 2.0 User Controls. This WebPart is completely targeted to SharePoint 2003, but it will remain working in MOSS 2007. When creating new Web Parts, you have the option of creating Web Parts that inherit from System.Web.UI.WebControls.WebParts.WebPart (recommended) or Microsoft.SharePoint.WebPartPages.WebPart (inherits from). The Windows SharePoint Services WebPart class exists primarily for the purpose of backward compatibility (Web Parts continue to work in Windows SharePoint Services 3.0 without modification), and to provide a small set of features that are not available in the other class.

Besides the targeting it's also not possible to use this Web Part in a ASP.NET 2.0 Portal. I know it's really easy to drag and drop a User Control in ASP.NET 2.0 Portal, but I also want to have this ability in MOSS 2007. Furthermore I like to have an option to add User Controls dynamically (not included in my Portal project). Scott Guthrie has written some astonishing info in one of his blogs about whether it will be possible to host Web Parts built as ASP.NET 2.0 User Controls within SharePoint 2007. He checked with the SharePoint team, and they told him that this will be a supported scenario via an additional component you add to SharePoint and that they'll have a Whitewater and sample on how to-do this published later this year.

I had heard some rumors that Jan Tielens was writing a Revival of SmartPart, but I couldn't wait that long. So I started to write a series of posts about my own UserControl WebPart. The goal of the series is to create a DLL which is public to everyone who wants to use it. But before I could end the series Jan posted the following blog. 

Via Jan:

Finally the latest version of the SmartPart is here: the Return of the SmartPart, also know as SmartPart v3, also know as SmartPart for SharePoint 2007. For those of you who are new to the SmartPart: the SmartPart is an open source web part that can host any ASP.NET Web User Control. What is the advantage of creating web parts by making use of the SmartPart? Well if you are familiar with the "traditional" web part development technique you probably know that you have to write lots of code, there is no designer support in Visual Studio. The SmartPart allows you to create a Web User Control (ASCX) in Visual Studio by making use of the designer, and deploy it to a SharePoint site. This release of the SmartPart is targeted for SharePoint 2007, both Windows SharePoint Services v3 (WSSv3) and Microsoft Office SharePoint Server 2007 (MOSS). Since the initial release almost 40.000 SharePoint developers have downloaded the SmartPart, get your copy today (for free of course) from the GotDotNet Workspace (in the releases section)! For those of you who have attended my session about web part development on TechEd: Developers in Barcelona, this is the version that I showed over there.

For more information about the deployment of the Return of the SmartPart, check out this post which also has a link to a small screencast. Keep an eye on my blog or for more information, examples and screencast about creating web parts the smart way!

Besides the SmartPart I still hope to finish my own UserControl WebPart.


Technorati tags: , ,

Eilene Hao, Program Manager for SharePoint Workflow finished her complete blog series about developing SharePoint workflows in Visual Studio (VS). Lots of people are asking a lot of questions about this issue and a lot of them seem to have common points of confusion. With so much information out there, it’s sometimes hard to see the big picture amidst details and know what’s really important or how to put all the pieces together. 

She created a more cohesive guide of key concepts, and converted it to a blog series that she posted Microsoft SharePoint Products and Technologies Team Blog. She started with some fundamental workflow terminology and critical architectural concepts, then go over the steps for developing a workflow, covering the most common questions and points of confusion, and noting pitfalls and tips for success along the way. Understanding the material in this series will hopefully equip you with the right tools and knowledge to solve or work around a lot of problems that you encounter.

Note that this is not a replacement for the SDK, and you should still look there for the finer details. She highlighted the major concepts so that you have a sense of what to look for.

Developing Workflows in VS: Part 1 - Workflow Objects and A Crash Course on Mechanics

Developing Workflows in VS: Part 2 - Planning Your Workflow: Two Things to Keep in Mind

Developing Workflows in VS: Part 3 - Five Steps for Developing Your Workflow

Developing Workflows in VS: Part 4 - Design and Bind Your Forms

Developing Workflows in VS: Part 5 - Code Your Workflow

Developing Workflows in VS: Part 6 - Deploy and Debug your workflow

Developing Workflows in VS: Part 7 - Summary and Final Thoughts

Perfect set of articles about developing SharePoint workflows in VS. I'll hope the team will give us more blog-series like this.