Skip to content
Jun 22 / Michaël Hompus

Keeping your SharePoint 2010 development databases small

With SharePoint 2010 the amount of databases on your SQL server has grown quite a bit. By default most of these databases have their recovery model set to ‘FULL’. After some time you will discover you’re running out of space.

The problem

Most likely the problem lies with the transaction logs of  your databases. With the recovery model set to ‘FULL’ the will keep storing every transaction until you make a backup. Chances are you don’t configure a backup plan for you development environment as most development databases don’t need a backup as your sources will be stored in a source control system.

The (manual) solution

To solve this problem you can change the recovery model of each database by hand. For this you can open SQL Server Management Studio (SMSS), open the properties screen for a database and navigate to the options tab. There you will find the recovery model option.

image 
Database Properties screen with the Recovery model set to ‘Simple’.

Saving this change will empty your transaction log. But it will not shrink the physical file on disk. To shrink this file you can look at the "Shrink" task.

image 
The context menu’s to shrink the size of the log files.

The (automated) solution

Executing this step for every database manually is quite some work. So you want the easy solution. :)

The following TSQL script will change the recovery model for every database to ‘simple’ and shrinks the database.

USE [master]
GO

DECLARE @dbname SYSNAME
DECLARE @altercmd NVARCHAR(1000)
DECLARE @shrinkcmd NVARCHAR(1000)

DECLARE [dbcursor] CURSOR FOR SELECT [name] FROM sysdatabases

OPEN [dbcursor]
FETCH NEXT FROM [dbcursor] INTO @dbname

WHILE
    @@FETCH_STATUS = 0
BEGIN
    IF
        (SELECT DATABASEPROPERTYEX(@dbname, 'RECOVERY')) != 'SIMPLE'
        AND
        @dbname != 'tempdb'
    BEGIN
        SET @altercmd = 'ALTER DATABASE "' + @dbname
                                               + '" SET RECOVERY SIMPLE'
        EXEC (@altercmd)

        SET @shrinkcmd = 'DBCC SHRINKDATABASE ("' + @dbname + '")'
        EXEC (@shrinkcmd)

        PRINT @dbname
    END

    FETCH NEXT FROM [dbcursor] INTO @dbname
END

CLOSE [dbcursor]
DEALLOCATE [dbcursor]
Jun 1 / Michaël Hompus

Using the people picker over a one-way trust

When you have a SharePoint farm and you want to use accounts from another domain you need a partial (one-way) or a full (two-way) trust between those domain.

A full trust is not always desirable and there your problem begins. After setting up the one-way trust you can authenticate with an account from the trusted domain, but the SharePoint People Picker doesn’t show any accounts from this domain.

It has been documented by others before, but as I ran into this recently I’ll give my summary how I fixed this.

This solution is the same for WSS 3.0/SharePoint 2007 as SharePoint 2010.

The problem

When using a one-way trust you don’t see any accounts from the other domain in the people picker.

SharePoint People Picker not showing any accounts. 
People picker not showing accounts from the other domain.

The reason

This is an example of how you could use a partial trust.

Architecture with a company and a development domain setup with a partial trust.
Example of a one-way trust architecture. 

You want to allow employees to authenticate in a development farm, but you don’t want to allow any test or service account from the development domain to authenticate in the company domain.

As the application pool account is based in the development domain it doesn’t have the right to query the company domain.

The solution

Using STSADM we can configure which forests and domains are searched for accounts by setting the peoplepicker-searchadforests property. The best part is that we can supply a username and password for a trusted domain.

SharePoint doesn’t allow you to store this username and password in plain text on the server. So you will have to configure a secure store. If you skip this step, configuring the search account for trusted domains will always fail with the following message.

Cannot retrieve the information for application credential key.

To create a credential key you will have to use the following command.

stsadm -o setapppassword -password <password>

This command has to be executed on every server in the farm.

Now you can configure the forests and domains you want to search using the following command.

stsadm -o setproperty -url <web application url> -pn peoplepicker-searchadforests -pv forest:<source forest>;domain:<trusted domain>,<trusted domain>\<account>,<password>

You can combine any number of forests and domains, but you need to specify at least one. You also need to include all forests and domains in one statement because every time you execute this command it will reset the current settings.

Also note this setting is per web application, and even per zone.

SharePoint People Picker showing an account from the one-way trusted domain. 
People picker showing accounts from the other domain.

Apr 16 / Michaël Hompus

Make your PowerPoint Presentation look good on a wide screen projector

The other day I attended a meeting where the presenter switched from a PowerPoint slide to demonstrate an application. When he made the switch it was quite obvious the beamer was setup to only display the 4:3 slides to the maximum of the white screen. Since his desktop was in a 16:10 resolution the application was falling off the screen on both sides. Which was quite a distraction.

While I was preparing a presentation myself I wanted to be sure my presentation would be in the same resolution as my desktop as I would be switching between my slides and Visual Studio.

Choosing your Aspect Ratio

For presentations on a beamer or screen there are 3 common aspect ratio’s at the moment: 4:3, 16:9 and 16:10. If you don’t know the ratio you can use the maximum resolution to determine the required ratio.

4:3

This is the classic resolution for computer screens. This is also the default for PowerPoint. 800×600, 1024×768, 1152×864 and 1280×960 are common resolutions used with the ratio.

If you show a slide on wide screen you will get black bars on the side.

A PowerPoint slide with a 4:3 ratio shows black bars on the side using a 16:10 screen. 
A 4:3 slide on a 16:10 screen. Showing black bars on the side.

16:9

This ratio is commonly used by HDTV screens and beamers. 1280×720 and 1920×1080 are common resolutions used with this ratio.

If you show a slide in this ratio on a 4:3 or 16:10 screen you will get black bars on the top and bottom.

A PowerPoint slide with a 16:9 ratio shows black bars on the top and bottom using a 16:10 screen. 
A 16:9 slide on a 16:10 screen. Showing black bars on the top and bottom.

16:10

This ratio is commonly used by modern screen and beamers. 1280×800, 1440×900 and 1920×1200 are common resolutions used with the ratio.

If you show a slide in this ratio on a 4:3 screen you will get black bars on the top and bottom. On a 16:9 screen you will get black bars on the side.

A PowerPoint slide with a 16:10 ratio shows no black bars on a 16:10 screen.
A 16:10 slide on a 16:10 screen. No black bars showing.

Setting the aspect ratio in PowerPoint

It’s easy to set the required aspect ratio:

In PowerPoint go the “Design” tab on the ribbon.

Click on “Page Setup“.

The PowerPoint application with the "Design" tab selected on the ribbon.

At “Slides sized for” set the desired ratio.

The "Page Setup" dialog with the ratio dropdown box displaying several ratio's including 4:3, 16:9 and 16:10.

Press the “OK” button and you’re set.