U2U Blog

for developers and other creative minds

New Release of U2U CAML Builder

Our CAML girl has been busy during the Christmas vacation finishing a new and improved version of the popular CAML builder. The results of her work can be reviewed on her blog where she also has the link to the download package. Excellent work!

Inside the Index and Search Engines: Microsoft® Office SharePoint® Server 2007

It has been an extremely busy last couple of weeks but Lars Fastrup and I have finished the writing on our new baby: a full book for administrators and developers who want to learn about the internals, the customization and development options for the indexing and the search infrastructure delivered with the Microsoft Office SharePoint Server 2007. We are now in the process of reviewing all of the work and we expect the book to be in the shops around April 2008.


I really enjoyed writing this book since search is one of of my favorite topics in the world of MOSS and it deserves its own dedicated book. Here is the list of chapters with a small overview we are covering:

Chapter 01 - Introducing Enterprise Search

An introductory chapter with an overview of the indexing and search capabilities, the core components in the architecture and a discussion of the new Search Server 2008 with its support for federated search.

Chapter 02 - The End-User Search Experience

This chapter covers what is there immediately out-of-the box for the end-users with a discussion about the use of the small Search Box and the Search Center. There is also a detailed discussion of the various options there are to formulate a keyword syntax query.

Chapter 03 - Customizing the Search Experience

One my favorite chapters. We discuss first the configuration tasks that administrators can do in the Search Center with the coverage of the properties exposed by the different Search Web Parts. Next, we dive deep into the XSL that is used to transform the search results in the HTML that is displayed to the user. To conclude there is coverage about the classes in the search object model for a programmatic approach to customizing the Search Center and the way you can replace the small Search Box with your own custom one.

Chapter 04 - Search Usage Reports

Here we discuss the support for gathering and analyzing what the users are doing when searching. After a discussion of the report architecture, we discuss the search query and next the search results reports and how you can benefit from it as an administrator to finetune the end-user search experience.

Chapter 05 - Search Administration

There is often a thin line between administrators and developers when it comes to search. This 100 pages module discusses all the aspects of performing administration tasks for both the index and the search engine. We also included at the end a discussion on how to use Powershell to automate some of these tasks.

Chapter 06 - Indexing and Searching Business Data

This chapter is all about the Business Data Catalog and how you can create content sources that will enable the crawler to index your business data. You'll learn how to prepare your application definition files and how to create content sources, search scopes, expose managed properties and customize the search experience when it comes to business data. There is also some coverage on the BDC runtime object model so that developers can build custom solutions that benefit from the work done by the administrators.

Chapter 07 - Search Deployment Considerations

In this chapter we give insight in best practices and guidelines on how to plan for and set up your search topology, and monitor the performance of the indexing and the searching.

Chapter 08 - Search APIs

This big chapter covers the two object models that are part of the Search API: the administration object model and the query object model. There is also coverage of the Query Web service in detail.

Chapter 09 - Advanced Topics

A final big chapter is all about writing protocol handlers and IFilters, with also sections on how to build custom security trimmers and add support for faceted search within your MOSS environment.

Chapter 10 - WSS 3.0 Search Support

One of the big changes regarding search support in WSS is that is now uses the same architecture as MOSS. So many of the things discussed in the book can also be applied to pure WSS installations.

Exposing Microsoft Dynamics CRM 4.0 Data within SharePoint Custom Fields

More and more organizations feel the need to unlock their business data to the information workers either in the Microsoft Office or the SharePoint environment. Office Business Applications are excellent demonstrations of this type of solution. Within the SharePoint environment you can use the Business Data Catalog to connect easily to all of this data and let the users work with it with the out-of-the-box Features such as the Business Data Web Parts and for example the Business Data field type. But the BDC also has a very rich run-time object model that you can program against as a developer. Learning this object model is very important when you want to expose the business data in a custom manner to the users. One of the possible solution components is the creation of a custom field type. At U2U we have created a 2 day development course dedicated to integrating Microsoft Dynamics CRM 4.0 and WSS 3.0/MOSS 2007. In it, you'll learn plenty of things, including the creation of custom field types for SharePoint.

We have packaged that part in a walkthrough that is published as an article on our site. You can read it here and the sample can be downloaded here. It is a nice illustration of the work you can do with the BDC and it is easily re-usable when you want to hook up with other LOB-systems such as SAP or whatever.

Here is a screenshot with the end-result:


Mail merge using SharePoint contacts

When setting up mailings I often use Microsoft Word because it is so easy, write the mail message and select your Microsoft Outlook contacts as recipients. The only problem is that these our my personal contacts. It would be very useful if I could create a SharePoint contact list and use these contacts in my mailing.

This is very easy because you can connect your SharePoint contact list with your Outlook. How you can do this is explained in following steps:

1. Start by creating a SharePoint Contact list and fill  it up with contacts

2. Connect this list with Outlook

3. Open word and start the new mailing wizard

4. Select the type of the mail:

5. select starting document

6. Select your contacts.

Your SharePoint list will be included

7. Insert Text

8. Preview the mailings

Click on the 'Complete the merge' button to finish the mail merge and send out the emails.

Greetz K.

A Third Developer Feature

This time I developed a feature to inspect the different properties of a SharePoint web. You can download it here.

As the U2U CAML Query Builder and the U2U List Properties feature, it has been packaged in the U2U SharePoint Solution package, which you can download here.

To use the feature you have to navigate to the Site Settings page of the web. Under the Site Administration section you find the hyperlink Site Properties.


This brings you to the page where you can inspect all properties of the current Web. They are all divided in sections. The first section is the Site Properties section. This section lists all simple properties.

Site Properties details

All properties returning collections can be found in the subsequent sections, which are all collapsed.

The second section is the Lists Properties. There you can find some important list properties of all lists defined in the web.

List Properties

If you want to see more detailed information, you have to click the View Details hyperlink. This will bring you to the List Properties page of the selected list.

Lower you can also find the Content Types section. The most important properties of each content type is listed in a table. If you want to see more details about a certain content type, you can click the View Details hyperlink. This will display a section where you can view details about the Fields included in the content type, the SchemaXml and even the Inheritance tree of the content type.

Content types

When scrolling further down, you encounter the Features section. It is developed in the same way as the other sections: the most important properties are listed in a table. If you're interested in more detailed information you can click the View Details hyperlink. If the feature in question depends on other features, you can check the dependencies in the Feature Dependency sub section. You will not only see the feature id but also the name of the feature, which has been included for clarity.


Scroll further down and notice the Users and Groups section. When you click on it to expand it you will see that this section groups Web properties like Users, Site Users, Groups, Site Groups, Associated Groups, etc.

Users and groups

The same counts for the Permissions section: it groups all web properties that have to do with permissions


The Workflow Templates section lists all workflow templates with their properties


Other web properties that can be viewed in this page are:

  • sub webs
  • Folders
  • Files
  • Alerts
  • Available Content Types
  • Event Receivers
  • Fields
  • List Templates
  • Document Templates
  • Modules
  • Properties
  • All Properties
  • Recycle Bin
  • Regional Settings
  • View Styles
  • Data Retrieval Services Settings

If you have remarks or if you would notice a property I forgot to include in this feature, please don't hesitate to contact me.

Hope this feature can help you when developing SharePoint solutions!

Jan released new version of the SmartPart

This evening my friend and colleague Jan Tielens released a new version of the SmartPart. For the few who do not know what I'm talking about, the SmartPart allows you to create SharePoint 2007 Web Parts using Web User Controls ( .ascx ) created with the Visual Studio designer.

This version of the SmartPart allows you to install it using a wizard, which makes live much more easy J. There is also support for localization using ASP.NET Ajax controls and User Control samples are added to make you more productive using the SmartPart.

So go and download it from the codeplex community site.



The U2U Analysis services documenter starts the year with a new version

Best wishes for 2008! And for those who are using Microsoft's OLAP and data mining database, analysis services, we have a new year's gift for you: a new release of our documentation generation tool. We added support for data mining structures and data mining models, so that they show up in the generated HTML documentation as well. Have fun!


(PS: download it at http://www.u2u.be/res/SQL05_ASDoc.aspx)

RIA Session @ ODC 2008

Yesterday, I booked my first flight and hotel room of the new year. The trip will take me to San Francisco and from there an hour drive to San José where the Office System Developer Conference 2008 will take place. I have never been to San Francisco so this should be a nice one. The ODC 2008 promises to be an interesting conference with plenty of sessions by fellow MVPs, Microsoft people and Bill Gates doing the keynote. The networking will be good again. The session I'll do:

Building RIAs for WSS 3.0 and MOSS 2007

In this session youll learn how to leverage Web 2.0 technologies to deliver a rich and interactive end-user experience for SharePoint sites and content. Topics that will be covered are: building ASP.NET AJAX 1.0 enabled Web Parts; creating and consuming SharePoint Web Services that are AJAX-enabled; Web Parts hosting Silverlight 1.0 and 2.0 applications; techniques to have the Silverlight applications communicated back and forth with SharePoint content such as items in lists and libraries, user profile information and search results; samples of how publishing portals can be enriched with Silverlight navigation controls and enhanced page layouts; demos on how to build Vista Gadgets that display SharePoint content using traditional UI techniques as well as using Silverlight.

See you there.