Enterprise Content Management: What it is and Why You Need It

If you were to survey corporate America on how it defines an enterprise content management (ECM) system, the majority response would be a software tool primarily used by large organizations to create and publish Web content. This article challenges that definition and proposes that ECM is a process that may or may not be supplemented…

2

Build PowerShell CmdLets to call SharePoint Web Services using WCF

In this post I’ll show you how to build a PowerShell cmdlet that consumes SharePoint web services using WCF.  What I like about this approach is that it provides the ability to use some of the SharePoint API without having to be logged in to the SharePoint server.  Although you can accomplish the same thing…

2

Walkthrough: Import Data From a Line Of Business System into SharePoint User Profiles

In this walkthrough, I’ll show you how to import data from a line of business (LOB) system into SharePoint user profiles and make that information searchable.  Using this approach, you can leverage information that is stored in other LOB systems and create a unified view of user information in SharePoint. Create an Interface to the…

4

SharePoint BDC Error: Cannot have more than 30 Parameters for a Method

One thing to be aware of is that the BDC has a hard limit of 30 parameters.  If you use the BDC as designed, you likely will never hit this limit, but if you are trying to implement insert/update functionality you may encounter this little gotcha.  When it happens, you will see the following error…

1

How to Create a Reusable WCF Service Host for Windows Services and Self-Hosting

In this article, I’ll show you how to create a reusable service host that can be run from either from the console (self-hosted) or installed as a Windows service.  I’ll also demonstrate how to use a configuration file instead of code to control which WCF services the host starts.  Finally, I’ll show how you can…

7

How to Update a SharePoint User Account When They Leave the Company and Return

In this article, I’ll show you how to handle a common scenario when a user leaves the company and returns later.  Many organizations delete user accounts after a period of time and when a user returns they often get a new Windows account with the same (or slightly different) account name.  SharePoint stores its own…

8

Error Configuring BizTalk SharePoint Adapter on SharePoint SP1

This article provides a workaround for installing the BizTalk WSS Adapter on MOSS SP1 when you receive the following error: “Make sure the site is extended by Windows SharePoint Services. (CWssAdaCfg), ” or “The data is invalid.  Click on the error icon to view the error message.” When you click on the error icon, you…

4

Search SharePoint from the Internet Explorer Toolbar Using a Custom Search Provider

Here is an easy way to search a SharePoint site from the IE toolbar without having to develop a custom add-in.  Before showing you how to implement it, let’s examine how custom search providers work. How Custom Search Providers Work When you browse to an Open Search enabled site in IE 7, the search provider…

4

Walkthrough – Build a Windows SharePoint Services 3.0 Development Virtual PC with SQL Server, Active Directory and E-mail

If you are building or testing SharePoint customizations, you should use virtualization over physical servers.  Virtualizing your SharePoint development and test environment has many benefits including easier debugging, the ability to rollback changes, and test different client and server configurations.  This article provides step-by-step instructions (with extensive screen shots) for building out a WSS 3.0…

10

How to Implement an Interface Without Making Members Public Using Explicit Interface Implementation

If you’ve ever implemented an interface, you’ve probably encountered the requirement that the member you are implementing must be public.  For example, you cannot define a property in an interface and then make the setter internal as demonstrated by the following example: If you attempt to compile the above code, you will receive an error…

5