Things hard and not so hard.... RSS 2.0

Folks - my blog has moved to

# Wednesday, 23 December 2009

Hi folks, we’ve used our SharePoint expertise and knowledge to distil SharePoint 2010 product feature set, to provide a rich 5 day course for you.

I believe with SharePoint in particular that as a developer you *need* to know details about the SharePoint environment that is running your code, and as an Admin, you need to know what and how the developer provides the additions/customisations that they do.

Check out the details and you can register with Microsoft here.

We’re really excited about the offering and have a great Christmas break.

See you soon… ho ho ho…

Wednesday, 23 December 2009 21:59:24 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Admin | 2010 | Training
# Tuesday, 03 November 2009

A few tidbits to share with you so far.

SharePoint 2010 architecture

WSS has gone through a name change (there was a time when WSS stood for ‘Web Storage Server’ that SharePoint V1 + Exchange 5.x were based on) and is now called SharePoint Foundation 2010.

I’m guessing that this name is more inline with Microsoft’s thinking around getting SharePoint as the backend/foundation in Companies, as Office is standard on user’s desktops.

Setting up your Development Environment:

(no more WSPBuilder…the SharePoint tools are baked into VS2010 beta 2. A nice feature is that you can select what a ‘Deploy’ does, or a ‘ReDeploy’ by essentially adding all these actions to your config, such as ‘restart IIS’, recycle app pool, make web.config change… You just package them up – nice!)

  1. SharePoint 2010 Beta Center - *** Great place to Start ***
  2. SharePoint 2010 SDK -
  3. Visual Studio 2010 Beta 2 - (this will work with the upcoming beta release of SharePoint 2010)
    Point to note: .NET 4.0 introduces WF4.0, however at this point SP2010 supports only 3.51. There are some *very* significant changes in Workflow between these 2 versions and we’ll have to wait and see the outcome. Performant 10-30x faster, reduced memory footprint, more flexible, clean XAML, more events etc etc.
  4. One last little point – where is the Public SharePoint 2010 download….unfortunately not yet will be soon and should be up on Dev Center Downloads -

In the meantime, be sure to check out the changes and enhancements to the SharePoint 2010 API model and some of the new capabilities such as:

  1. Powershell everything
  2. Check out LINQ/ADO.NET Entities integration and querying data
  3. Performing JOINS in CAML
  4. Client.svc – client side proxying, batching of requests and sending them through to SharePoint 2010. Very fast, as we only send what we need.
  5. Workflow exporting/importing from Visio->SPD->VS.NET->Deploy.
  6. Sandbox Solutions – now we can target our SharePoint Solutions to the Site Collection Level (rather than previously targeting only the farm). When we create this solution in VSNET2010, it rebinds to a ‘fake’ Microsoft.SharePoint.dll (v14.0.0.39 from memory) that introduces all the restrictions in your code and provides special intellisense. Commands such as ‘Run Under Elevated Security’… get caught on compile as these are not allowed.

    Could you be in the situation where your code compiles but the *real* SharePoint ‘foundation’ says ‘no!..that instruction is not allowed’ – it’s possible, as you’re not actually compiling against the real DLL.

    Currently there are several projects that you can’t sandbox based on their type – such as Workflow Projects. These still need to be targeted to the Farm.

    Worth checking out – specifically if you’re hosting SP sites.
  7. AJAX through out – even WebPart editor toolparts you can introduce AJAX there for alot of the lookups etc.
  8. Other noted feature is that Throttling is on by default – so if you say “list.Items.AllItems” and that returns back 50000 usually, SP2010 will error. You have to explicitly ask to make the request without Throttling (couple of properties you set before hand)
  9. Your WSSv3.0/MOSS sites can be *supported* in SP2010 and stay at their existing UI Level (look and feel), then at a later point we can flick the switch and see your site under the newer/AJAXY UI – through the APIs we can change it back SPWeb.UIVersion = 3 or 4.




Tuesday, 03 November 2009 00:39:37 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Admin | 2010
# Monday, 02 November 2009

Well – after spending *far* too long trying to get a little Red X to disappear from my BTS Configuration tool, so I can have a green light to configure the SharePoint adapter, I thought “There’s got to be an easier way”

Exhibit A – your honour. The SharePoint Adapter Configured.

So – what I did was roll my sleeves up and do this by hand.

This particular install – BTS09 x86, I installed WSS V3.0 with Sp2 and created a local sharepoint web application, site collection and had a whole bunch of SharePoint happiness coming back to me on http://biztalk (my server name).

All good I thought – except the configuration tool didn’t like what it found. I looked at logs, ran network sniffers and even manually ran the tool  Microsoft.BizTalk.KwTpm.StsOmInterop3.exe http://biztalk with success:


But still no joy in the configurator.

Here’s how to do it manually:

  1. Setup your local or domain SharePoint Groups
    Typically this is the ‘SharePoint Enabled Hosts’ Group – if it already exists on the domain, then great, if not create it. For this I created my group on the local machine.
    I also added as members, my biztalk service account and my Sharepoint Service Account.
  2. Configure IIS – BTS SharePoint WS Web Application
    1. Within the BizTalk Installed folders – e.g. c:\program files\Microsoft BizTalk 2009\Business Activity Services, you’ll find the set of WebServices to choose from. Select the right one for your SharePoint deployment.
    2. image
    3. As you can see I selected BTSharePointV3AdapterWS (for WSS V2 SP3, select BTSharePointAdapterWS).
    4. This is the folder you will point IIS to later.
    5. Open this folder and you’ll see a web application with a web.config.tmpl
    6. Copy the web.config.tmpl and rename the *copy* to web.config
    7. Open up your Web.Config in Notepad and configure as follows:

        <?xml version="1.0" encoding="utf-8"?>
                    <!--add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" /-->

            <!-- Change debug="true" if you want to debug this web service -->
            <compilation defaultLanguage="c#" debug="false" />
            <customErrors mode="Off" />
            <!-- Windows Authentication is required for this web service. -->
            <authentication mode="Windows" />
            <!-- Impersonation is required for this web service. -->
            <identity impersonate="true" />
                <allow roles="SharePoint Enabled Hosts" verbs="GET,HEAD,POST"/>
                <deny users="*"/>

            <!-- Uncomment this block if you want to do some tracing of this web service -->
            <!-- <trace enabled="true" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />  -->
            <globalization requestEncoding="utf-8" responseEncoding="utf-8" />

            <!-- The size of a document being posted to SharePoint depends on this setting -->
            <httpRuntime maxRequestLength="100000" />
            <trust level="Full" originUrl="" />
            <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
                <assemblyIdentity name="Microsoft.SharePoint" publicKeyToken="71e9bce111e9429c"/>
                <bindingRedirect oldVersion="" newVersion=""/>

      1. (you can always go back and tighten security up on this when you’ve got it working).
      2. Note the ‘SharePoint Enabled Hosts’ – local group here.
      3. I’ve also removed the ‘Documentation’ tags so I could get some WSDL to make sure it works within the browser.
      4. Save your web.config within Notepad.
      5. NOTE: make note of the Folder Path to get here as we’ll need it in IIS next.
    8. Configuring IIS
      1. Bring up IIS Admin MMC snapin.
      2. Select your SharePoint enabled Web Site, I selected ‘Default Web Site’. Right click when ‘Default Web Site’ is Selected and select ‘Add Application’
        note: IIS 7.0 Manager shown.
      3. Configure this as follows:
        (Note – the App Pool User should be able to post into BizTalk and SharePoint)
        Physical Path: <path you had previously to either V2 or V3 of your BTSharePointV3Adapter…>
      4. Click OK.
      5. To Test your WS: browse to: http://<your server>/BTSharePointAdapterWS/BTSharePointAdapterWS.asmx
      6. You *should* get this:
        You can invoke the IsAlive function and get TRUE back.
      7. If not, then fix your IIS related errors, at this point you’ve got a WS that uses the SharePoint APIs (locally). Some things to check:
        1. Local file security – make sure the Web App Pool acct can access those directories.
        2. Windows Auth is turned on, on your Web App.
        3. Check IIS log files for clues.
      8. You’re done on the IIS side of things, let’s configure BTS Side.
  3. Configuring BizTalk Side
    Fortunately the WSS Adapter is installed as part of the BizTalk Runtime configuration – it’s just not configured. So as far as registering the adapter with BizTalk it’s already been partly done.
    1. Install the “I’ve been Configured Registry Keys” – I took these from a previously successful 2009 install.
    2. Once the registry keys have been applied you’ll need to go and configure the …\TPM key to reflect your setup as follows:
      1. In Particular – configure your SharePoint SiteID to the one you saw in IIS.
      2. image
  4. How is this Different for a x64 bit Install
    1. The IIS piece is the same.
    2. The BTS Piece – the Perf counters are the same,
      but the ..\TPM piece is under HKLM\SOFTWARE\WOW6432Node\Microsoft\BizTalk Server\3.0\ConfigFramework
    3. So you’ll need to ammend 1 of the above 2 REG files.

You’re done!

Why oh why is this so hard from within the Configurator.

NOTE: There *USED* to be a Registry key that told the BTS WSS Adapter where to go looking for the BTSharePoint WS – a URL (..STSServiceUrl). This eliminated the need for a local machine install of SharePoint/WSS. Alas…this is *NOT* the case with WSS Adapter post BTS06.

Monday, 02 November 2009 21:02:11 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
BizTalk | 2009 | SharePoint | MOSS | 2010
# Thursday, 22 October 2009

Grab a look at the SDK – here - and interestingly the BDC (now – Business Data Connectors) and BCS (Business Connectivity Services) are the enhanced former 2007 BDC.


I’ve got lots to talk about and show but where to start….maybe “once there was a developer…” :-)

Stay tuned.


Thursday, 22 October 2009 22:20:47 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Admin | 2010
# Monday, 19 October 2009

Last week I met up with Leonid (MCS SharePoint consultant) whom has a great upfront and practical view on life. Funny guy.

He mentioned to me about a SharePoint Faceted Search – which is a series of Search Web Parts that drill into the Search Index and return metadata tags, content types and a bunch of other stuff to give you accurate search results grouped by Author, Content Type, etc. (what ever you want)

Add them to the search results page of your SharePoint Search and you’re away. The webparts examine the Query String and have a bunch of customisations that allow you to tweak it just the way you like.

Great work Leonid!!!! (he’s a very clever guy – SharePoint Search is one of his passions…Red Wine is the other :) )
You can contact him via e.mail on: xsearch a.t. microsoft dot com

Standard View – notice the red regions, categories with the exact number of results. Where std. search says “..about 512 results”


Adding a Couple of Categories – and looking at Content Type Search.


Here I clicked on Author – Mick Badran and a Content Type of ‘Word’. You can see how the ‘advanced search’ is being visually built for me.

The best thing I like about all of this is that the RHS Web Part is totally customisable. The results all come from an XML File (property of the webpart) that you can customise – we can have icons, map different words/terms for things like ‘Word’ as a content type.
You can even add/remove your own.

The webpart has collapsible sections to it (you can even set how many items you want visible when collapse in the section!) and the collapsing/expanding is driven off Javascript calls back to the Server, so no round tripping.

Simply download, install the Solution, Activate the Feature for your Site Collection and add the Web Parts to your page. Easy as that to get started.

Brilliant – absolutely Brilliant (I’ve already had some of our users emailing me to say how easy it is)

Grab them here from CodePlex -

---- snip from the CodePlex Main Page ----

Project Description
MOSS Faceted Search is a set of web parts that provide intuitive way to refine search results by category (facet).
The facets are implemented using SharePoint API and stored within native SharePoint METADATA store. The solution demonstrates following key features:

  • Grouping search results by facet
  • Displaying a total number of hits per facet value
  • Refining search results by facet value
  • Update of the facet menu based on refined search criteria
  • Displaying of the search criteria in a Bread Crumbs
  • Ability to exclude the chosen facet from the search criteria
  • Flexibility of the Faceted search configuration and its consistency with MOSS administration
Monday, 19 October 2009 10:13:29 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Admin | 2010

With the SharePoint conference starting this week I’m sure there’ll be some great messaging coming out.

When we’re given the green light I’ll talk about the many fantastic improvements on the way to a SharePoint site near you!!!

Stay tuned….

Monday, 19 October 2009 05:57:39 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Admin | Guides | 2010
# Saturday, 10 October 2009

This whitepaper is typically centered around the BTS SharePoint Adapter and WSS V3.0/MOSS 2007.
(I’ll be posting details on SharePoint 2010 integration shortly… :) )

BizTalk + SharePoint: 1+1=3: Integration Best Practices

Brief Description

The integration of Microsoft BizTalk Server 2009 and Microsoft Office SharePoint 2007 brings a whole new set of capabilities to end users. Microsoft Office SharePoint Server gives BizTalk Server a “face,” providing human workflow features and dashboard functionality.

Saturday, 10 October 2009 10:35:04 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | 2009 | MOSS | 2010
# Thursday, 08 October 2009

Hi folks, I recently came across a tool (or enhancements to stsadm) that runs a series of rules against your farm to see if it passes some of the core requirements for upgrading to ‘a future release of SharePoint’ from WSS 3.0/MOSS 2007…so I’m guessing SP2010 :)

Check it out and let me know what you think – I haven’t run it yet…looking into it.

Have fun,


Thursday, 08 October 2009 22:09:45 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Admin | 2010
# Friday, 04 September 2009

Great to see some public information surfacing around SharePoint 2010 and development.

To get started (if you’re not already) here’s the SDK with a CHM file and PDF/XPS on “how to customise the ribbon”.

Doing a little digging in the CHM file, you can see (below) all the different Content categories with some special areas to note:

  1. There appears to be a Visio Server – I guess like InfoPath + Excel Services as they currently stand in 2007.
  2. AJAX + JSON seem to make an appearance at the foundational core – yay! less page reloads.
  3. WCF Services used (*.SVC) as expected and simplified. Also it appears that BDC systems are accessible via a SharePoint custom WCF Binding, making it possible to work on BDC based data from various applications within SharePoint. SharePoint might become the hub ‘repository’ for this sort of information.

Bear in mind *alot* of this information is ‘subject’ to change.

Certainly going fwd it should be very exciting to see what actually ships and whether some of the immediate constraints are dealt with.

Looks like we’re up for another Ribbon experience in this Version of SharePoint from within the Browser.


Friday, 04 September 2009 00:54:21 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | MOSS | Office | Deployment | 2010
# Wednesday, 03 June 2009

Ok – during these more challenging times (who doesn’t love trying to get that Suduko puzzle of life out).

Breeze went into bat for you – my passion and first love (or should I second love – my wife could read this) – the Student!!

Microsoft and Breeze Partner to bring you

Microsoft and Breeze are bringing you this special SharePoint Training offer during June & July only. This is part of a campaign to help businesses use their existing Microsoft technologies to gain business efficiencies during these economic times.

Being better connected internally as well as externally can save businesses’ time and money. I will show you how Microsoft Office SharePoint Server 2007 can help you achieve just that as SharePoint 2007 has some features we think you shouldn’t live without!

I will focus on delivering a ‘real world’ experience as well as having a strong training component. The things I instruct on have to work for me in the field as well!

This four day, intense workshop is designed for IT Professionals and Developers needing effective skills transfer for the new products and technologies delivered with Microsoft Office 2007.

You will have the opportunity for 'hands-on' experience to Develop, Customise and Integrate solutions on the Office 2007 Platform as well as gain experience from the field.

This course has been heavily subsidised by Microsoft at a cost of $1300 ex GST (RRP $2480 ex GST) and is filling up quickly. For more information and registration go here:

-----end the blurb -----

Note – Microsoft Partners can use their Readiness training $$ towards this course.

Chances are you’ve got the technology, got the MOSS environment and now needed to extend and explore.

What a great deal…I’ve still kept my first born ;)

See you there…


Wednesday, 03 June 2009 12:16:23 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Admin | Training
# Monday, 04 May 2009

More Variation support, more standard document support, more bug fixes and an upgrade checker (to make sure you can apply SP2)

Should keep those sites happier for longer…

Details from

Service Pack 2 for the 2007 Microsoft Office system available today!

We're pleased to announce the release of all languages for Service Pack 2 for the 2007 Microsoft Office System, the 2007 Microsoft Office servers, and Windows SharePoint Services 3.0. As promised, this post contains a list of the products that are patched by SP2 with their corresponding knowledge base articles, information on how to obtain the packages, and links to additional SP2 resources. We hope you'll find this to be one of the best service packs produced by the Office team ever!

How to obtain SP2

Recommended Method: Microsoft Update

We recommend using Microsoft Update to apply SP2. Microsoft Update's detection will determine the products and languages you have installed and update your machine all at once.

Optional Method: The Download Center

If you choose not to use Microsoft Update, the SP2 packages are available for download from the Microsoft Download Center. Please click here to find links to the downloads.

Monday, 04 May 2009 15:00:07 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
General | MOSS | Admin
# Sunday, 05 April 2009

Yep - hot off the press thanks to Stephen a friend of mine (who brought this to my attention)

Don't leave home without it.

Sunday, 05 April 2009 18:55:07 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | MOSS | Admin
# Wednesday, 11 March 2009

If you're in the Melb area - we've got a great offer coming your way

We want to show your technical teams how to get the most out of your existing SharePoint (WSS or MOSS) implementations.

4 Days - Open to Microsoft Partners and Customers
This is an Official Microsoft Event.

Check out all the details here -

Now is your chance to take advantage of these times and make the technology at your finger tips work for you!
Wednesday, 11 March 2009 22:17:42 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Training
# Tuesday, 23 December 2008

With all the developer extensions in recent time around SharePoint (Features, Solutions etc), I've found there seems to be a few little known and little used 'other' APIs within the SharePoint space.

We've got things like WebServices and the SharePoint Object Model (SPSite etc) that we use however, there's a couple of other APIs that could be useful also for the times when you're not running locally on the SharePoint machine - they generally center around HTTP and extending it.

Two (that come immediately to my mind) are:

1. WebDav - early versions of 'Web Folders' used this.

2. RPC (over HTTP) APIs - Front Page and SharePoint Designer still use these.
(InfoPath when submitting forms uses this to promote properties to a forms library)

A great example of this is SharePad for SharePoint on CodePlex

Merry Christmas,


Tuesday, 23 December 2008 15:34:03 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | MOSS | Office
# Wednesday, 03 December 2008

Thanks to all of you who joined me recently for Shannon & my seminar around Gaining Efficiencies in SharePoint.

We had a great turn out and I hope you found it useful - we had around 60 mins....the clock was ticking.

As promised - here's the PowerPoint slides I used in the presentation.

Take care and enjoy.


Wednesday, 03 December 2008 14:53:55 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Events | MOSS | Admin | Training
# Tuesday, 25 November 2008

James, a student of mine this week pointed me to a great tool that 'optimises' your SharePoint site (as well as websites in general).

Runtime Peformance Optimisation (RPO) is the place where it's all at. You basically plug your URL in and it sends you a report on how it can be optimised.

(I'm yet to check this out) James mentioned that it operates off a DLL that you include as part of your swag in the \bin folder (or GAC) and it requires the DLL for runtime operations.

Here's the process.....

1. click on the 'Try now button'


2. Plug the values in for your site..

image image

3. Then peruse over the emailed results at your leisure.....

It does things like Image optimisation, file compressions and even gives you the results in cold and warm boot times!
Very very very nice!


Looks like I'll be talking to Santa this Christmas!!! :-)

Tuesday, 25 November 2008 18:20:07 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Admin | Office | Tips
# Thursday, 06 November 2008


Hi folks, (I've saved the last couple of places....for you)

With the economy being the topic on everyone’s lips at the moment, I have decided to turn my last MOSS bootcamp of the year in to a special week of training where I will show students how to help their business become more efficient during a time of streamlining processes. Whilst I will still cover the main course outline I will be focusing a little more on InfoPath forms and workflow and how students can utilize these tools within a SharePoint environment.

Students attending this bootcamp will have an added bonus of being able to attend my seminar on the Wed Evening covering more on this very topic……

Breeze MOSS Bootcamp Course is scheduled for November 25-29th.
Love to see you there :-)


Thursday, 06 November 2008 22:11:43 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office | Training
# Thursday, 14 August 2008

John Powell has a great article (with piccys) that will hopefully get you out of a pickle.

Thanks John!

Thursday, 14 August 2008 09:56:03 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | MOSS | Tips
# Sunday, 13 July 2008

After the more than normal pain in getting this done for my previous post, I decided to post the fruits of my labour (not labor that my wife tells me about watermellons and men wouldn't know the first thing about birth....I'm not about to do the pepsi challenge on that :))

- this is a stock standard Web.Config for a MOSS install NOT a plain WSS install (there's about 3 lines different from a plain WSS install to a MOSS install - mainly anything that references SharePoint.Publishing....)

Grab this and these are the changes that WORK!




Sunday, 13 July 2008 22:38:41 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | MOSS | Silverlight

"Could not load file or assembly 'System.Web.Silverlight, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies."

You're starting to Roll your sleeves up and get dirty with Silverlight 2 Beta 2, load up some of the Silverlight Blueprint for SharePoint Samples, run the installer (it's great that most of these examples have an installer) and Boom! you get the above error!!!

Here's a list I've compiled to get Silverlight working - I'm currently running this on Win2008 IIS7

(1) Install WSS SP1/MOSS SP1 on your SharePoint box if you haven't already. You need the SP1 to support .NET 3.5 calls through SharePoint - my guess is that these tell SharePoint not to intercept the calls and let them go to their rightful owners.

(2) Create a 'dummy' site collection on a test Web Application - e.g. http://localhost:81 - This is so you can see all the changes to the web.config that are made through the installation process, in isolation. By keeping this separate to your usual web.config, you'll be able to merge changes at a later date.

(3) Install the Silverlight 2 Beta 2 runtime and other developer bits - From - VS2008 Developer Bits and just the runtime if you want from here

(4) Do one installation of a Silverlight for BluePrint Sample - the installer creates a 'virtual directory' under your Web Site called ClientBin where the various Silverlight 2 files go (*.js, *.XAP). This is a handy install so you can see what the directory execution settings are required to make this work through SharePoint. i.e. Execute permissions only. Take note of this directory.

(5) Add a IIS MIME type - With Silverlight 2 beta 2 - there is a new file type added which is a *.XAP file type. IIS by default doesn't know how to encode/translate or send these files down over the wire.
Add a mime type of: Extention: xap Mime Type: application/x-silverlight-app to your IIS Test Web Site

(6) Make Web.Config changes - there's a whole series of Web.Config changes to be made to your SharePoint Web Application to support AJAX/.NET 3.5 and now Silverlight.... fortunately other hard working folks have done this for you!!!! :) Bless their cotton socks! - grab the Feature that makes the modifications from here (** NB: you want the 3.5 config feature)

You're almost done........ :)

(7) EXCEPT for the error above!!! After much inspection of your system, you'll realise that you *don't* have that DLL (on a clean install). The Silverlight Ninja will know that this is from Silverlight 2 Beta 1 and not found in the Beta 2 kits!! Yay team!

The System.Web.Silverlight.dll is found in the Silverlight 2 beta 1 SDK - so download that puppy, extract out the DLL and either GAC it, or add it to your BIN directory on your SharePoint site. (I added it to my BIN directory - as I reckon when SL2 is released, this problem would have been resolved)
(**UPDATED: Due to how painful that was, I decided to package up the DLL for you - HERE**)

Here are the Compiled Files - FOR SL2 BETA 2 - they WORK!! :-)

(I grabbed the Blueprint Hello World Web Part and updated to work)

1. Silverlight Web Part DLL

2. Silverlight *.XAP updated for Beta 2, copy straight to the *sub-directory* under your client BIN

3. Sample SharePoint Web.Config with all the changes! :-)

Sunday, 13 July 2008 21:08:09 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [4] -
.NET Developer | MOSS | Silverlight
# Wednesday, 02 July 2008

There's a great line up this month that are too good to keep secret.

Some fellow CSD experts are lining up for some great topics to give all around Workflow and WCF!!!

Does it get better? Get on and register.

For more, check out the Live Calendar 

Live Webcasts

MSDN Webcast: Transactional Windows Communication Foundation Services with Juval Lowy (Level 200)

Monday, July 7, 2008

10:00 A.M.–11:15 A.M. Pacific Time

MSDN Webcast: Using Windows Workflow Foundation to Build Services with Jon Flanders (Level 300)

Wednesday, July 9, 2008

10:00 A.M.–11:00 A.M. Pacific Time

MSDN Webcast: WCF Extensibility Deep Dive with Jesus Rodriguez (Level 400)

Friday, July 11, 2008

10:00 A.M.–11:00 A.M. Pacific Time

MSDN Webcast: Bringing Enterprise Data to Life with SharePoint Server and Windows Communication Foundation (Level 300)

Friday, July 18, 2008

10:00 A.M.–11:00 A.M. Pacific Time

Wednesday, 02 July 2008 13:41:05 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | Insights | RFID | Usergroup | Events | MOSS | Silverlight
# Thursday, 22 May 2008


Thursday, 22 May 2008 15:49:28 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Tips

Back in V2.0 we had a Web Service that did this sort of stuff for us, now in V3.0 it's delivered straight from the Object Model.


  1. We create a batch of XML which could have 'adds, updates + deletes' in there.
  2. We call the web.ProcessBatchData(xml) method, handing to it our wishes.

This technique is fast, and CAML based :(

So if you need to add 100 items to the list - this would be a way to do it. (I've got to check whether this technique fires event handlers on the lists or whether it's a 'back door' thing)

Note: in the snippet below, the fields are referenced via their namespace#<name>
- you can get the field's details by saving your list 'As a template', downloading the *.stp file, renaming to *, opening it and looking into the *.xml file there.

- you could also call the lists.asmx webservice (..\_vti_bin\lists.asmx) and calling the GetListCollection(); method to see a chunk of describing XML.

   1:  "<ows:Batch OnError=\"Return\">" +
   2:              "<Method ID=\"A1\"><SetList>" + myGuid + "</SetList>" +
   3:                  "<SetVar Name=\"ID\">New</SetVar>" +
   4:                  "<SetVar Name=\"Cmd\">Save</SetVar>" +
   5:                  "<SetVar Name=" +
   6:                      "\"urn:schemas-microsoft-com:office:office#Title\">" +
   7:                      "New Manager</SetVar>" +
   8:                  "<SetVar Name=" +
   9:                      "\"urn:schemas-microsoft-com:office:office#Body\">" +
  10:                      "Congratulations to Mary for her promotion!</SetVar>" +
  11:                  "<SetVar Name=" +
  12:                      "\"urn:schemas-microsoft-com:office:office#Expires\">" +
  13:                      "2003-09-14T00:00:00Z</SetVar>" + 
  14:              "</Method>" 

Here's a small MSDN article on it -



Thursday, 22 May 2008 15:39:46 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Tips
# Wednesday, 21 May 2008

(it even includes MOSS 2007 BI Dashboards)

This is one of the best BAM posters I have seen to date. As part of your Bat-Utility belt this is a must.

You could even print it out and stick it on the wall in the never know....that raise should come sooner rather than later :)

Download the poster from HERE

Wednesday, 21 May 2008 21:07:29 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | MOSS
# Tuesday, 13 May 2008

Clayton sent through a great picture that explains what the main placeholders are on SharePoint Master Pages.

Well done CJ - thanks!


Tuesday, 13 May 2008 23:37:37 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [2] -
MOSS | Tips
# Wednesday, 19 March 2008

Hot off the 'Hot-Cross Bun' RFID Conveyor belt (Happy Easter all also!!!) - myself and local Sharepoint MVP funny man - Ivan Wilson will be delivering the sessions...
(How do you have a conversation with more than 3 MVPs in the room??? you don't- they all talk about themselves :-) - that's mine, not Ivan's)
which will be great news....just have to get the content didn't hear me say that smile_wink

MS Partner Training Schedule in the land of MOSS

This is for an Instructor Led 'Chalk & Talk Session' designed for Pre-sales Technical Consultants, Technical Consultants, Technical Project Managers, Architects and Business Analysts 

Dates First:
Brisbane – April 3 & 4
Melbourne – April 7 & 8
Sydney – April 10 & 11


What is being covered is:

1.     MOSS Capability Overview - a brief discussion of the six major functional areas in SharePoint 2007:

o    Collaboration

o    Portals

o    Search

o    Web Content Management

o    Business Forms

o    Business Intelligence

2.    Understanding the "MOSS Building Blocks" - a description of both the physical and logical components that make up a SharePoint solution. We discuss how they fit together and how you can combine these to ensure your solutions can scale to meet demand

3.    A tour of the Central Administration site - gain an insight into how a SharePoint Farm is administered.

4.    Applications, Site Collections and Subsites - explore the main components used to build any SharePoint site. Learn what capabilities are managed at each level.

5.    Inside a sub-site - now that we understand the high level components we can get into the details of what makes up a subsite. We examine:

o    Document Libraries and the SharePoint Document Management concepts

o    Lists

o    Web Parts

o    Security

o    Navigation Controls

6.    Search - we look into the rich functionality in MOSS to allow users to quickly locate content that exists inside and outside of SharePoint. We look at how the search capabilities are administered and what options are available to fine-tune the search engine to match your client's needs.

7.    Web Content Management - we look at how SharePoint incorporates Web Content Management functionality. This overview includes:

o    Workflows

o    Master Pages

o    Page Layouts

o    Content Deployment

o    Variations

o    Examples of public sites that use MOSS

8.    Business Data Catalog - the BDC provides a framework to gain access to information stored in third-party products. Learn how SharePoint can make use of this content directly within its own environment

Wednesday, 19 March 2008 15:24:59 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
General | MOSS | Training
# Wednesday, 13 February 2008

Went and caught a session by Chris Johnson around the Studio extensions for Sharepoint, an area that needs to catch up with the pace of the adoption of the product :-)

This Visual Studio Integrated toolset goes a long long way in bridging the gap and streamlining development in Sharepoint.
Features, manifest explorer etc etc.

One of the biggest features in this release is the ability to control the Sharepoint Solution Deployment process for e.g. Chris originally created a solution with 3 Features in it, where he drag' dropped the 3 Feature elements into 1 Feature.


Wednesday, 13 February 2008 12:51:50 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | MOSS
# Monday, 11 February 2008

Wow - a BizTalk adapter Pack announcement is looming (ready March 1 actually).

What is the BizTalk Adapter Pack?? I hear you ask.....I did too when I first heard of it.

Quick Bit of History
- 'Adapters' was a term typically used within a BizTalk space and to build adapters in BizTalk was a 'character' building experience where several COM interfaces needed to be implemented (with some of those interface's origins being in the year 2000!)
- for all that dev effort the 'adapters' only lived in BizTalk -land.

Wouldn't it be great to utilise your Adapter from other 'hosts' or environments such as Word/Sharepoint/Access/MS Project/BizTalk/Your Website etc etc....
(this is a very similar case to the initial *.OCX controls that came out. These controls were based on *.VBX which is something written in VB3 and used in the VB3 environment. Access/C/C++ developers had to duplicate the effort if they wanted similar functionality in their system)

WCF LOB Adapter SDK is the essence here.
- with BizTalk 2006 R2 on the scene, it comes with a 'new' adapter and new adapter 'style' known to trained BizTalk Ninjas as WCF Custom Adapter or BizTalk Adapter Framework V2.0
- so the LOB Adapter SDK is:

  • Free
  • .NET based
  • A Framework and VSNET project template
  • Allows you to build custom 'adapters'
  • Does alot of the heavy lifting for you.
  • Search/Browse/Consume WCF Service metadata
  • Able to be hosted in .NET/.NET related Host environment (BizTalk could be one of these :-)

Enter the (Supported)BizTalk Adapter Pack - (Help files Here)

So the BizTalk team have been busy building on top of the WCF LOB SDK to provide 3 .NET Adapters (at this stage) which allow connections to:

  • SAP
  • Siebel
  • Oracle - Database

So at this point you can grab these adapters and connect straight away - this bridges the gap between you and those systems.
For e.g. Sharepoint can connect straight away, the BDC can connect, your .NET app etc.

The fact it's supported and ready to roll makes it attractive :-)

Briefly the implementation details is that these 3 'adapters' are implemented as WCF Proxy Clients with a custom transport. Any application using these will essentially be calling a 'proxy' to a pretend WCF Service, where the 'Service' is the back end system with the WCF Transport implementing the appropriate features.

The word on the street about Pricing is that it will be under US$6000 and if you have BTS R2 with SA you get the adapter pack. For the rest of us, you need to weigh up the fact how long is it going to take you or your team to develop those adapters/connectors????. Licensing is per CPU.

Just to re-iterate, you do *not* need BizTalk in any version, any way shape or form to run this - you could run BTS Adapter pack from a console app.

Monday, 11 February 2008 16:43:59 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
BizTalk | Insights | MOSS | Tips
# Thursday, 13 December 2007

Well firstly - I've got to say this comes off the back of a great Sharepoint MVP and collegue of mine Ishai Sagi. Big THANKS Ishai!!!

Typically my experience with the DataFormWebPart has been through the eyes of Sharepoint Designer - open pages with webparts on them and looking at the XML configuration of these parts. It look pretty ugly AND very site/web specific - IDs all over the place etc etc.

Ishai the wealth of knowledge came up with this solution - by overriding the SetDataSourceProperties method, you can effectively create a datasource from anywhere!!!! Forgetting the IDs etc that cause all the pain.

I've marked the 2 important lines with (**) in the code.

Big Thanks Ishai!!! Folks he's always one to watch - lock his blog in and learn!! :)

Ishai mentioned that his code below is purely for educational purposes

using System;
using System.Runtime.InteropServices;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using Microsoft.SharePoint.WebPartPages;
using System.Data;
using System.Xml;

namespace AdvancedQueryWebPart
public class AdvancedQueryWebPart : DataFormWebPart, IWebPart
public AdvancedQueryWebPart()
this.ExportMode = WebPartExportMode.All;

protected override void SetDataSourceProperties()
      // Call a custom function that returns the data you want to show as a data table
      DataTable results = GetCustomData();
      if (results.Rows.Count > 0)
         // generate xml for selected items
         XmlDocument doc = new XmlDocument();
         XmlNode root = doc.AppendChild(doc.CreateElement("Rows"));
         foreach (DataRow row in results.Rows)
            XmlElement rowNode = doc.CreateElement("row");
            foreach (DataColumn col in row.Table.Columns)
               string val = row[col].ToString();
               XmlAttribute att = doc.CreateAttribute(col.ColumnName);
               att.Value = val;
         // create an XmlDatasource with the new data, and set it to cache for one second
         XmlDataSource ds = new XmlDataSource();
         ds.CacheDuration = 1;
         ds.Data = doc.InnerXml;
         // bind the web part to the xml
(**)     this.DataSource = ds;
(**)     this.DataBind(true);
         Label noResults = new Label();
         noResults.Text = "No results were found";
   catch (Exception ex)
      Label lblError = new Label();
      lblError.Text = ex.ToString();

private DataTable GetCustomData()
      SPWeb webSite = SPContext.Current.Web;
      SPSiteDataQuery query = new SPSiteDataQuery();
      //look only in document libraries
      query.Lists = "<Lists ServerTemplate=\"101\" />";
      //search for documents that have "Test" in the title
      query.Query = @"<Where><Contains><FieldRef Name=""Title"" /><Value Type="Text"">Test</Value></Contains></Where>";
      //bring back the title field of the documents
      query.ViewFields = @"<FieldRef Name=""Title"" Nullable=""TRUE"" /><FieldRef Name=""FileLeafRef"" Nullable=""FALSE"" />";
      DataTable items = webSite.GetSiteData(query);
      return items;
   catch (Exception ex)
      throw new Exception("There was a problem querying the site with the query", ex);



Thursday, 13 December 2007 12:42:47 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office
# Wednesday, 12 December 2007

Well looks like the team have made ready some great goodies in WSS 3.0 SP1, MOSS SP1 and SPD SP1.

These are Service Packs with enhancements also.

You need to install WSS 3.0 SP1 first then install MOSS SP1 (if you have a MOSS server)

Grab the details from the links below for both x86 AND x64 versions....

Link Details  
WSS 3.0 SP1 (download)

Windows SharePoint Services 3.0 Service Pack 1 delivers important customer-requested stability and performance improvements, while incorporating further enhancements to user security. This service pack also includes all of the updates released for Windows SharePoint Services 3.0 prior to December of 2007. You can get a more complete description of SP1, including a list of issues that were fixed, in the Microsoft Knowledge Base article 936988: Description of the Microsoft Windows SharePoint Services 3.0 Service Pack 1.

MOSS 2007 SP1 (download)

The 2007 Microsoft Office Servers Service Pack 1 delivers important customer-requested stability and performance improvements, while incorporating further enhancements to user security. This service pack also includes all of the updates released for the 2007 Microsoft Office System servers prior to December of 2007. You can get a more complete description of SP1, including a list of issues that were fixed, in the Microsoft Knowledge Base article 936984: Description of the 2007 Microsoft Office Servers Service Pack 1.

New Features in SP1 whitepaper (download) This white paper describes features that are included in Microsoft® Office SharePoint® Server 2007 Service Pack 1 (SP1) and Windows® SharePoint Services 3.0 Service Pack 1 (SP1). In addition, this paper provides some guidelines for planning your solutions to work with current and future versions of Microsoft SharePoint Products and Technologies.  
Sharepoint Designer 2007 SP1 (download)

Microsoft Office SharePoint Designer 2007 Service Pack 1 delivers important customer-requested stability and performance improvements, while incorporating further enhancements to user security. This service pack also includes all of the updates released for Office SharePoint Designer 2007 prior to December of 2007. You can get a more complete description of SP1, including a list of issues that were fixed, in the Microsoft Knowledge Base article 937162: Description of the Microsoft Office SharePoint Designer 2007 Service Pack 1.




Wednesday, 12 December 2007 12:27:35 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office | Tips
# Tuesday, 04 December 2007

The problem about Sharepoint implementations is that typically when you create your Sharepoint Web Application from Central Admin, there is one ContentDB that you assign.

Then spare no more thought to it......

In update KB934525 MS added a new command to stsadm called MergeDBs.

This handles it all for you in a single command. You need to specify, WebApp1 address, contentDB1 and an excerpt of the stsadm -o enumsites command to specify the site(s) you want to 'migrate' to ContentDB2.

Here's a great step by step article by Todd

Well done!

Tuesday, 04 December 2007 11:04:19 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Tips
# Wednesday, 14 November 2007

Move over Thierry Henry(shame he's gone to Barca :), Kylie and U2..... make room for .NET 3.5 up on your wall.

The folks at MS have been super busy, while talking about what will be in .NET 4+ they release the posters.

Stay tuned for more!

Grab the .NET 3.5 Common Types and Classes


Wednesday, 14 November 2007 15:03:55 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | BizTalk | General | MOSS | TechTalk | Tips
# Wednesday, 07 November 2007

Hi folks - I came across a great list of the problem and then the KB article.

MOSS KB Articles + Hotfixes

Well done Sammy!

Wednesday, 07 November 2007 13:44:25 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office
# Thursday, 01 November 2007

A friend of mine Sezai spent a great deal of time putting together a great list of WSS/MOSS articles. Thought I'd share them with you - thanks Sezai!!!

SharePoint Products and Technologies 2007 Customization Policy

Deploying and Supporting Enterprise Search with MOSS 2007 at Microsoft - White Paper

2007 Office System Document: Bringing Web 2.0 to the Enterprise with the 2007 Office System

Microsoft SharePoint Products and Technologies Document: Using Blogs and Wikis in Business

Microsoft SharePoint Products and Technologies Document: Microsoft Office Programs and SharePoint Products and Technologies Integration – Fair, Good, Better, Best

2007 Office System Document: Understanding Workflow in Microsoft Windows SharePoint Services and the 2007 Microsoft Office System


Microsoft SharePoint Products and Technologies Document: Transform Your Business With SharePoint Products and Technologies


Microsoft Best Practices Analyzer for Windows SharePoint Services 3.0 and the 2007 Microsoft Office System


Information architecture in Office SharePoint Server (case study for Fabrikam Industries)


Windows SharePoint Services Document: Application Templates for Windows SharePoint Services 3.0 – Under the Hood


SharePoint Server 2007 Document: Role-Based Templates for SharePoint My Sites — Under the Hood


Plan for building multilingual solutions by using SharePoint Products and Technologies


Planning and architecture for Office SharePoint Server 2007, part 1


Planning and architecture for Office SharePoint Server 2007, part 2


SharePoint Server 2007 Sample: Creating a Custom User Site Provisioning Solution with Office SharePoint Server 2007


SharePoint Products and Technologies Templates: Web Part Templates for Visual Studio .NET


Best Practices: Writing SQL Syntax Queries for Relevant Results in Enterprise Search


Managing enterprise metadata with content types


Evaluating and Customizing Search Relevance in SharePoint Server 2007


Chapter 3: Customizing and Extending the Microsoft Office SharePoint 2007 Search (Part 1 of 2)


Chapter 3: Customizing and Extending the Microsoft Office SharePoint 2007 Search (Part 2 of 2)


Best Practices: Common Coding Issues When Using the SharePoint Object Model


Upgrading an MCMS 2002 Application to SharePoint Server 2007 (Part 1 of 2)


Upgrading an MCMS 2002 Application to SharePoint Server 2007 (Part 2 of 2)


Development Tools and Techniques for Working with Code in Windows SharePoint Services 3.0 (Part 1 of 2)


Development Tools and Techniques for Working with Code in Windows SharePoint Services 3.0 (Part 2 of 2)


Using the Business Data Catalog and Smart Tags with the 2007 Microsoft Office System


Sample governance plan


“Creating Shared Hosting Solutions on Windows SharePoint Services 3.0” whitepaper


Windows SharePoint Services 3.0 Document: Microsoft Windows SharePoint Services Quick Reference Guide


Windows SharePoint Services 3.0 Sample: Example Master Pages


Windows SharePoint Services 3.0 Document: Tips and Tricks - Using Wikis in Windows SharePoint Services 3.0


Windows SharePoint Services 3.0


Windows SharePoint Services 3.0 Application Template: Application Template Core


Windows SharePoint Services 3.0 Application Templates: All Server Admin Templates


Enterprise Content Management From Microsoft  docx  doc


Microsoft Office SharePoint Server 2007 on HP ProLiant Servers - Performance Summary


Working with Large Lists in Office SharePoint Server 2007


SharePoint Server 2007 SDK: Software Development Kit


White paper: Using database mirroring with Office SharePoint Server


White paper: Chaos no more: Steps for building governance into Microsoft Office SharePoint Server 2007


White paper: Integrating Office SharePoint Server 2007 and SAP


White paper: Configure Office SharePoint Server for SAP iView Web Parts


White paper: Data protection and recovery for Office SharePoint Server in small to medium deployments


White paper: Managing social networking with Microsoft Office SharePoint Server 2007


White paper: Upgrading Large Microsoft Office SharePoint Portal Server 2003 Intranet Portals to Microsoft Office SharePoint Server 2007


White paper: SharePoint Products and Technologies governance checklist guide


2007 Microsoft Office System Business Intelligence Integration


Microsoft SQL Server Reporting Services (SSRS) Installation/Configuration Guide for SharePoint Integration Mode


White paper: Guide for Office SharePoint Server Management Pack


White papers: Role-based My Site template setup guides


White papers: Excel Services step-by-step guides


Sample project plan: Office SharePoint Server 2007 deployment (Office Project 2007 format)

Sample project plan: Office SharePoint Server 2007 deployment (Office Project 2003 format)


Downloadable book: Web Publishing and Planning Guide with Microsoft Office SharePoint Server

Thursday, 01 November 2007 17:30:57 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | General | MOSS | Tips | Training
# Wednesday, 10 October 2007

I came across this article some time ago and always needed a reference to it.

So I thought I'd pin it to my mental noteboard in the sky for all to share.....

Great article on how much MOSS/WSS can handle, from speed differences with site enumerations through to max elements in lists and doc libraries. Some very good numbers


Wednesday, 10 October 2007 09:18:57 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Office
# Friday, 21 September 2007

I had a little time this week and thought I'd write a quick stsadm extension to enumerate and set index ranking parameters, when querying MOSS indexes.

My main motivation was so you could change the ranking order of XLS files over PPT files etc.

There seems to be a ancient art in setting these values.

So what's included:

1. an XML file that needs to be copied to the \12\Config folder. Tells stsadm about the new commands and what class to run.


2. A .NET assembly that needs to be GAC-ed so the stsadm doesn't have to look too hard to try and find the class.

Creating an extension is a pretty easy thing - extend an interface as follows:


The next part was to interface with the indexing service as follows:


The keyValues collection are created by stsadm and passed into your method - how good is that.smile_regular

To get access to the Ranking and SearchContext classes a few additional references are required. Such as:

- Microsoft.Office.Server
- Microsoft.Office.Server.Search
- Microsoft.Sharepoint.Search

These are all in the attached project.

Running the enumindexrankparams looks a little like this:
(these are some secret numbers to do with weightings of 'click depth', 'url depth', language etc. A value of 0 is ignored. I'm still working through what these exactly are - apart from the file type ones)

As I understand you can't add additional weightings here for file types like PDF etc.


the commands to run this are:

1. stsadm -o enumindexrankparams -site <url to ssp>

2. stsadm -o setindexrankparams -site <url to ssp> -<rank name> <rank value>
    stsadm -o setindexrankparams -site <url to ssp> -filetypepriorlistitems 1

Have fun - the project shows you how to extend the stsadm and also start to get a bit of a feel of the Search/Index APIs.

Grab the source here -

Friday, 21 September 2007 03:00:59 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Office
# Friday, 31 August 2007

The ever vibrant Andrew Coates pinged me an email yesterday asking for my involvement in becoming a TechTalk Blogger........

I'm currently on this Island called 'Hamilton' at a 'Partner' Conference (yeah right!!! :)) so naturally I said 'yes!' (not too many people are saying 'no' around here)

I've got some great stories around RFID, BizTalk R2 and obvious integration into WSS/MOSS and what that means.

Hope you're going to join me on a great journey together! Gotta dash the scuba diving boat is waiting for me... (erm...the next 'partner activity')


Friday, 31 August 2007 11:57:01 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | Events | General | MOSS | TechTalk
# Thursday, 30 August 2007

I'm currently kicking back at the partner conf. here on Hamilton Island - I have to kick myself to remind me that I am on a conference. Beautiful scenery and temperature....I'm sure you get the classic sunset palm tree over a beach image in your more need to be said.

What I did want to share - I'm currently listening to Ian Polangio (MS Sharepoint TS) where he brought up a couple of great (beta) Search sites.

1. - here's a talking person who acts and 'shows' parts of your search results.
(She has a bit of attitude to boot as well)

2. - silverlight based search site. Builds trees and it's quite interactive.
I did a search on my name 'Mick Badran' and some interesting results came up :-)

Very interactive in Silverlight - lots of things spinning and moving and pinning


Thursday, 30 August 2007 12:11:10 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
General | MOSS | Office | Tips
# Thursday, 23 August 2007
What a great relase of a new WSS/MOSS SDK (couldn't have come at a better time for me :-).

In this latest release we have some goodies packed in to the SDK - the BDC Tool - which allows you to visually create a BDC Application Config file (.xml) that is based on both OLEDB/ODBC and Web Service data sources.

This was one of the major complaints from business when looking into the BDC (BDCMan did do a great job)

Sharepoint SDK Refresh (175MB!!)


Brief Summary of What's included (taken from the Sharepoint page above):
-ECM Start kit also included
-updated workflow samples
-SSO provider samples (to use SSO to access your own people stores)
-BDC Tool + further BDC samples (SAP, custom etc)
-Document Inspector custom sample
-Document Converter custom sample
...and the list goes on.....

either which way - this release is BIG!


Thursday, 23 August 2007 13:57:59 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | General | MOSS | Office
# Tuesday, 14 August 2007


Wow what a session!! Being a Level 400 session my expectation (from those who make teched) was to go reasonably deep. I had a fantastic crowd with standing room only in the theatre room - my last session of the day (being my 3rd) I was knackered and ready to go out with a bang.

So I decided to jump into the Workflow Foundation and discuss *what is actually done behind the scenes* with Sharepoint's WF management. This was well received (and I'm sure a few people in the audience were saying 'So I just want to know how to approve something'....we got onto that later) and opened up a few concepts explaining why we do the things we do within our Sharepoint Workflows. e.g. Task Correlation Tokens and new Task IDs, why we need to generate new ones if we handle a task changed event.

I then got onto some of the Sharepoint Workflow Implementations and wanted to highlight the use of a State based workflow as opposed to the usual SequentialWorkflow.

*** DEMO CODE WILL BE POSTED SOON FOLKS *** (don't have my vpc with my to extract out my projects for you right now)
Slide Deck:OFC409_Mick_Badran_Workflow_Deep_Dive.v1.2.pdf (977.98 KB)

Tuesday, 14 August 2007 23:01:42 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Events | TechEd | MOSS
# Tuesday, 31 July 2007

Hi folks, I'm busily preparing for TechEd2007 and one of my session is developer focused  about Workflow in Microsoft Sharepoint.

This will be where all my slides and sample code will be shortly :)

See you soon.....

Tuesday, 31 July 2007 02:47:04 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Events | TechEd | MOSS | Office
# Tuesday, 10 July 2007

We've got a decent PDF IFilter from found on the MS IFilter Blog.

The IFilter team have been busy and while this IFilter is by a third party, I believe it has under gone some internal MS testing.

One of the things I've had trouble with in the past has been Native Adobe Compression within PDFs. In the later versions of PDF writer/distiller etc. when outputting a PDF, one of the options is to select the amount of compression (a slider bar from memory).

I was onsite and noticed that out of the 400 PDFs in our 'test' folder, around 50 were not being properly indexed (only filename, filesize, location etc were 'extracted').

All of these 50 documents had PDF compression set to 'high' (there were 4 different compression settings)

You may or may not have to add the work around below - Foxit have updater their installer.

---- snip ------

Long awaited 64-bit PDF IFilter finally available.

Finally we have a 64 bit PDF IFilter - surprisingly the solution is not from Adobe or Microsoft, but from a company called Foxit Software.The IFilter is compatiable with the following Microsoft products: Windows Indexing Service, MSN Desktop Search, Internet Information Server, SharePoint Portal Server, Windows SharePoint Services (WSS), Site Server, Exchange Server, SQL Server and all other products based on Microsoft Search technology.

 There's one simple workaround to get the filter running on 64 bit MOSS 2007. The steps are given below.

1. Install Foxit 64bit PDF Ifilter.

2. Add a pdf extension in MOSS search settings

3. Open regedit, locate [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0\Search\Setup\ContentIndexCommon\Filters\Extension\.pdf]

4. Change the default value to {987f8d1a-26e6-4554-b007-6b20e2680632} .

5. Recycle the search service: net stop osearch
                                              net start osearch

6. Start a full crawl to index your pdf documents :)

Tuesday, 10 July 2007 12:38:24 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
General | MOSS
# Wednesday, 04 July 2007

MOSS and reporting services integration......

After installing SQL2005 SP2 and SharepointRS.msi (Sharepoint 'extensions') you're left to do a 'small' amount of configuration. Basically telling the MOSS environment where to find the Reporting Services Server.

Previously this has been a difficult step - almost a journey of discovery. Here's the answer.

From Central Admin->Web Application->Reporting Services Configuration Integration

From below the 1st box always gives grief - the label title and the description seem to indicate different things.

So just to put this to bed - the Web that you have ReportingServices installed - point off to the ReportService WebService - you're good to go!

Wednesday, 04 July 2007 14:27:17 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Monday, 18 June 2007

Currently I'm setting up a system and found an interesting 'challenge'. After some sweat and tears I stumbled upon this Microsoft article.

In the article it appears that running IIS 6.0 on a 64-bit box is cool. (obviously or there'd be trouble)

It's also cool to run 32-bit ASP.NET apps in 1.1/2.0

It is not cool to run a mix of 32- and 64-bit in the same IIS.

Thought I'd save you my pain!

Monday, 18 June 2007 16:39:40 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | Insights | General | MOSS | Office | Tips
# Tuesday, 12 June 2007

Hey guys, I've got a couple of seats left for some MOSS 2007 training at the end of this month.

If you're wondering what all this WSS/MOSS stuff is all about, I'll be running an equally focused MOSS developer and administration course very soon :)

What do I need to say about moss? (if you're using/developing/designing and implementing - come along and fine out what works and what doesnt. Save you a whole lot of head banging later - unless you're at AC/DC :)

Who should go:
- If you have a SPS V2 site you're thinking of upgrading, deployment, farms structures and capacity planning.

- developers - if you're currently building/designing Web based solutions, spend a couple of days looking at what WSS gives you for free! (it's just like another framework within the .NET System space - use what ever parts you want)

- you're curious about what is WSS V3/MOSS/FormsServices/Excel/Infopath web based solutions and must be fluent in 3 languages (that part I made up :) - reminded me of a job description I saw one day)

Check it out - I've managed to reserve a couple of seats.

Course details:
When: Jun 25th - Jun 28th
Where: Sydney

Further Details

p.s. we run the course in conjunction with Dimension Data Learning Solutions to give you the best experience possible.

Tuesday, 12 June 2007 14:35:56 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Training
# Sunday, 10 June 2007

Is it snowing? Is it cyclonic rain in Sydney :)- Microsoft have planned a fantastic 4 day course.
Are you looking for developing in Sharepoint/WSS V3.0?
I'm sure you'll be spending around 60% of your efforts finding and optimal deployment path.....
let's sort that one out.

Jump onto this offer and register while you can - coming up in a few weeks.

For those of you that are coming - save your questions and let's get cracking.

Microsoft Readiness for Partners!!!

MOSS 2007 Developer Intensive – including ECM & WCM

This 4 day intensive workshop gives hands-on solution development with the 2007 Microsoft® Office System including Customizing and Extending Enterprise Content Management Solutions.

This course will teach you:
- how to brand sites WSS sites,
- well as how to extend them with collaboration services, Web Parts, Content Types, and custom workflows.
- The course will also show you how use and extend other server side components, such as the Business Data Catalog, Forms Services, Excel Server, and Report Center.
-The goal is to give you an in-depth look and hands-on experience of WCM capabilities now integrated into Microsoft Office SharePoint Server 2007 from a developer perspective.

Course Level: 300/400
Location: Sydney - 16 Jul 2007 to 19 Jul 2007
Cost: $715 AUD inc GST (this has been subsidised by MS :-)

Register now:

Sunday, 10 June 2007 22:19:00 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Thursday, 07 June 2007

stsadm -o setproperty -pn max-template-document-size -pv 3000000

where PV is the size in KB.



Thursday, 07 June 2007 16:24:19 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Office
# Sunday, 03 June 2007

I came across a good explaination recently from Joel.
Snip....(from Joel's blog - see his for more details)

 Next, what prescan is looking for... 

  • Customized site templates - You need to know which site templates have been customized for a particular site so you can verify the customizations again after the upgrade. Check out the site template upgrade kit for details on these.
  • Sites based on custom site definitions (if you don’t run the correct command for SPS 2003, you’ll see all your areas)
  • Unghosted pages - with URL so you know which sites to focus on (it won't fail if you have these, just report them.)
  • Orphaned objects   Objects such as list items, lists, documents, Web sites, and site collections that have been orphaned.  Correct these before upgrading.
  • Custom Web Parts   Report the existence of custom Web Parts to the appropriate site administrator or developer before upgrading, to give the administrator or developer time to investigate.  
  • Sites that are based on languages or that use controls that are not installed, note these will result in failures if you try to ignore.


Sunday, 03 June 2007 23:07:47 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Tuesday, 29 May 2007

I was recently adding EPM 2007 (Project Server 2007) to an existing WSS/MOSS 2007 setup (farm).
The installation worked a treat...then it came to the business end of the see the Project bits in action.

One gotcha I want to share with you:

1. Project Server allows configuration through an additional element within the MOSS SSP (already created in my case).
Project Server (group) -> Project Web Access Sites

When I first clicked on this guy, I got an error "Project Application Service does not exist or is not started..."
- trouble I thought.
Quick scan of the services on the machine - couldnt find it!

Trick: From Central Admin -> Operations -> Services on Server
- there is an extra 'Server Role', Project Application.
- select it and start the service (this installs the service as well)
- now from the main server role screen, (in my case - Single Server or Web Server...) the Project Application Service is listed and now started :)

Gotta be happy with that!

Tuesday, 29 May 2007 15:16:48 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [2] -
# Wednesday, 23 May 2007

As you know - MOSS is extensible in pretty much all directions. The product team has done a great job on this latest version!!!
There are two elements you need to create to get this to work:

  1. an XML file - tells Sharepoint what characteristics/metadata about your new field.
  2. a .NET class(es) to control the fields behaviour during rendering for view, edit and new modes. (so you can precisely control how the control appears)

My buddy Clayton is up all hours and has nutted out a simple example - check it out here

Wednesday, 23 May 2007 09:35:55 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | MOSS
# Wednesday, 16 May 2007

During the conference I had the pleasure and oppty to spend some time with Andrew and his family. The conference was tooooo short - should have been 4 days.

It's not often you come across great inspiring people, with a great attitude to 'lets see if we can make this better', and a fantastic personality to match!! (nothing worse than wall flowers).

We kicked some tyres around Sharepoint and hatched a few ideas of "what would be really cool if...".(stay tuned)

Very level headed guy with a great perspective on what's important and what's not....I suspect that may have alot to do with his wife Meredith :) (just a hunch!)

It's a pleasure.


Wednesday, 16 May 2007 21:01:40 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [1] -
Events | MOSS | Tips

Wow! What a day - cant believe it all happened in 1 day!! (not groundhog day or so).

A big thank you for those that attended my sessions and I hope we had some fun together during them. As promised here's my ppts and demos for all my sessions.

I presented the following 3 sessions:

  1. (Dev01)Essentials 1: Object Models, Web Services, Document I/O, Event, and Lists (co presented with Ryan Guguid) (download ppt) (fixed)
  2. (Dev02)Essentials 2: ASP.NET Web Parts, Master Pages, and Data Rendering (download ppt)  (fixed)
  3. (Dev04)Essentials 4: Templates, Definitions, and Solution Deployment (download ppt) (fixed)

Given the conference was over 2 days - I thought it might be nice to break the sessions up over a couple days......but then made the night that much more worthwhile :)

The sessions were great and here at the conference they captured all sorts of stats being scanned off evaluation forms directly through (Canon Secure Scan - it talks straight to a Sharepoint list) to sharepoint......then there's a screen constantly displaying all sorts of stats.

I was in the top 10 for a while.......which was great given there are 54 sessions here.
During the night I found myself (attempting) to ride a do that once! :)

During my presentations I had LOTS of DEMOS - the demos are grouped into my sessions:

  • Dev01 - samples in here show (all based within a Win32 app):
    • connecting to Sharepoint - what you would do outside of a webpart.
    • getting details from Sharepoint sites, usage, changelogs, audit and running with elevated perms.
    • Using CAML to query a list, a site and a site collection (SPQuery and cross site queries)
    • Created an Offline Client using Lists.asmx and Copy.asmx webservices.
    • EventHandlers - two of them. A simple one that changes the title of a list item; the other one will grab a property from the User's profile and update the corresponding field in the list. e.g. Region field - the user is assigned to a Region and when they create a document, the Region field with the document also is populated.
  • Dev02 - Some cool demos here....
    • Master Pages - I started with the Minimal.Master and added a DHTML clock to it, and also an IE 7 Search provider (the drop down in the top RH corner that lets you select your search provider). So where ever the users are, they can always just search the intranet simply.
    • WebParts - wouldnt be a demo with out webparts.....I've got WebParts that go and explore the Zone they belong to (minimise all the others and maximise themselves); custom webpart menus; use the SPGrid and SPDataSource object; created a dropdown action menu off one of the columns; connections between parts; and...and....using AJAX within WebParts (I presented a text box to type into and it will query all the document libraries within the current site, as you type and hit enter a SPGrid dynamical re-renders with the results...pretty cool...and I'm no AJAX expert)
  • Dev04 - I based my current site (with all the demos) - Conference Demos and spoke about the value of solutions etc. I ran the Sharepoint Solution Generator over my site and produced the results here.

    Here are the demos!!!!! (3.43 MB)

Wednesday, 16 May 2007 08:48:11 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [4] -
Events | MOSS | Training
# Sunday, 13 May 2007

After being directed by a TechNet article to get the latest version of WDS - I was ready for the install.

Double clicked on wdssetup.exe - ready to roll.

A big error message says "Please remove previous versions....then upgrade"

After scouring add/remove programs and the updates, there was not 'apparent' entry called 'Windows Desktop Search' (I was directed to another article that mentioned if I checked the 'MSN Apps' registry to see if there was a WDS Version registered there.....I had a version number but not much more as in a productID)

I finally resorted to a registry hack - searched for all key/values that had 'Windows Desktop Search" somewhere (as this was the path under c:\program files\..." - and I hacked away.
(this was a VPC image with undo disks turned on - so dont try this at home boys and girls :)

After completing that....I thought I'd re-run WDS 3.01 setup again.......and I got further than before - in fact the furthest I'd gotten.

I arrived at a welcome screen with a 'Next' button....guess what the first thing it did after I hit next..........

".....Upgrading previous versions......" where's that number to book myself in!!! smile_thinking

Sunday, 13 May 2007 18:51:56 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [2] -
MOSS | Other | Tips

Well after battling the Bondi beach Christmas swells in at times what felt like a canoe.....I've come out the other side with a working 'Offline Client' for one of my demos at the upcoming Sharepoint Conference.

A couple of things upfront:

WebServices are found at

http://server/<site>/<supersubsite>/_vti_bin/Lists.asmx (+ copy.asmx)

We make the initial reference inclusive of our Site Hierarchy so the Sharepoint HTTP handlers know what site we're hooking into.

* 1-Gotcha * Lists.GetListCollection(....) - only returns (a chunk of XML) lists that are for the RootWeb and not your subsite/web *even though you specified the direct Url*
(now having said machine might mysteriously get an update overnight from 'those' who are watching and be good again in the morning.......I find that with Vista sometimes smile_zipit)

So check back at the end of the up and coming week for the demos.....maybe I might post my demo code up the night before......smile_regular

Sunday, 13 May 2007 18:14:32 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [3] -
MOSS | Office
# Tuesday, 08 May 2007

There I was preparing some demos for this upcoming conference and BAM, the old API quirks are lurking.

Basically I wanted to simply set the Title or Name fields on a File in a Document Library. All sounds simple enough.

Here's the code:

It's a pretty simple sample, grab the file you want - in my case I'm just picking the first one.
Line 48/49 - compile and run, but do not set the Title of the file element.
*** Lines 50-52 are the winners.

So even though the in lines 48/49, there is actually a 'Title' property and it's settable, it falls on deaf ears as far as WSS is concerned.

I was hoping the File and its corresponding list item were kept in sync......never assume.


Tuesday, 08 May 2007 15:08:39 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | MOSS | Tips
# Sunday, 06 May 2007

While preparing one of my presentations for the upcoming Sharepoint Conference I came across this funny article.

Talks about the principles of poor UI Design (I thought I could be asleep I decided to read 2 words and not to risk me being in a winter hibernation slumber).

I admit I had a good laugh at this - so I'll share. (my favourite is #6)


Golden Rules for Bad User Interfaces

by Gerd Waloszek, Product Design Center, SAP AG – Last Update: 02/27/2007

The SAP Design Guild Website is full of guidelines and tips for good user interface design, and it's not the only one on the Web. Nevertheless, we see examples of bad user interface design everywhere – many more than users would like to see. As people like to do just the opposite of what one is proposing, we thought that it might be a good idea to promote bad user interface design. Therefore, we collected "Golden Rules for Bad User Interfaces" on this page – please help yourself (and do the opposite). We started this page with ten rules and are continually expanding our collection.

Note: The rules are listed in backward order – the most recently added rules come first. In all other respects, the order of the rules is arbitrary and does not reflect their significance.

Golden Rule No. 14: Do not let users interrupt time-consuming and/or resource-hungry processes.

Ignore the users' cancel attempts!

Reasoning: Making processes that put the computer into agony more or less uninterruptible ensures that users take their mandatory coffee breaks.

Example: Start a backup or indexing process while users are not aware of it. Make this process hard to cancel, that is, let it ignore the users' mouse clicks and key presses.

Golden Rule No. 13: Leave out functionality that would make the users' life easier – let them do it the hard (cumbersome) way.

Reasoning: Additional functionality would provide users with too many choices and might confuse them.

Example: When users want to add items to a list, allow them to add items at the end of the list only and let them then move the items to the correct position. That is, do not offer additional functionality for inserting items at their target locations. To add some spice, introduce spurious errors that return items to the bottom when users have already moved them half-way up.

Example: Do not offer the option of selecting multiple items, for example, for moving or deleting items. The option of working on one single item suffices to let users achieve their goals – apart from that it may take a little bit longer...

Example: After inserting a set of new items (for example, by command, drag-and-drop or copy-and-paste) don't show them as selected. This would help users to recognize where in the list the items were sorted in. To detect the items that were just inserted will consume quite some time, besides the pure recall of which items were inserted. (Contributed by Oliver Keim, SAP AG)

Golden Rule No. 12: Destroy the work context after each system reaction.

Wipe out the context!

Reasoning: Destroying the work context allows users to reflect their work and ask themselves whether it really makes sense.

Example: Deselect selected screen elements after a system reaction (e.g. a round trip).

Example: Move HTML pages or tables that have been scrolled down by the user to the top after a system reaction (e.g. a round trip); in the case of multiple pages (e.g. in hit lists or document list) return the user to the first page.

Golden Rule No. 11: Take great care in setting bad defaults: contrary to the users' expectations, disastrous, annoying, useless – it's up to you!

Oh no!

Reasoning: Bad defaults are a nice way to surprise users, be it immediately or – at best, unexpectedly – anytime.

Example: Set default options in Web forms so that users get unwanted newsletters or offers, have their addresses distributed, etc.

Example: Set the default option in dialog boxes on the most dangerous option, for example, on deleting a file or format the hard drive.

Example: In forms, set dates (or other data) on useless default values. For example, set the date for applying for a vacation on the current day.

Golden Rule No. 10: Spread the message of bad examples and live it!


Reasoning: Examples are a perfect teaching method. But as we all know, bad examples are the best – they allure most.

Example: Just follow any of the other golden rules on this page, that's a perfect start.

Example: If you have to make presentations make sure that you include your bad examples in the presentations.

Note: Good examples are hard to find and typically criticized until nobody appreciates them anymore. Why waste time with unproductive discussions?

Golden Rule No. 9: Keep away from end users!

Site visit

Reasoning: You are the expert and know what users need – because you know what you need. Why should they need something else?

Example: If you think that a certain functionality is not needed don't implement it – why should other people need it?

Example: Many end users have many opinions, you have one. That's far easier and faster to implement.

Note: Doing without site visits saves your company a lot of time and money.

Golden Rule No. 8: Make using your application a real challenge!


Reasoning: This teaches people to take more risks, which is important particularly in economically harder times.

Example: Do not offer an Undo function.

Example: Do not warn users if actions can have severe consequences.

Note: If you want to top this and make using your application like playing Russian roulette, change the names of important functions, such as Save and Delete, temporarily from time to time...

Golden Rule No. 7: Make your application mouse-only – do not offer any keyboard shortcuts.


Reason 1: This will make your application completely inaccessible to visually impaired users. Therefore, you can leave out all the other accessibility stuff as well. That will save you a lot of development time.

Reason 2: This will drive many experts crazy who used to accelerate their work with keyboard shortcuts. Now, they will have more empathy for beginners because they are thrown back to their speed.

Golden Rule No. 6: Hide important and often-used functionality from the users' view.


Reasoning: This strategy stimulates users to explore your application and learn a lot about it.

Example: Place buttons for important functions off-screen so that users have to scroll in order to access them.

Example: Hide important functions in menus where users would never expect them.

Golden Rule No. 5: Educate users in technical language.

Teacher Lämpel

Reasoning: Lifelong learning is hip. As many of us spend a lot of their time at the computer, it's the ideal stage for learning. Moreover, sociologists bemoan that people's vocabulary is more and more reducing. Applications with a challenging vocabulary can go against this trend.

Example: Always send URLs as UTF-8 (requires restart) (advanced settings in MS Internet Explorer)

Golden Rule No. 4: Use abbreviations wherever possible, particularly where there would be space enough for the complete term.


Reasoning: Abbreviations make an application look more professional, particularly if you create abbreviations that are new or replace commonly used ones.

Example: Use abbreviations for field labels, column headings, button texts even if space restrictions do not require this.

Examples: Use "dat." instead of "date," "TolKy" instead of "Tolerance Key," "NxOb" instead of "Next Object," and many more...

Golden Rule No. 3: Make it slow!


Example: There are nearly unlimited possibilities of making software slow. For example, you can include long lasting checks or roundtrips after each user input. Or you can force users through long chains of dialog boxes.

Golden Rule No. 2: Do not obey standards!

The evil designer II

Example: Do not use standard screen elements for a given purpose, such as single selection (e.g. use checkboxes instead of radiobuttons because they look nicer).

Example: Do not place menu items into the categories and locations they typically belong to (e.g. place "Save" in the "Edit Menu").

Golden Rule No. 1: Keep the users busy doing unnecessary work!

The evil designer
Example: It's a "good" habit to let users enter data that the system already knows and could provide beforehand.

Example: Let users enter data into fields only to tell them afterwards that they cannot enter data there (e.g. an application lets you enter data on holidays or weekends and tells you afterwards that you cannot work on those days).

Sunday, 06 May 2007 17:34:13 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | Insights | MOSS | Other | Tips | Training
# Friday, 04 May 2007
The way forward is streamlining! Here is a blog article from the ECM team reducing the load time of the approx. 450KB core.js file, by loading it in the background.

This also brings me to another point - if you look at the site. This is driven out of MOSS/WCM or at least the top umbrella pages are.
In terms of a public internet facing readonly MOSS/WCM publishing site - nearly all the interactive functionality is not needed. E.g. lists, drop down floating menus for items within lists (ECB Blocks), etc etc etc (site actions menu).......

A large portion of the client side functionality to all these features is provided by core.js. Of which MS here on there pages has done some extensive Master Page modifications as........there's not a core.js to be seen.........crop circles.......floating cars in Perth......what next.....?

Friday, 04 May 2007 15:52:23 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Tips
# Saturday, 28 April 2007

Have you ever wondered what makes certain search results appear above others in my searches? (rankings) You may have put it down to "that's the rocket scientists algorithm"......I tend to think of it as a magic sauce/wine/sangria or Grandma's special pancakes - a formula refined overtime.

Here's a little insight:

Microsoft's #1 Priority for this release of Search (it's been rebuilt from the ground up from previous versions) is Relevance and Priority of results.
Getting more accurate results appearing at the top of result lists.

Some of the ingrediences going into the sensational pancake mix are (a partial list):

  1. Click Distance - how far away you are from 'authoritative sites'. e.g. take your intranet, it's got documents on it, links to internal and external locations. As you drill down these links, essentially your getting further away.
  2. Anchor Text - html links act as annotations in what their pointing to.
    e.g. 'Link to Footy Results' = http://moss/sites/footy
  3. URL Depth - Generally URLs higher in the heirarchy tend to be more relevant than those below. e.g. simply looking at the number of slashes in a URL this may indicate that you're going deeper and deeper into more specific areas, and loosing relevancy (possibly).
    We can also go and make certain sites/URLs as being 'authoritative sites' that allow us to influence the search ranking and relevance where needed.
  4. URL Metadata - direct matching on text within URLs
  5. Metadata Extraction - automatically extract metadata like Titles, Author, LastModifiedDate etc. from documents etc.
  6. Automatic Language Detection - results in your language bubble to the top.
  7. File Type Biasing - generally speaking, PPTs will be more relevant than XLSs for e.g.
  8. Text Analysis - Text ranking based on matching terms, frequencies and word variations.

    + more.........

So just in case you're ever wondering is there alot that goes into MS Search and getting your results to the top of the list......absolutely!!! I dont quite have the formula to Coca Cola yet...but working on it.......

Saturday, 28 April 2007 20:44:45 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
MOSS | Office
# Monday, 02 April 2007

Together we have trained over 150 students nationally in Australia with the MOSS 2007 Bootcamps during Feb & March.

It has been a big team effort. Thought I’d share some of the feedback we are receiving.

Thanks for the accolades Sezai!

*** updated ***

p.s. I just noticed Dustin's comment on Sezai's blog entry - I've had no such request to remove the name on their apparent exclusive monopoly use of the word 'bootcamp' (for years) - happy to talk. But I dont know how you can claim that word when so many industry groups use 'bootcamp' for many things - even Marriage Counsellors use it!

For the record: Breeze Training has been as heavily involved with Sharepoint as we are today right from the inception of the product with SPS V1 (being on TAP+Beta programs) working with Microsoft US + UK creating and deliverying training around Europe.

End result - we work very hard to make sure that you the student, get's the most informed and best possible time spent together. (as everyone's time is precious and we're not in the business of wasting it)

Monday, 02 April 2007 21:51:34 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [1] -
MOSS | Office | Training
# Tuesday, 27 March 2007

I ran across this great article if you're looking embark on customising your Sharepoint 2007 menus...from Site Settings through to drop down Actions menus, then here is a great MSDN article to start.

--- snip ---

How to: Add Actions to the User Interface 

Using Features makes it easy to add actions to menus of the user interface in Windows SharePoint Services. This example shows how to add actions to various menus through a Feature and how to activate it within the deployment.

Location and Group ID

To define a custom action for a particular menu, you must identify the menu by setting the location to the appropriate Windows SharePoint Services namespace, and by using the ID that Windows SharePoint Services uses to identify the specific location.

For example, to add a custom action to the Site Settings page, set the Location attribute of the CustomAction element to Microsoft.SharePoint.SiteSettings.and specify a particular area within the page through the GroupId attribute.

The following table shows Location and GroupId values that are possible.




Display form toolbar



Edit form toolbar



New form toolbar



List view toolbar



Edit control block menu (per item)



New menu for list and document library view toolbars



Actions menu for list and document library view toolbars



Settings menu for list and document library view toolbars



Upload documents menu for document libraries



Site Actions menu



Site Settings Site Collection Administration links



Site Settings Site Administration links



Site Settings Galleries Links



Site Settings Look and Feel links



Site Settings Users and Permissions links



Site Actions menu for surveys


Different actions may require using different CustomAction attributes to identify the menu in which to place a custom menu item. But you may also need to specify other parameters for the action, for example, to specify a version, user permissions required to perform the action, or placement in relation to existing actions in the menu. The custom actions of the following example show a variety of attributes.

URL Tokens

Windows SharePoint Services supports the following tokens with which to start a relative URL:

~site - Web site (SPWeb) relative link.

~sitecollection - site collection (SPSite) relative link.

In addition, you can use the following tokens within a URL:

{ItemId} - Integer ID that represents the item within a list.

{ItemUrl} - URL of the item being acted upon. Only work for documents in libraries. [Not functional in Beta 2]

{ListId} - GUID that represents the list.

{SiteUrl} - URL of the Web site (SPWeb).

{RecurrenceId} - Recurrence index.


To add actions to the user interface in a site collection
  1. Create a UserInterfaceLightUp folder within the setup directory at the following location: C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES.

  2. Create a Feature.xml file in the new UserInterfaceLightUp folder to provide the manifest for the feature, such as the following.

    Copy Code

    <?xml version="1.0" encoding="utf-8" ?>
    <Feature Id="GUID" 
        Title="Light Up"
        Description="This example shows how you can light up various areas inside Windows SharePoint Services."
        <ElementManifest Location="Lightup.xml" />
  3. To replace the GUID placeholder in the previous Id attribute, generate a GUID by running guidgen.exe located in the Local_Drive:\Program Files\Microsoft Visual Studio 8\Common7\Tools directory.

  4. Create a Lightup.xml file to define elements for the various actions included within the feature. For the sake of example, the URL for each action points to an .aspx file and passes it a value that identifies the source of the request, as follows:

    Copy Code

    <?xml version="1.0" encoding="utf-8" ?>
    <Elements xmlns="">
    <!-- Document Library Toolbar New Menu Dropdown -->
      <CustomAction Id="UserInterfaceLightUp.DocLibNewToolbar"
        <UrlAction Url="/_layouts/LightupHello.aspx?NewMenu"/>
    <!-- Document Library Toolbar Upload Menu Dropdown -->
      <CustomAction Id="UserInterfaceLightUp.DocLibUploadToolbar"
        <UrlAction Url="/_layouts/LightupHello.aspx?UploadMenu"/>
    <!-- Document Library Toolbar Actions Menu Dropdown -->
      <CustomAction Id="UserInterfaceLightUp.DocLibActionsToolbar"
        <UrlAction Url="/_layouts/LightupHello.aspx?ActionsMenu"/>
    <!-- Document Library Toolbar Settings Menu Dropdown -->
      <CustomAction Id="UserInterfaceLightUp.DocLibSettingsToolbar"
        <UrlAction Url="/_layouts/LightupHello.aspx?SettingsMenu"/>
    <!-- Site Actions Dropdown -->
      <CustomAction Id="UserInterfaceLightUp.SiteActionsToolbar"
        <UrlAction Url="/_layouts/LightupHello.aspx?SiteActions"/>
    <!-- Per Item Dropdown (ECB)-->
        Title="MY ECB ITEM">
        <UrlAction Url="/_layouts/LightupHello.aspx?ECBItem"/>
    <!-- Display Form Toolbar -->
        <UrlAction Url="/_layouts/LightupHello.aspx?DisplayFormToolbar"/>
    <!-- Edit Form Toolbar -->
        Title="MY EDIT FORM TOOLBAR">
        <UrlAction Url="/_layouts/LightupHello.aspx?EditFormToolbar"/>
    <!-- Site Settings -->
        Title="MY SITE SETTINGS LINK">
        <UrlAction Url="/_layouts/LightupHello.aspx?Customization"/>
    <!-- Content Type Settings -->
        <UrlAction Url="/_layouts/LightupHello.aspx?General"/>

    Other common GroupId values that can be used include ViewToolbar, ViewSelectorMenu, and PersonalActions (Welcome menu)

  5. Add a LightupHello.aspx file such as the following in the \TEMPLATE\LAYOUTS directory to serve as target for the links created in the previous step.

    Copy Code

    <%@ Page Language="C#"  Inherits="System.Web.UI.Page"%>
    string clientQuery = Page.ClientQueryString;
    if (clientQuery == "NewMenu")
        Response.Write("You came from the new document menu.");
    else if (clientQuery == "UploadMenu")
        Response.Write("You came from the upload menu.");
    else if (clientQuery == "ActionsMenu")
        Response.Write("You came from the actions menu.");
    else if (clientQuery == "SettingsMenu")
        Response.Write("You came from the settings menu.");
    else if (clientQuery == "SiteActions")
        Response.Write("You came from the Site Actions menu.");
    else if (clientQuery == "ECBItem")
        Response.Write("You came from the document's context menu.");
    else if (clientQuery == "DisplayFormToolbar")
        Response.Write("You came from the display item properties form.");
    else if (clientQuery == "EditFormToolbar")
        Response.Write("You came from the edit item properties form.");
    else if (clientQuery == "Customization")
        Response.Write("You came from the Site Settings menu.");
    else if (clientQuery.StartsWith("General"))
        Response.Write("You came from the Content Type Settings menu.");
  6. At a command prompt, type the following commands to install the Feature in the deployment, activate the Feature on a specified subsite, and then reset Microsoft Internet Information Services (IIS) so that the changes can take effect.

    Copy Code

       a. stsadm -o installfeature -filename UserInterfaceLightUp\feature.xml
       b. stsadm -o activatefeature -filename UserInterfaceLightUp\feature.xml -url http://Server/Site/Subsite
       c. iisreset
  7. To see the various custom actions that you have added, navigate to the following locations from the home page of a Web site in the site collection:

    1. Click Site Actions to see the new action on the Site Actions menu.

    2. Click Site Settings on the Site Actions menu to see a new action in the Look and Feel section of the Site Settings page.

    3. Navigate to a document library and open each menu on the toolbar to see a new action on each menu.

    4. In a document library that contains items, click the down arrow for an item to see the new action on the edit control block menu.

    5. On the edit control block menu for an item, click View Properties and Edit Properties to see new actions on the Display form and Edit form toolbars.

Tuesday, 27 March 2007 22:52:23 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [3] -
# Monday, 26 March 2007

Walkthroughs and webcast demonstrations on how the new Search works.


SharePoint Server 2007 Presentations: Enterprise Search Deep Dives

Monday, 26 March 2007 21:07:10 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -

yeah baby :)
I wrote before Christmas how these were coming out....grab them here.....
--- snip ---
Application Templates Available for Download
All forty application templates are available in English. The twenty server admin templates are also available in ten additional languages: French, Italian, German, Spanish, Portuguese (BR), Japanese, Korean, Hebrew, Chinese (simplified), and Chinese (traditional).

Package Downloads

In addition to the following individual download links, you can get the Application Templates for Windows SharePoint Services 3.0 in these three convenient packages. Registration is required for package downloads.

Site Admin Templates: Get all 20 Site Admin templates as a single package download. Available in English only.

Server Admin Templates: Get all 20 Server Admin templates as a single package download. Multiple languages available.

All 40 Application Templates : Get all 40 Application Templates for Windows SharePoint Services 3.0 as a single package download. Package only includes English versions.

Site Admin Templates

Board of Directors

Business Performance Reporting

Case Management for Government Agencies

Classroom Management

Clinical Trial Initiation and Management

Competitive Analysis Site

Discussion Database

Disputed Invoice Management

Employee Activities Site

Employee Self-Service Benefits

Employee Training Scheduling and Materials

Equity Research

Integrated Marketing Campaign Tracking

Manufacturing Process Management

New Store Opening

Product and Marketing Requirements Planning

Request for Proposal

Sports League

Team Work Site

Timecard Management

Server Admin Templates

Absence Request and Vacation Schedule Management

Budgeting and Tracking Multiple Projects

Bug Database

Call Center

Change Request Management

Compliance Process Support Site

Contacts Management

Document Library and Review

Event Planning

Expense Reimbursement and Approval

Help Desk

Inventory Tracking

IT Team Workspace

Job Requisition and Interview Management

Knowledge Base

Lending Library

Physical Asset Tracking and Management

Project Tracking Workspace

Room and Equipment Reservations

Sales Lead Pipeline

Monday, 26 March 2007 21:02:37 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Tuesday, 06 March 2007

Nice comprehensive list of features that you can look at to determine whether your existing spreadsheet will make it all the way to published....or fall short along the way.

Tuesday, 06 March 2007 11:17:27 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office | Tips

After a heavy training schedule last week (collectively we trained nearly 60 students around Australia) one of the frequent questions I got was -
"You know that excel services presentation you had, can I get a copy?"

Well folks it's all available from MS - Have fun and enjoy. Thanks for the great interaction last week!

Getting Up and Running with Excel Services
Step through the process of configuring Excel Services so that you can publish an Excel spreadsheet to a Windows SharePoint Services V3 site.

Tuesday, 06 March 2007 11:02:35 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Training
# Wednesday, 28 February 2007
Wednesday, 28 February 2007 01:53:34 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
# Monday, 26 February 2007

This has been one of the toughest assignments for a while due to the lack of error details. No eventlog and no AD or MOSS Logs.

Basically setting up In-coming Emails works like this:
1) the MOSS Server in the farm will poll a SMTP 'drop' directory (usually c:\inetpub\mailroot\drop). So mail has to find its way to that drop directory.

2) The Sharepoint Directory Management Service will (if told to) go and automatically create 'entities' (contacts) and assign them email addresses in the OU specified below. That's the theory!!

The DM causes a couple of issues - you've got to run the site under an acct. that has access to the OU (you may need to assign assign the appropriate permissions to the OU in AD for this user)

The DM creates these Contacts by supplying a Schema full of info and this inturn creates the Contact. Problem - what if your AD schema doesnt match what DM expects....."Error in Application!"

(This took me the longest - as I had this running in 5 mins on a client site and then on a different go)

The schema 'additions needed' for the DM to work 'seemlessly' are added when you install Exchange2003/2007 - the initial parts of the install are ForestPrep and DomainPrep - I ran these on their own without installing Exchange and the DM worked a treat!!!
(I'm sure you'd be able to add the appropriate schema extensions 1 by 1 without the need for Exchange and then be able to run any mail server - but which ones?)

3) Within Central Operations setup the incoming emails to be something like this:

My server is called MOSS and it's part of the LITWAREINC Domain

3) Now under site settings you can easily enable Incoming emails




Monday, 26 February 2007 01:38:31 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [3] -
MOSS | Tips
# Sunday, 25 February 2007

I thought I'd share some terminology changes for those of you that are MCMS descendants.

MCMS Term -> Now we Say....
Channels -> Windows Sharepoint Sites
Postings  -> Pages
Templates -> Page Layouts or Master Pages
Placeholder -> Field Control
Template Definition -> Content Type
Template Gallery -> Master Page and Page Layout Gallery
Resources Gallery -> Images, document, site collection images, or Site Collection document Library
Resources -> Images or Reusable Documents

Stay tuned for more....

Sunday, 25 February 2007 13:18:19 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
# Wednesday, 21 February 2007

Always handy info to keep at an arms length, especially when doing upgrades of BizTalk 2004 to 2006 or building/migrating Sharepoint webparts from v2.0 to v3.0.

Msdn article found here: Breaking Changes

Enjoy - Mick.

Wednesday, 21 February 2007 15:48:38 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
BizTalk | MOSS | Tips
# Monday, 19 February 2007
Monday, 19 February 2007 09:50:25 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office
# Monday, 12 February 2007

If you're waking up after the new year and thinking about looking at SPS v3/MOSS 2007, it appears that you're not alone.

Breeze Training has put on extra courses due to popular demand. Breeze are partnering with Dimension Data Learning Solutions to bring these to you around Australia!

‘Additional dates have been put on because the 1st bootcamp sold out with a waiting list. For those that missed out we now have an additional date in Sydney for the end of Feb. If you are keen, book quickly as seats are limited.

Here’s the link Microsoft Office SharePoint Server 2007 Boot Camp (fixed link) check for dates in a city near you.



Start Date













Few Places




Few Places





















Monday, 12 February 2007 23:53:22 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Office | Other | Training
# Friday, 02 February 2007

Came across some great sql to dig into the state of documents and their libraries.

Things like - 'top 100 largest documents in all document libraries' plus lots more. Check it out



Friday, 02 February 2007 17:03:47 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Tips
# Monday, 18 December 2006

Usually when referencing an external website we use http://...... and we lose all the security etc. information that comes back from our crawls. (In contrast to the File://c:/docs/... etc etc)

A handy tip you can do is IF you know the site is a sharepoint site you can use the SPS moniker so the indexing service uses the Sharepoint APIs to contact the site as opposed to the http:// protocol handler.
(1) for SPS v2 use SPS://.....
(2) for SPS v3 use SPS3://....


Monday, 18 December 2006 15:39:49 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
MOSS | Tips

When I was onsite recently doing a sharepoint migration to MOSS 2007 from WSS V3 - for whatever reason all the servers (and databases) were blown away and all the client had was one content database of their site.

(Who said client sites werent exciting)

My solution here:
(1) install and configure the farm independent of the original content database
(2) Setup the the Shared Services for the Farm
(3) Extend 1 virtual server and create a new content database.
Here's the trick....
(4) From 'Application Management'->'Content Databases'....add another ContentDB
(5) Now select the original ContentDB as an additional one to add. At this point when you click 'OK' there should be two in the list
(I had to actually drop to the command line as this content database addition was going to take more time than the webinterface allowed.
stsadm -o addcontentdb -databasefile:..... -databaserver:..... -url:......)
(6) From the list of two Content Databases - take the non-original ContentDB offline and then remove it.
Viola! Worked a treak...I had to sort out a couple of things around links etc.

(I did try a few other techniques first and got a whole bunch of errors around 'object not in the correct state')



Monday, 18 December 2006 15:34:43 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Office | Tips | MOSS
<2017 March>
 AppFabric CAT
AppFabric Windows Server Customer Advisory Team - New Blog.
[Feed] BizTalk 2006 - Windows SharePoint Services adapter
BizTalk 2006 Sharepoint adapter!!
 Breeze SharePoint 2010 Bootcamp
Breeze SharePoint 2010 Bootcamp
[Feed] BTS 2006 R2/EDI
[Feed] Chris Vidotto (MS BTS Legend)
Needs no intro....
 Mark Daunt
About the author/Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2017
Sign In
Total Posts: 608
This Year: 0
This Month: 0
This Week: 0
Comments: 270
All Content © 2017, Breeze