Meet Monad - your new best friend

I have been playing with Monad (also known as MSH) for a couple of weeks now... and I like it! It is the new scripting engine from Microsoft that is being developed as part of WinFx.

I started hearing whispers about Monad a few weeks ago, just before Scott Hanselman did his podcast on the subject. This stuff looks really cool, you can seamlessly get access WMI, COM and .Net components.

There appear to be Monad resources popping up all over the web.

One of the things that caught my eye was this great article from Dan Sullivan about accessing SMO (SQL Management Objects) from Monad. The same techniques can be used to access AMO in order to write scripts against an Analysis Services server.

In fact, here is an example of one way of processing the Analysis Services sample database using Monad.

[Reflection.Assembly]::LoadWithPartialName("Microsoft.AnalysisServices")
$svr = new-object "Microsoft.AnalysisServices.Server"
$svr.Connect('localhost\sql05')
$db = $svr.Databases.GetByName('Adventure Works DW')
$db.Process()
$svr.Disconnect()

And here is an example of that script running:

I'm sure there are plenty more useful things that can be done with Monad so keep watching this space.

Print | posted on Wednesday, April 12, 2006 9:40 PM

Comments on this post

No comments posted yet.

Your comment:

 (will show your gravatar)