Rob's profileBob's PatchPhotosBlogLists Tools Help

Blog


    October 31

    InfoPath 101 - Getting started with code.

    You may realise sooner rather than later than later that I'm new to this whole development thing - but it is something that I'm trying to get into.  The issue that seems to be bothering me is 2-fold: being involved with SharePoint means a lot of technologies to develop against and the second is the feeling that instead of starting in the shallow end I seem to be jumping in the pool so that the water just about covers my head... (Oh and before you say well start in the shallow end - the problem is I can't find it!)

    With the aquatic analogy out of the way let's more on to InfoPath.  I've done a couple of projects with InfoPath and they have show the product to be very handy for processing and creating forms.  Looking at an issue this week about creating a submit button that isn't attached to a fixed location I came across and handy guide here.  Very handy, but try step 2 with an out of the box version of InfoPath and you get an unhappy message - you'll need to install VSTA (Visual Studio Tools for Applications) with a 'handy' guide of how to do it.  Except not really.

    It will guide you to go to the add/remove programs, select your office installation, select change and select it.  The problem is that it isn't completely obvious where it is.  Finally this post on MSDN gave clearer directions.

    So before you do funky code things in InfoPath, ensure you install VSTA - and to do that, select change on your Office 2007 installation, select Add or Remove Features (and press continue) and navigate through the InfoPath hive:
    VSTA install location

    NOTE: When you first fire up the code sections you may get this error:

    Error :

    Infopath cannot add the event handler
    Infopath cannot create the visual basic or C# project
    The location for the visual basic or C# project cannot be found or cannot be accessed.

    Please have a look at this blog which may help OR I found that I was using a copy of my form which was renamed (which you can do when publishing the form).  Ensure that the naming is correct.

    September 11

    SharePoint URL Limit

    I had this question asked of me recently (well, yesterday) and found this post on a blog called Lois and Clark which covers off some interesting stuff on URL Limits in SharePoint – here’s the quote:

    “Recently, we've had some discussions about the question whether the SharePoint 260 character URL limit is still in effect in SharePoint 2007. We thought we might write a little blog post about it providing an overview of some facts about SharePoint size limits...

    A site name is allowed to consist of a max length of 128 characters.

    You can create multiple sub sites but the maximum URL length of a sub site is 237. This length excludes the part apparently reserved for system files and folders. If you try to create a new page the system path /_layouts/newsbweb.aspx is added to the URL, which makes a total of 260 characters.

    After reaching that limit, you can still add lists and have subfolders in them. The max length of a doc library name is 255 characters. The max length of a folder name is 123 characters. The max length of a SharePoint URL including lists and folders is 256, excluding system files (for example, /Forms/AllItems.aspx).

    The max length of a SharePoint URL does not include the querystring portion. The max limit of the querystring portion depends on browser limitations. For example, MSIE 6 supports a total of 2047 characters (almost 2K), FireFox doesn't really seem to have a limit.

    To make our testing a little bit easier, we wrote a little tool called the 'URL Length Checker'. Everybody is welcome to download it and use it within their own test scenarios. The tool requires the presence of the .NET 2.0 framework. Download the URL Length Checker or download it's source. “

    The tool is does pretty much what it says on the tin and is fairly basic (it doesn’t need to be complex!).  If posted a screenshot below so that you can get some idea of what it looks like…

    URL checker
    June 26

    Site Definitions and the SharePoint Solution Generator 2008 Part 2

    In the first part of this series I gave a quick intro in to the tools and went through the initial planning stage about creating a site definition.

    Now the Next step…

    Step 2: Installing the Software

    Before any definitions can be created, you need to ensure that your environment is set up.  To use either version of the SharePoint Solution Generator you will need to have Visual Studio installed and also a copy of SharePoint.  This has to be installed on a server environment but van be either virtual or physical.

    The Solutions Generator is packaged as part of the Visual Studio 2008 SharePoint Extensions (currently at version 1.2) and this can be downloaded at this Microsoft Site.

    The system requirements for installation of the SharePoint extensions are:

    • Supported Operating Systems: Windows Server 2003; Windows Server 2008
    • The following is also required:
      • Windows SharePoint Services 3.0 (Basic installation only), or any product built on Windows SharePoint Services 3.0, such as Microsoft Office SharePoint Server 2007
      • Visual Studio 2008 (Standard Edition, Professional Edition, or Team System)

    As an aside there are also some other parts of the WSS 3.0 Tools: Visual Studio 2008 Extensions that will be worth looking at later.

    Step 3: Starting to build the the definition

    Now that’s the software is installed we can get on with the definition.

    The joy with the Solution Generator is that you work in a nice friendly environment that you will probably already know – SharePoint!  What the the planning stage has given us is a list of content holders and columns that are eventually going to be in our New Site Definition which can be plugged into SharePoint.  The first stage will create a new site in SharePoint, add the additional content holders and columns highlighted in the planning and then package it up.

    The first step is to figure out which out-of-the-box site definition to use.  In most cases the Team Site template can be used as this gives a lot of the functionality around what the custom solution will also need (for example, an announcements list for posting about new entries).  Of course if this is to be a totally new type of site, then the Blank Site template may also be worth a look.

    I will assume that you know how to create a site, add content holders and columns.

    For the purpose of this walk through I’ve created a Team Site with a new Document Library called Official Documents with an added column, an Announcements List called Document Announce and an image on the homepage and an announcement added.

    demo site

    Now that the site is created we can break out the tool that does all the magic.

    solgenstartGo to your start Menu and select the SharePoint Solution Generator 2008

    This will fire up a new window with two options available to you:SSG2008 splash

    Make sure that the Site Definition option is selected and press Next.

    ssg2008stg2

    On the next screen you will need to select the radio button at the bottom and enter the web address to the SharePoint Site that you have created.  It is always worth keeping your site open in case you need to refer to is.  This will provide you with details for your site that you may need to refer to later.  After this has been entered, select the Next button.

    NOTE: if you make an edit to the site whilst in the generator, it will not automatically be set up.  You will need to restart the Solution Generator.

    The next screen will provide you with the lists that can be taken as part of the Definition:

    ssg2008sg3

    The key thing to remember here is to bear in mind the base Site Template that your site has been modelled on.  For example, if a Team Site template is used you shouldn’t pick the lists that appear as part of this site by default.  When you come to deploy the solution you will find it will generate errors.

    In this case only the two custom lists (the Document Announce and Official Documents lists) are selected.  Once this is done, press Next.

    On the final screen you will need to provide the name for the solution.  Enter this and then press Next.

    SSG2008stg4

    The final screen will provide a Summary of the solution.  Check these and then press Finish.  The Solution will then be generated and a link provided to view the files, and these look like this:

    outputfiles

    So there you have it!  Your generated solution that is now ready to be deployed.

    June 24

    Tasks lists, attachments and versioning

    There’s a few gotchas that are worth bearing in mind when using tasks lists.  Now this is a pretty specific scenario but worth bearing in mind if you are using task lists.

    Now task lists are like any other lists or library in SharePoint, i.e. you can version items as well as attaching items to a list.

    There is some funny behaviour though if both are combined. 

    1. Firstly if you create a new item in a list and then edit it, this will create a new version.
    2. Now if you attach a file the following happens - a new version is created (as you have edited it), and an attachment then appears only for that version – as you would expect.
    3. Say you want to change the attachment (edit it).  You would go through the following steps – you edit the item (new version created), remove the attachment and attach a new file, all versions that already had an attachment then have the same attachment – i.e. the previous versions of the item that do have an attachment are all updated – if the item is opened in edit mode then a new version of the item will be generated.
    4. So what if you have an attachment that you want to edit?  Will this generate a new version?  No it doesn’t.  It will only update the attachment across all versions.
    5. Final thing that you may have to do is remove an attachment.  You will open the item for editing (new version created) and select the Delete option. This will generate a new version of the item but will then update all versions of the item by removing the attachment.

    So to summarise:

    Description Item Version Attachment Behaviour
    Create an item Item version created within the list No attachment
    Attach a file New version created on the item Attachment appears in this version only
    Change attachment No new version Attachment appears on all versions where an attachment was already present
    Edit an attachment No new version generated unless the item is generated Attachment across all versions is updated
    Delete an attachment New version on the item Attachment deleted across all versions
    June 03

    SharePoint for Squirrels... not what you think

    A new blogger on the proverbial electronic-block is Natalya Voskresenskaya, who has a blog site called SharePoint for Squirrels (http://spforsquirrels.blogspot.com/).  Looks like a very useful blog with some good posts, although it's a shame there's no pictures of Squirrels managing Server Farms... or gerbils running around in wheels inside of servers...

    January 24

    Visio template and stencils

    For those who design and develop SharePoint and use Visio for your diagrammy goodness there's a couple of recourses that may be of some use to you.

    First off is a template and stencil set for designing SharePoint Sites.  This is currently in Beta (it was posted back in March 2006!)  but still quite useful...

     

    The Blogpost for instructions and details is here: Visio template and stencil for designing SharePoint sites (beta)

    The the zip file is here: Visio template and stencil for designing SharePoint sites (beta) - files

     

    Secondly, there is a Post from Maxime Bombardier providing a Site Structure stencil set here: Visio Stencils for Sharepoint 2007 Site Structures documentation. Version 0.2

    There's also a mention of a Page Layouts Stencil, but haven't seen anything there yet...

    Mart Muller provides an architecture diagram stencil set here: Moss Architecture Stencil set

     

    There is also a hefty diagram plus some great surrounding content here: Investing in logical architecture design samples up on the official SharePoint Products and Technologies Blog.

     

    I've used the majority of these stencils and they are very useful for diagrammatically showing Moss Solutions.  The Architecture Stencil Set especially.

     

    If I find an updated Stencil for the Page layout stencil set then I'll post an update.

     

    Enjoy!

    January 16

    How to tell the Version of SharePoint you're running

     

    For those interested in know how to tell the version of SharePoint you're running, here's a handy(ish) little way...

    Firstly go to any SharePoint Site > select Site Settings.  This will tell you the version number of the software. 

    Now go to: http://mindsharpblogs.com/penny/articles/481.aspx to see the ‘internal’ version number against the ‘friendly’ version number.

     

    Here's the key content of the Blog Post

        MOSS 20071 or WSS 3.0 SP1           12.0.0.6219
        MOSS 20071 or WSS 3.0 October public update               12.0.0.6039 
        MOSS 20071 or WSS 3.0 August 24, 2007 hotfix package 12.0.0.6036 
        MOSS 20071 or WSS 3.0 RTM           12.0.0.4518 
        MOSS 20071 or WSS 3.0 Beta 2 TR:  12.0.0.4407 
        MOSS 20071 or WSS 3.0 Beta 2:       12.0.0.4017 
        Office 12 (PDC image - pre-beta):      12.0.0.3111 (This version of Office does not have a support link in the Add/Remove programs dialog box).

    1To confirm that a particular service pack is install on SharePoint Server you must either check the version numbers of specific dlls as specified in the related Microsoft Knowledge Based article or select the Show Updates check box in Add and Remove Programs.

        WSS 2.0 SP3                                    6.0.2.8165 
        WSS 2.0 SP2 KB900929 + KB924881 6.0.2.8117 
        WSS 2.0 SP2 rollup KB900929           6.0.2.8000
        WSS 2.0 SP2                                    6.0.2.6568
        WSS 2.0 SP2 Beta = R2:                   6.0.2.6551 
        WSS 2.0 SP1 + KB887981                6.0.2.6411
        WSS 2.0 SP1:                                  6.0.2.6361 
        WSS 2.0 Unservice packed:               6.0.2.5530

    To confirm that service packs are installed, especially with SharePoint Server 2007, goto Control Panel -> Add and Remove Programs
    Select the product and then click: Click here for support. The versions will
    be displayed as follows:

     

    Windows SharePoint Services 3.0

    Microsoft Office SharePoint Server 2007

    SP1

    12.0.6219.1000

    12.0.6219.1000
    RTM

    12.0.4518.1016

    12.0.4518.1016
    Beta 2 TR

    12.0.4407.1005

    12.0.4407.1005
    Beta 2

    12.0.4017.1006

    12.0.4017.1006

     

    Windows SharePoint Services 2

    SharePoint Portal Server 2003

    SP3

    11.0.8173.0

    11.0.8168.0

    post SP2 rollup

    11.0.8000.0

    11.0.8126.2

    SP2

    11.0.7969.0

    11.0.8126.0

    R2 WSS SP2 beta

    11.0.6551.0

     

    SP1+KB887981

    11.0.6411.0

    With Service Pack 1

    11.0.6361.0

    11.0.6715.0

    Unserviced pack

    11.0.5608.0

    11.0.5704.0

    December 06

    System Center Capacity Planner 2007

    The first, of, what hopefully will be a few posts...sscp2007

    If you haven't already signed up to Microsoft Connect, then I would recommend having a look there.  It is a program ran by Microsoft to allow users to participate in Betas and Release Candidates of software and, more importantly provide feedback on these products (more more info on this go to: https://connect.microsoft.com/intro.aspx)

    The reason I wanted to bring this up was because there are a couple of tools up here for SharePoint infrastructure designers.

    Firstly the main product is the System Center Capacity Planner (SCCP) 2007 Release Candidate.  It does pretty much what it says on the time - allows you to plan for capacity on an infrastructure deployment!  This was initially released with Exchange in mind, and this leads me on to the next thing...

    As of today, the SharePoint 2007 and V3 capacity planning plug-in/templates are also available for the SCCP 2007.  I'm going to have a play today and see what's it's like - could be a useful tool.

     

    As an extension to this, I wanted to highlight the System Center Family as a whole - this has been pretty quiet but there is some great functionality within the family.  Here's a run down from the site for each component:

    System Center Configuration Manager

    The new version of Microsoft Systems Management Server (SMS) includes major feature additions such as OS Deployment, desired configuration management, software update management, and asset intelligence—features that can help you manage your servers, desktops, applications, and devices across the enterprise, in both physical and virtual environments.

    Register nowDownload free trial now


    System Center Data Protection Manager

    This updated version now extends disk-based backup and recovery capabilities to Microsoft applications such as Microsoft SQL Server, Microsoft Exchange Server, and Microsoft Office SharePoint Portal Server across both physical and virtual environments.

    Register nowDownload free trial now

    System Center Virtual Machine Manager

    This new solution uses your expertise and investments in Windows Server System™ technology to provide a straightforward, cost-effective solution for unified management of physical and virtual machines, consolidation of underutilized physical servers, and rapid provisioning of new virtual machines.

    Register nowDownload free trial now


    System Center Operations Manager 2007

    This end-to-end service management solution is the best choice for managing Windows® products because it works seamlessly with Microsoft software and applications, helping you increase efficiency and control in your IT environment.

    Register nowDownload free trial now

     

    The Data Protection Manager is definitely worth a shout out.  Previously for backup and restoration of Moss environments, you may have to use a couple of methods to ensure that you had all the "granularity" bases covered - i.e. I want to backup and restore my whole environment, but I also want to be able to recover a site in a site collection.  DPM gives this ability in a very easy to manage way.  There's a Technet webcast located at: TechNet Webcast- Protecting Microsoft SharePoint with Data Protection Manager (Level 200) which covers a overview of data.

    November 22

    Permissions for Groups and Users

    I always end up scrambling around for a full list, so I'm posting this primarily for my own benefit!  Hopefully it will be of some use to others in the pursuit of happiness, er, a full list of MOSS[Y] permissions:

    List Permissions 
        Manage Lists  -  Create and delete lists, add or remove columns in a list, and add or remove public views of a list. 
        Override Check Out  -  Discard or check in a document which is checked out to another user. 
        Add Items  -  Add items to lists, add documents to document libraries, and add Web discussion comments. 
        Edit Items  -  Edit items in lists, edit documents in document libraries, edit Web discussion comments in documents, and customize Web Part Pages in document libraries. 
        Delete Items  -  Delete items from a list, documents from a document library, and Web discussion comments in documents. 
        View Items  -  View items in lists, documents in document libraries, and view Web discussion comments. 
        Approve Items  -  Approve a minor version of a list item or document. 
        Open Items  -  View the source of documents with server-side file handlers. 
        View Versions  -  View past versions of a list item or document. 
        Delete Versions  -  Delete past versions of a list item or document. 
        Create Alerts  -  Create e-mail alerts. 
        View Application Pages  -  View forms, views, and application pages. Enumerate lists. 

    Site Permissions 
        Manage Permissions  -  Create and change permission levels on the Web site and assign permissions to users and groups. 
        View Usage Data  -  View reports on Web site usage. 
        Create Subsites  -  Create subsites such as team sites, Meeting Workspace sites, and Document Workspace sites. 
        Manage Web Site  -  Grants the ability to perform all administration tasks for the Web site as well as manage content. 
        Add and Customize Pages  -  Add, change, or delete HTML pages or Web Part Pages, and edit the Web site using a Windows SharePoint Services-compatible editor. 
        Apply Themes and Borders  -  Apply a theme or borders to the entire Web site. 
        Apply Style Sheets  -  Apply a style sheet (.CSS file) to the Web site. 
        Create Groups  -  Create a group of users that can be used anywhere within the site collection. 
        Browse Directories  -  Enumerate files and folders in a Web site using SharePoint Designer and Web DAV interfaces. 
        Use Self-Service Site Creation  -  Create a Web site using Self-Service Site Creation. 
        View Pages  -  View pages in a Web site. 
        Enumerate Permissions  -  Enumerate permissions on the Web site, list, folder, document, or list item. 
        Browse User Information  -  View information about users of the Web site. 
        Manage Alerts  -  Manage alerts for all users of the Web site. 
        Use Remote Interfaces  -  Use SOAP, Web DAV, or SharePoint Designer interfaces to access the Web site. 
        Use Client Integration Features  -  Use features which launch client applications. Without this permission, users will have to work on documents locally and upload their changes. 
        Open  -  Allows users to open a Web site, list, or folder in order to access items inside that container. 
        Edit Personal User Information  -  Allows a user to change his or her own user information, such as adding a picture. 

    Personal Permissions 
        Manage Personal Views  -  Create, change, and delete personal views of lists. 
        Add/Remove Personal Web Parts  -  Add or remove personal Web Parts on a Web Part Page. 
        Update Personal Web Parts  -  Update Web Parts to display personalized information. 

    If you want more info around this (besides from Technet/MSDN/copious amounts of blogs!) then there's some pretty useful stuff up on office.microsoft.com and specifically at the Managing security and permissions page

    November 25

    2007 Office System Document: Understanding Workflow in Microsoft WSS v3 and office 2007

     Not something that should be underestimated is the new workflow stuff in SharePoint v3.  This is a key part to document release and should not be forgotten about.  Here's a useful white paper from Microsoft on the subject...

    Download details: 2007 Office System Document: Understanding Workflow in Microsoft Windows SharePoin
    November 21

    SharePoint 2003 CSS Reference Chart

    The deepness that is SharePoint CSS is outlined on Heather Solomons site in handy chart format -  handy if you have a big desk as it only really works on A3!  This is not a dig at Heather (great work BTW) but on the full on make up of the SPS and OWS CSS's in SharePoint.

    I haven't seen the 2007 CSS's yet.  I hope they're a bit cleaner...

    Check out the chart at: HeatherSolomon.com - SharePoint 2003 CSS Reference Chart

    May 20

    iFilters, PDFs, and where do you install it?

    So at work recently I had to install the iFilters onto our server farm to allow for PDF's to be indexed and searched. The question is though, where are they to be installed - especially in a medium farm? Well if you look around the net there's quite a lot of discussions around this. Some say that needs to go on the SQL server and then some say it's the Job Server/Indexer.
     
    OK so from the testing that has taken place the PDF filter actually needs to be installed on both, and there is some logic around this.
     
    SharePoint has two separate indexing and searching components; one that is used within Windows SharePoint Services (WSS); which is the SQL Server Search component; and one that is based on SharePoint Portal Server (SPS) which is it's own product.
     
    So if PDF's are needed to be indexed and searched on WSS then the ifilter will need to be installed on the SQL server.
     
    If  PDF's are needed to be indexed and searched on SPS then the ifilter will need to be installed on the Job/Indexer server.
     
    Please note that if you have a DR environment the ifilter will need to be installed on the DR box and when it is failed over, then the PDF will need to be added in again
    February 03

    SharePoint community

    I've signed up to the office newsletter and mentioned in it was the SharePoint user group in the UK http://suguk.org/default.aspx.  The great thing about SharePoint is the ability to generate and help communities grow.  Having this in the UK is a good thing and should be joined. 
     
    If you're new to SharePoint have a look at www.microsoft.com/sharepoint