Blog Home  Home |  Breeze Home RSS 2.0 Atom 1.0 CDF  
Mick's Breeze Blogs - Biztalk/Sharepoint/... - Office
Things hard and not so hard....
 Monday, February 11, 2008

I'm currently off at ODC2008 here in the heart of Silicon Valley with Clayton James and pre-conference sessions have started.

Free WiFi networks are everywhere on the streets and just about everywhere.....except for our Hotel!! Where it seems to be the only place in Silcon Valley where there is no *free* Wi-fi...nearly all the hotels have some kind of free WiFi in their foyers...except ours. Very bizarre.....

I had a session about the BizTalk Adapter Pack (blogs.msdn.com/adapters)

We're in a session where they mentioned a few 'must' have deployment tools:

  1. SPDeploy - gives you a new Sharepoint Project Option, psexec commands to remotely execute commands.
  2. STSDev - Andrew Connell and co. have come up with their bits and pieces - that go away and 'create' projects in line with what you want to do. So probably a good idea to do run these first.
  3. WSPBuilder
  4. SharepointInstaller

Monday, February 11, 2008 2:58:30 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   Events | General | Office  | 
 Thursday, December 13, 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
{
[Guid("46a8853d-415c-458e-990c-419c12fa04f5")]
public class AdvancedQueryWebPart : DataFormWebPart, IWebPart
{
public AdvancedQueryWebPart()
{
this.ExportMode = WebPartExportMode.All;
}

protected override void SetDataSourceProperties()
{
   try
   {
      // 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;
               rowNode.Attributes.Append(att);
            }
            root.AppendChild(rowNode);
         }
         // 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);
       }
       else
       {
         Label noResults = new Label();
         noResults.Text = "No results were found";
         this.Controls.Add(noResults);
       }
   }
   catch (Exception ex)
   {
      Label lblError = new Label();
      lblError.Text = ex.ToString();
      this.Controls.Add(lblError);
   }
   base.SetDataSourceProperties();
}

private DataTable GetCustomData()
{
   try
   {
      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, December 13, 2007 11:42:47 AM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office  | 
 Wednesday, December 12, 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.

 


Enjoy,

Mick.

Wednesday, December 12, 2007 11:27:35 AM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office | Tips  | 
 Wednesday, November 07, 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, November 07, 2007 12:44:25 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office  | 
 Wednesday, October 10, 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.....

http://technet2.microsoft.com/Office/en-us/library/6a13cd9f-4b44-40d6-85aa-c70a8e5c34fe1033.mspx?pf=true

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

Enjoy!

Wednesday, October 10, 2007 9:18:57 AM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office  | 
 Friday, September 21, 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.

image


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:
image

 

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

image

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.

image

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, September 21, 2007 3:00:59 AM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office  | 
 Thursday, August 30, 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 mind........no 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. http://mrsdewey.com/ - here's a talking person who acts and 'shows' parts of your search results.
(She has a bit of attitude to boot as well)
image 

2. http://www.tafiti.com/ - 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

image
image

Thursday, August 30, 2007 12:11:10 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   General | MOSS | Office | Tips  | 
 Thursday, August 23, 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!!)

BDC TOOL

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!

Enjoy

Thursday, August 23, 2007 1:57:59 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   .NET Developer | General | MOSS | Office  | 
 Tuesday, July 31, 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, July 31, 2007 2:47:04 AM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   Events | TechEd | MOSS | Office  | 
 Monday, June 18, 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, June 18, 2007 4:39:40 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   BizTalk | Insights | General | MOSS | Office | Tips  | 
 Thursday, June 07, 2007

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

where PV is the size in KB.

:-)

 

Thursday, June 07, 2007 4:24:19 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office  | 
 Sunday, May 13, 2007

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 that....my 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, May 13, 2007 6:14:32 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [3]   MOSS | Office  | 
 Saturday, April 28, 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, April 28, 2007 8:44:45 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   MOSS | Office  | 
 Monday, April 23, 2007

Through the MOSS/WSS v3.0 TAP program and the early betas, there was a whole bunch of 'debug' type messages being logged.

I've always loved the MOSS/WSS V3.0 log files - under ...\12\Logs\.... as there's some very funny error messages. Here's such one

04/23/2007 04:50:51.09 w3wp.exe (0x152C) 0x1650 Windows SharePoint Services General 8l1n High An SPRequest object was not disposed before the end of this thread. To avoid wasting system resources, dispose of this object or its parent (such as an SPSite or SPWeb) as soon as you are done using it. This object will now be disposed. Allocation Id: {65D8E0A2-C330-418A-8871-C597A7C612C9} To determine where this object was allocated, create a registry key at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\HeapSettings. Then create a new DWORD named SPRequestStackTrace with the value 1 under this key.

Monday, April 23, 2007 10:08:25 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [2]   Office  | 
 Saturday, April 07, 2007

In case you're not up on it, there's a great Sharepoint conference in the winds (well less than 6 wks away actually) - in Sydney at the Hilton

Here's the conference registration details if you're up to come.

I've been asked to present a couple of sessions at the conference which I can now share with you guys:

Session Title: Essentials 2: ASP.NET Web Parts, Master Pages, and Data Rendering
Audience: Developer


I'll be talking about Web Parts and Web Part structure, also how to create your own Master Pages to fully customise your sites (far cry easier than Sharepoint V2.0....but I won't go there......my therapist says I'm doing fine smile_eyeroll).

As always the DataView webpart is essential and we can do some pretty phenominal things with the latest version included in WSS V3.0.

Session Title: Essentials 4: Templates, Definitions, and Solution Deployment
Audience: Developer

Have you been getting tied up in CAML, dreamt about it lately? nightmares.......well in V3.0 we want to move far away from it.

Deployment of Sharepoint customisations/sites and your fantastic new webparts generally involve a great number of files and assemblies not to mention App.Config files that may need modifications.

In WSS 3.0 - your next new...sorry best friend should be features!!! These are the best things since sliced bread.......they affect future creation of items as well as current sites, lists etc etc.

Come along and hear the full story........ :-)

 --------------------------------------

Angus Logan has done (as always) a great job in organising this event and there are some serious Sharepoints heavyweights presenting at the conference as well as the key members from the Prod. Team coming from the US.

---------------------------------------

 Can't make the conference..........get some serious SharePoint Bootcamp Training that we are partnering with DDLS to provide public training all around Australia  

It's been going like wild fire with courses filling up faster than we can put them on.

One thing I can tell you about Sharepoint V3.0 is that it's a huge product. Come and explore it together......smile_regular

Saturday, April 07, 2007 9:28:27 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   Office | Training  | 
 Thursday, April 05, 2007
Recharge the batteries and look out for that Rabbit :)

I'm back from Perth survived the 'Red-Eye'

Take care,

Mick.

Thursday, April 05, 2007 11:54:20 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0]   Office  | 
 Monday, April 02, 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.

http://www.sharepointblogs.com/sezai/archive/2007/03/23/moss-2007-boot-camp-in-perth-western-australia.aspx

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, April 02, 2007 9:51:34 PM (AUS Eastern Standard Time, UTC+10:00)  #    Comments [1]   MOSS | Office | Training  | 
 Sunday, March 18, 2007

Hey folks - just when you wondering what to do MOSS and when should you jump on board and get cracking....

Microsoft has this great event in Sydney.

Angus Logan is chief organiser and doing a great job....here's a snippet from his blog

--------------------snip-----------------

The Conference

This exclusive Microsoft event is the third and final of three global SharePoint Conferences, following Seattle and Berlin. This world-class, two-day conference, to be held at the Hilton Hotel in Sydney from May 15-16, will showcase the latest innovations, features and functionality for the 2007 SharePoint products and technologies.

The conference will provide an unprecedented opportunity for customers and partners in the Asia Pacific region to meet and network with Microsoft Office System product development teams, fellow IT professionals and architects, and partners.

With only 500 places available, this event is not to be missed!

Expert Presenters

SharePoint experts from the Asia Pacific region and members of the SharePoint product group such as Derek Burney (General Manager), Mike Fitzmaurice and Joel Oleson (both Senior Technical Product Managers), will provide attendees with technical information and demos for the latest release of SharePoint products and technologies: Microsoft Office SharePoint Server 2007, Windows SharePoint Services 3.0, and Office SharePoint Designer 2007.

And for the first time in Australia, information on Microsoft Office PerformancePoint Server 2007 will be presented.

Brand New Deep Dive Content

Multiple tracks focused on specific solution technologies including Collaboration, Enterprise Search and Portals, Business Intelligence and Enterprise Content Management will be offered. Plus, there will be additional opportunities for attendees to learn about, and get hands on experience with, SharePoint products and technologies.

Technical “how to” breakout sessions covering subjects such as architecture, security, integration, deployment, migration, management and scalability, will help attendees develop, customise, integrate and build powerful, enterprise-ready solutions with SharePoint products and technologies.

** UPDATE - Plug about the Cabana Sessions **

Instead of just the normal "break out" sessions we will be running cabana sessions during the lunch break. These will typically be run by Microsoft partners about solutions or problems they have overcome - hopefully really cool stuff in good 30 minute sessions.

Event Details

Dates: 15-16 May 2007
Venue: Hilton Hotel in Sydney, Australia
Cost: $549.00 for two days (includes registration, Welcome Night, conference sessions, and evening entertainment event)

Save the Date

Registrations for this conference will open soon (look for an announcement on this blog), and seats will be strictly limited. Block off May 15-16 on your calendar right now, so you won’t miss out!

What about Partner Sponsorship?