August 06, 2008

No Site Columns, Workflows on SharePoint (MOSS 2007) Surveys

One of my clients wanted to use a SharePoint survey for a data entry form because the branching logic makes the end-user experience much better.  Two problems:

1. The form requires a project code, for which this client has a site column, but you can't add a site column to a survey.  We could do a lookup to a separately-maintained list of project codes - but that is terrible from a maintenance perspective.

2. There is simple workflow associated with the form, but surveys don't support workflows, even though the functionality appears to be there.  I tested this with the built-in approval workflow and sure enough, "Failed on start."

Back to the drawing board.

July 19, 2008

SharePoint this week - three problems, three solutions


Peep Kabobs, originally uploaded by Little Rosy Runabout.

Recently I have run into three issues with SharePoint that were solved quickly thanks to articles and blog posts on the Web. I'm summarizing them here for quick reference:

How to insert a list field into a custom list form?

Once you create a custom list form and populate it with your list fields, the form is decoupled from any changes you make to the list (bummer!). If you need to add a field, you could hunt around in the menus for quite some time (like I did) before you figure it out:

http://www.imginc.com/blogs/erics/Lists/Posts/Post.aspx?List=e931a6e7-bad3-481a-85b0-bbb244f58c19&ID=14


Workflow doesn’t kick off automatically

A custom workflow you create in SharePoint Designer, which seems to have no issues, won't start automatically. Did you create it with the administrator account and then try to kick it off logged in as the administrator? Before Service Pack 1 you could do this, but after...

http://kbalertz.com/947284/declarative-workflow-start-automatically-after-install-Windows-SharePoint-Services-Service.aspx


Picture library functionality breaks when you apply a custom workflow

This happened to me at two client sites – I added a SharePoint designer workflow to a picture library, and the library “broke,” i.e. the workflow no longer kicked off automatically and the drop-down menu on each item no longer worked. The status bar at the bottom of the IE window indicated a Javascript error - and it was! The solution is quick and easy if you can access the core.js file on the web front end server:

http://www.sharepointu.com/forums/p/197/432.aspx

July 10, 2008

Have you met Susan Hanley?

Susan Hanley introduced herself to me last week, and I'm so glad she did.  I knew her as a co-author of the excellent Essential SharePoint 2007, but I was unaware of the SharePoint blog she writes for NetworkWorld, as well as the great resources available on her website.  She's got a focus on SharePoint usability, knowledge management, and user adoption that often is lacking in many of the posts and publications about this technology.  I hope you'll visit her blog and website; it's essential stuff for anyone trying to build a knowledge management system in SharePoint.

June 21, 2008

Eleven ways to make your SharePoint implementation more user-friendly

 

Based on my two years of working with customers' MOSS 2007 implementations, and some of the great ideas my customers have had, here are eleven ways to improve the usability of your SharePoint implementation for your end-users. (Note: These five suggestions work for MOSS 2007; not all work for WSS 3.0. You may need web server administrator, Site Collection Administrator, and/or "full control" permissions in your portal to perform these customizations).

 

    1.      Make the banner logo link to the Home page.

    Hopefully Microsoft will include this functionality in the GUI in the next version, so that you can link to Home when you add a logo image to the header, but for now the quick and easy way to do this is to edit your master page and insert the following code in the following place, and then save, check-in (publish) and approve the master page:


            <td id="GlobalTitleAreaImage" class="ms-titleimagearea">
    <a href="http://yourportalname/Pages/Default.aspx">
    <SharePoint:SiteLogoImage id="onetidHeadbnnr0" LogoImageUrl="/_layouts/images/titlegraphic.gif" runat="server"/>
            </a></td>

    2.      Remove unused web parts from the Web Parts gallery.

    When your content owners are adding web parts to their pages, there are web parts which may be confusing to them, or which you may not want them to use until they receive training. You can set permissions on web part files so that they will not appear if the user doesn't have rights to see them. To do this, from the top level site of your portal, choose Site Actions / Site Settings / Modify All Site Settings. Click the link for Web Parts in the Galleries section. You will see the Web Parts Gallery which is a document library. For the web parts you want to hide, click the Edit icon, click Manage Permissions, click Actions / Edit Permissions, and remove the permissions for those groups who don't need to see the web part.

    3.      Use the Table of Contents web part on empty top-level sites to avoid blank pages.

    If you have sites grouped under a top-level site, such as Departments or Practices, but you don't have any content to display on that top-level site, your users may click on that tab and see a whole lot of nothing on the home page. You can place the Table of Contents web part here to display a dynamic site map of everything under that top level.

    4.      Link directly to a list form without using a too-long URL.

    When you convert your paper forms to SharePoint lists, you will probably want to link your end-users directly to the data-entry form for the list, rather than to the list view that shows the existing items. However, the "New Item" URL is very long, and it won't fit in the URL field of a SharePoint links list, with the result that a user will click on the link to get to, say, an office supplies request form, but they will receive an error when they try to save the form because the URL is incomplete. To solve this, try my colleague Florin's solution for making tiny URLs in SharePoint. You can include the tiny URL in a Links list URL field with no problem.

    5.      Make sure all the content is in the same place on similar pages.

    Seems like a no-brainer, but as content owners take over and your intranet grows organically, different power users will have different ideas about how their sites should be organized. To get a consistent look across all department, client, project, or location sites, create a custom template at the outset, build all the sites using this template, and train your content owners to use it if they need to create a new site in that category.

    6.      Look at the Site Usage Report for your sites.

    What are people accessing? Could you move popular but deeply-nested items to a higher level, or expose them better via links or web parts? To access Site Usage reports, this functionality needs to be turned on in Central Administration (in two places – Operations / Usage analysis processing, and Shared Service Provider / Usage Reporting). You can then view the reports on any site at Site Actions / Site Settings / Site Usage Report.

    7.     Put default values in list fields (columns) to help validate data.

    Although there is no true validation capability in an out-of-box SharePoint list form, you can show your users how you want data to be entered with the default value (in the column settings). For example, for a phone number field, you can include a default value that shows whether or not you want parentheses, dashes, or spaces to be included in the number. This will work along with the description field to tell your users how you'd like them to fill out the field.

    8.     Always add a description. Everywhere.

    Columns, lists, libraries, sites, templates, and many other SharePoint features provide an optional Description field at the time of creation. It's a best practice to fill this in with a brief sentence that describes the item, even if you're just prototyping, because this description will guide the end user later (and appears in places you may not expect). For example, when you create a document library, the description for that library appears in the Add A Web Part menu. On a site with multiple libraries, the description you enter will help the end user choose among the libraries to place the right one on the page.

    9.     Move items around on the Quick Launch bar so it makes more sense.

    The Quick Launch bar is dynamically generated and displays content as you add it to the site; however you have control over how the items appear. For example, when you create a sub-site, it always appears at the bottom of the Quick Launch, but if it receives heavy traffic and/or you want to highlight it for your users, you can move the link to the top. To do this, go into Site Actions / Site Settings / Navigation, and in the Navigation Editing and Sorting section, you can click on any item and move it up or down in the listing. And while we're on the subject of Navigation -

    10.     Add a heading in Navigation.

    The Quick Launch bar is created with standard headings (Documents, Lists, Surveys, Sites) to group your content, but you don't have to use these. You can group the Quick Launch bar in the way that makes sense for your site and organization – for example, by phase:

    To do this, go into Site Actions / Site Settings / Navigation, and in the Navigation Editing and Sorting section, you can edit existing header names, or delete them and add your own.

    11.     Target some content.

    This one can be more complicated to set up than the above suggestions, because some prerequisites need to be in place, but it can really add value. Two common examples of where this can be useful are 1) if you have an announcements list on your portal home page where some items are intended only for certain geographical locations or organizational roles, or 2) if you have a links list of mission-critical applications and information, and some of these links are only used by certain groups within the organization. If you have AD security groups (or SharePoint audiences) set up correctly, you can deliver this content to the users who need it, with the result the others don't even see it. For a detailed how-to, read Microsoft's online guide about targeting content in general, and if you're considering targeting a links list, read this essential how-to on getting the Content Query Web Part to display the links list correctly.

     

May 21, 2008

Differences between a MOSS 2007 / SharePoint Publishing Site and a System Site (or Team Site)

I have not been able to find much information on the Web about the differences between a MOSS 2007 Publishing Site and what Microsoft calls a System Site, which encompasses the Team Site and Blank Site as well as some others.

I put together this table based on my hands-on experience with and testing of the two types of sites.  I wasn't able to post it as a blog because the table is too wide, so I'm sharing it from my SkyDrive.

Table of differencees between a MOSS 2007 Publishing Site and a System Site (or Team Site)

I will be adding to this table as I learn more.

May 16, 2008

Read-only document from SharePoint displays “Check Out” option

I don't like to post issues without solutions, but a client alerted me to this one today and I couldn't find an answer; I wanted to put it out there in the hope that someone can offer some input. Here's the scenario:

In your MOSS 2007 or WSS 3.0 implementation, you have a document library with checkin / checkout enabled. If a user with read-only ("Visitor") permissions looks at the document options from the drop-down menu on the document name, they have no option to check in or check out:

However, if the same user opens a document from that library, the document will open as read-only in its MS Office application (Word, Excel, etc.), but the user will see the "Server Document" bar with the message "To modify this document, you must check it out" and the "check out" button.

When the user tries to check the document out, they are asked to authenticate, they try three times, and then receive the error "Cannot perform this operation. The file has been deleted or someone else has it checked out."

The good news is that the application won't actually let you check out the document – it knows you shouldn't be able to authenticate.  The bad part is that that toolbar shows up at all, and the user has to go through the authentication / bogus error process.  How is it possible to prevent a user with read-only rights in SharePoint from seeing the "Check out" option in Word or Excel?

I posted this to the MSDN forum for Sharepoint general questions. (I've got a private bet with myself that someone will tell me this is supposed to be posted to an MS Word discussion group instead.)

May 13, 2008

How to insert SharePoint metadata into your Word or Excel document using Quick Parts and Content Types

I just learned this from a colleague who learned it at a SharePoint Developer class: When you create a custom Content Type for a document template, and add custom metadata fields to it, you can insert the metadata values into your document as Quick Parts.

Several elements need to be in place to make this work smoothly. In my example:

  1. I created a Content Type for a NonDisclosure Agreement (NDA)
  2. I created a Site Column for Opportunity (i.e., the client name)
  3. I added the site column to the NDA content type
  4. I added the content type to one of the document libraries on my SharePoint site
  5. I created a new NDA from the "New" menu on the document library and
  6. IMPORTANT! I saved the document back into that document library. (The Properties Quick Part will appear grayed-out until the document is saved.)

Then, with the document still open in Word, I was able to choose Insert -> Quick Parts from the ribbon, and my "Opportunity" field is available.

If the metadata field is already filled in for the document, you will see the actual data appear in your document (just as when you add the a Date field and today's date appears).

If the metadata field is empty, you can type the information into the document field, and you will see it will appear in the Properties (Server) window in the ribbon..

Lots of potential for bringing your paper forms online and ensuring better metadata compliance!

Here's a nice post from the Microsoft Word team on the subject – they refer to it as XML Mapping.

May 10, 2008

SharePoint Content Types - good information at "End User SharePoint" site

I recently was in contact with Mark Miller at endusersharepoint.com.  He's putting together some great material on content types, which is available through a free weekly newsletter.  I highly recommend subscribing; here's an installment re: site columns and content types, which Mark gave me permission to share with my blog audience.

There are not many end-user-focused sites out there for SharePoint; this one is a really valuable resource with a down-to-earth point of view.  Check out, for example, "How come I keep seeing that *^!#ing authentication screen?

April 24, 2008

Thoughts about SharePoint Content Types, Part 2 - Content Type Hierarchy Diagram

To help clients and others understand the role and importance of content types, my first step was to create the following visual display of the SharePoint content type hierarchy.  I referred to the Visio diagram from the SharePoint Commerce blog, and simplified it for non-developers.  I used colors to highlight some of the different categories of content type; I'm sure there are many ways to conceptualize this, and I welcome any suggestions for improvement.

April 23, 2008

Thoughts about SharePoint Content Types

I'm at Mindsharp's Core Technologies training this week.  Even though I've already passed the two SharePoint configuration exams, I thought a deep dive into the administration of SharePoint would help me understand the big picture better, and help me answer the questions I often get from clients in this area.

The instructor just started the module on Content Types and Features.  He asked the class who was working with content types.  Three people raised their hands.  Then he asked who was working with SharePoint.  All raised their hands.  The instructor said that everyone who raised their hands for the second question should have raised their hands for the first question.  This moment neatly crystallizes how I've been feeling about content types for some time now - that although they are the core of SharePoint, I don't always consider their role, and I don't even know how to begin communicating their importance to clients.

I'm not talking about creating custom content types to make your company's business processes more efficient; I'm talking about understanding the base upon which SharePoint is built, which has an impact on everything you create and display using this technology.

My first thought was that Heather Solomon might have some guidance in this area, and one of her blog posts following the Seattle SharePoint Conference offers some great resources.  However, many of these are about customizing content types for the enterprise, rather than about the basics of what they are and how they form the basis of SharePoint.  I'm giving myself the task of boiling this information down into a simple guide I can share here and give my clients; the concept is too important not to be a required part of knowledge transfer.