Force Left Nav To at least 200 Pixels wide
Force Body To at least 500 Pixels high
Know More. Do More.

 Posts

May 15
A funny thing happened today caused by the fact that my location in the OS is set to the UK and not the US.

I have a RSS feed set up for TechNet Magazine articles and, because of that location setting, when I click on the link to one of the articles (in this case to the one on SharePoint 2010 Government from the May 2012 issue) I get the article in the normal US English but with a UK (actually /en-gb) URL instead of the usual US (en-us) URL.

So far so good and you may be wondering why this bothers me as after all you get the correct article even if the URL is a bit different.

The problem however is in what happens if you decide as I did to see if this was a May or a June 2012 article by clicking on Home.

What you should get (and would get if you were on a page with the US URL) should be a page with the heading TechNet Magazine May 2012 that contains links to all the May 2012 articles. But what you actually get (when the URL is the GB URL) is a page with the heading June 2009 and links to all the June 2009 articles.

The explanation is that there used to be a TechNet UK Magazine that first became web only and then very soon afterwards was completely dropped. June 2009 was clearly the last issue of the version with correct (in my eyes!) spelling.

I can understand why Microsoft dropped the UK issue but what I can't understand is why nobody *since June 2009* has bothered to amend the en-gb web pages so that they too show the latest US edition of TechNet Magazine rather than the extremely old final UK English edition.

Surely someone has noticed this before me?

P.S. I case you are wondering, getting the UK page rather than the US page is MS´s doing. The link on that RSS feed URL is http://technet.microsoft.com/magazine/f9c02b6e-9306-46b9-8f66-a40c9ecccf7b, it's the fact that they completely unnecessarily convert that into a UK URL rather than into a US URL that's causing the problem here.


May 15
Published: May 15, 2012 06:05 AM by  Nancy Brown
Want an ajax-type grid to display tabular data in SharePoint? Try jqGrid. It's built on jQuery, easily configured, substantial documentation, sponsored by Microsoft, and there's even a "Redmond" jQuery theme which looks like it was made for SharePoint's out of the box style.
 
jqGrid in action
 
jqGrid can do a lot more than just display tabular data; it offers CRUD operations, subgrids, grouping, searching, and more. Check out the demos page for some ideas. This post is just about getting off the ground with jqGrid in SharePoint. For easy data, we'll use the venerable Northwinds sample database from an OData source. Basic steps are:
  • Download jqGrid here
  • Download a jQuery theme there
  • Register jqGrid CSS and JavaScript with SharePoint
  • Configure jqGrid
  • Create a Data Adapter for jqGrid

Register jqGrid CSS and JavaScript with SharePoint

We'll build this jqGrid in a SharePoint Visual Web Part. Start with a SharePoint 2010 project containing a Visual Web Part, and add a "Layouts" Mapped Folder. It's a good idea to keep all the project stuff corralled, so the first subfolder under Layouts might well be named for the project. Then add css and js subfolders for the downloaded jQuery components.

Open the downloaded jQuery theme's css folder and copy the subfolder with your theme name to the SharePoint project's css folder. In this example, that's the "redmond" folder, including all its contents. Also from the downloaded jQuery theme, open the js subfolder, and copy the custom js file to the SharePoint project's js folder. In this example, that's the jquery-ui-1.8.20.custom.min.js file. OK, theme's done.

jqGrid CSS and JavaScript in SharePoint

Now we just need four files from the jqGrid download:

  • Copy to the SharePoint css folder: ui.jqgrid.css from the jqGrid download's css folder
  • Copy to the SharePoint js folder:
    1. jquery.jgGrid.min.js and jquery-1.7.2.min.js from the jqGrid download's js folder
    2. grid.locale-en.js (or the language pack of your choice), from the download's js/i18n folder

Keeping things SharePoint-y, we'll register these with SharePoint constructs. To the Visual Web Part's Elements.xml file, add CustomAction elements similar to these just above the closing </Elements> tag:

<!--Register JQuery scripts-->

  <CustomAction

    Sequence="100"

    ScriptSrc="/_layouts/Mindsharp.OData.JQuery/js/jquery-1.7.2.min.js"

    Location="ScriptLink" />

  <CustomAction

    Sequence="110"

    ScriptSrc="/_layouts/Mindsharp.OData.JQuery/js/jquery-ui-1.8.20.custom.min.js"

    Location="ScriptLink" />

  <CustomAction

    Sequence="120"

    ScriptSrc="/_layouts/Mindsharp.OData.JQuery/js/grid.locale-en.js"

    Location="ScriptLink" />

  <CustomAction

    Sequence="130"

    ScriptSrc="/_layouts/Mindsharp.OData.JQuery/js/jquery.jqgrid.min.js"

    Location="ScriptLink" />

Most CustomAction elements add a link somewhere, but when the Location attribute is ScriptLink, it registers a script. The Sequence attribute is critical to getting these on the page in the right order. Be sure to edit the ScriptSrc value to match the path in your project.

To the Visual Web Part's ascx HTML source, add CssRegistration tags similar to this just below the default directives:

<SharePoint:CssRegistration runat="server"

  Name="/_layouts/Mindsharp.OData.JQuery/css/redmond/jquery-ui-1.8.20.custom.css"

  ID="CssRegistration1" >

</SharePoint:CssRegistration>

<SharePoint:CssRegistration runat="server"

  Name="/_layouts/Mindsharp.OData.JQuery/css/ui.jqgrid.css"

  ID="CssRegistration2" >

</SharePoint:CssRegistration>

Once again, the path in the Name attribute must match your project.

Configure jqGrid

This will be a very basic and minimal configuration. Check out the documentation for all the options. To the Visual Web Part's ascx source, just below the CssRegistration tags, add this html and script:

<div id="jqGrid">

      <table id="Northwinds"></table>

      <div id="NorthwindsPager" ></div>

</div>

 

<script type="text/JavaScript">

  $(document).ready(function () {

    $("#Northwinds").jqGrid({

      url: L_Menu_BaseUrl + '/_layouts/Mindsharp.OData.JQuery/NorthwindsXML.aspx',

      datatype: 'xml',

      mtype: 'GET',

      autowidth: true,

      height: 230,

      colNames: ['Customer ID', 'Company', 'Address', 'City', 'Country'],

      colModel: [

        { name: 'id', width: 125 },

        { name: 'company', width: 250 },

        { name: 'address', width: 125, sortable: false },

        { name: 'city', width: 100, sortable: false },

        { name: 'country', width: 100, sortable: false }

      ],

      pager: '#NorthwindsPager',

      rowNum: 10,

      rowList: [10, 20],

      sortname: 'id',

      sortorder: 'asc',

      viewrecords: true,

      gridview: true,  // insert all the data at once (speedy)

      caption: 'Northwinds Customers via OData'

    });

    // Add Navigator functions

    $("#Northwinds").jqGrid('navGrid', '#NorthwindsPager',

    { edit: false, add: false, del: false, search: false });

 

  });

</script>

The table with id="Northwinds" will be replaced by the grid (as specified by the $("#Northwinds").jqGrid script bit at the top of the script), and the div with id="NorthwindsPager" will be replaced by the navigation and paging bar below the grid (that's the pager: '#NorthwindsPager' bit near the middle of the script).

Like many jQuery-based controls, a url attribute specifies the datasource, which is the NorthwindsXML.aspx which we'll build soon. SharePoint relative urls can confuse jQuery controls, so help them out by using the SharePoint-generated javascript variable L_Menu_BaseUrl like this:

url: L_Menu_BaseUrl + '/_layouts/Mindsharp.OData.JQuery/NorthwindsXML.aspx'

Most of the configuration is self-explanatory. datatype and mtype tell jqGrid to use a GET request and expect an XML response. (JSON is another data type option.) colNames is an array of column headers for the grid. colModel defines those columns. Here, name is a unique name for the column, and will be used in the querystring, width sets a starting width (these will be adjusted to fit the parent element's width, due to the autowidth attribute also specified), and sortable determines whether that column can be sorted. Since jqGrid sends an Ajax query every time a sortable column header is clicked, or the page number is changed, or the pager dropdown is changed, or a pager button is clicked, only enable sorting on columns you'd like to code for. sortable is true by default, so turn it off where not wanted.

rowNum sets the initial number of rows to show in the grid, so it should be one of the values in rowList, which is the set of values for the number-of-rows-to-fetch dropdown in the pager bar. viewRecords: true instructs jqGrid to write the "View X to Y of Z" text on the right side of the pager bar.

jqGrid Navigation and Pager Bar

sortname is the initial sort field and sortorder the initial sort direction ("asc" or "desc"). The Navigator bar is left of the pager, in the same bar. Since this is a read-only data source, all editing functions and search will be turned off by the navGrid part of the script, and only the refresh button will appear in the Navigator bar.

Create a Data Adapter for jqGrid

The grid needs a few global values returned in addition to the actual data. Specifically, it wants the number of the page returned, the total number of pages available, and the total number of records available. In XML data, jqGrid expects a "rows" root element, then page, total, and records elements, and a row element for each row of data returned. The row element should contain an id attribute (the primary index value), and cell elements for each column. CDATA sections are fine for data that needs it. Looks like this:

Example of jqGrid XML data source

Since most web services don't emit this structure, we'll need to build a data adapter. Often this would be a generic HTTP handler (a .ashx file extension), but a simple aspx page will work just fine, and be a little less trouble to install in SharePoint. Add a text file to the project-named subfolder under the Layouts folder, but give it an .aspx extension; in this example, that's NorthwindsXML.aspx. Add another text file with the same name + .cs (like NorthwindsXML.aspx.cs), and Visual Studio will combine it with the .aspx added earlier. Paste something like this into the .aspx file (adapted to your project name and aspx name, of course):

<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="NorthwindsXML.aspx.cs" Inherits="Mindsharp.OData.JQuery.NorthwindsXML" %>

Since we're only sending back XML, we don't need a lot of directives. To the code behind file, (NorthwindsXML.aspx.cs in this example), add something like:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

using System.Web;

using System.Xml.Linq;

using System.Collections.Specialized;

 

namespace Mindsharp.OData.JQuery

{

  public partial class NorthwindsXML :

    System.Web.UI.Page

  {

    protected void Page_Load(object sender, EventArgs e)

    {

      Response.ContentType = "text/xml";

 

      Response.Write(CreateXML());

    }

}

The Northwinds database is published as an OData feed courtesy of OData.org. If you've ever used ListData.svc in SharePoint, (example: http://intranet/_vti_bin/ListData.svc), you've used an OData feed. If OData is new to you, look into http://odata.org and Query SharePoint Foundation with ADO.NET Data Services. Basically it is entity classes served up in an Atom Pub style RSS feed, queryable by URL - it's REST for SharePoint List data. But back to the Northwinds OData - add a service reference to http://services.odata.org/Northwind/Northwind.svc, and give the proxy class a namespace- in this example it's NorthwindProxy.

Add Service Reference for OData feed

Now we can create some XML from our OData feed. This particular feed is read-only, and has a server-side page limit of 20 items. For simplicity, we'll stay within that limit with our jqGrid configuration. Here's the CreateXML method:

    private string CreateXML()

    {

      NorthwindProxy.NorthwindEntities ctx =

          new NorthwindProxy.NorthwindEntities(

            new Uri("http://services.odata.org/Northwind/Northwind.svc"));

 

      int totalRecords = (from c in ctx.Customers

                          select c).Count();

 

      // Initialize variables to contain validated query string parameters

      string sortField = default(string);

      string sortDirection = default(string);

      int maxRowsToReturn = default(int);

      int pageToReturn = default(int);

      // Computed variable to send back to jqGrid

      int totalPages = default(int);

 

      CreateValuesFromQuerystring(Request.QueryString, totalRecords,

        out sortField, out sortDirection,

        out maxRowsToReturn, out pageToReturn, out totalPages);

 

      var query = CreateQuery(ctx, sortField, sortDirection,

        maxRowsToReturn, pageToReturn, totalRecords);

 

      var customerQuery = from c in query

                         select new

                         {

                           c.CustomerID,

                           c.CompanyName,

                           c.Address,

                           c.City,

                           c.Country

                         };

 

      XElement xrows = new XElement("rows",

        new XElement("page", pageToReturn),

        new XElement("total", totalPages),

        new XElement("records", totalRecords));

 

      foreach (var c in customerQuery)

      {

        xrows.Add(

          new XElement("row", new XAttribute("id", c.CustomerID),

            new XElement("cell", c.CustomerID),

            new XElement("cell", c.CompanyName),

            new XElement("cell", c.Address),

            new XElement("cell", c.City),

            new XElement("cell", c.Country))

          );

      }

 

      // XDocument does not provide the XML declaration, so here it is

      string xmlDeclaration = "<?xml version =\"1.0\" encoding=\"utf-8\"?>"

        + Environment.NewLine;

 

      return xmlDeclaration + xrows.ToString();

    }

The CreateValuesFromQuerystring() method reads the querystring and guarantees that all the variables harvested from it will have a valid value. A typical query for this project may look like this:

GET /_layouts/Mindsharp.OData.JQuery/NorthwindsXML.aspx?_search=false&nd=1337027722102&rows=10&page=2&sidx=id&sord=asc

Note that jqGrid throws in a Unix-style timestamp (nd=1337027722102), which helps defeat inadvertent browser caching.

Linq allows chaining of queries- meaning a single query can be built up in multiple statements, and a query can be the subject of another query. Take a look at these methods which build the Linq query dynamically by chaining:

    private IQueryable<NorthwindProxy.Customer> CreateQuery(

      NorthwindProxy.NorthwindEntities ctx,

      string sortField, string sortDirection,

      int maxRowsToReturn, int pageToReturn, int totalRecordsAvailable)

    {

      var query = from customer in ctx.Customers

                  select customer;

 

      query = AddOrderBy(query, sortField, sortDirection);

     

      query = query.Skip(maxRowsToReturn * (pageToReturn - 1))

                  .Take(maxRowsToReturn);

 

      return query;

    }

 

    private IQueryable<NorthwindProxy.Customer> AddOrderBy(

      IQueryable<NorthwindProxy.Customer> query, string field, string direction)

    {

      if (direction == "asc")

      {

        switch (field)

        {

          default:

          case "id":

            query = query.OrderBy(c => c.CustomerID);

            break;

          case "company":

            query = query.OrderBy(c => c.CompanyName);

            break;

        }

      }

      else

      {

        switch (field)

        {

          default:

          case "id":

            query = query.OrderByDescending(c => c.CustomerID);

            break;

          case "company":

            query = query.OrderByDescending(c => c.CompanyName);

            break;

        }

      }

      return query;

    }

There are cooler ways to dynamically add the OrderBy clause, but we're keeping things simple. For the curious, see Scott Guthrie's post on Dynamic Linq queries.

That should take care of the data adapter for the grid, so it's ready to deploy. Add the Web Part to a page and enjoy!



May 10
Published: May 10, 2012 09:05 AM by  Brian Alderman

The International SharePoint Conference in London is such an amazing event! If you haven't had the opportunity to attend this conference yet, you should definitely plan on going to the next one. The Combined Knowledge team really knows how to put on a conference that includes speakers from around the world, unbelievable after hour events, and sessions that always get rave reviews.


In my session I had the privilege of working with John Holliday and Agnes Molnar. Our topic was 'Building a Records Management Solution', with the key word being solution. Many sessions will 'touch' on a specific topic, or focus on a particular theory. However, these sessions walked the attendees through a detailed records management solution. We began with the best practices for making sure your file plans contain the information necessary to support a real-world SharePoint records center deployment, configuration, and implementation. The majority of my presentation was what I enjoy doing the most… DEMO's. I did a full demonstration on the SharePoint farm level record centers components, how to configure the records center, and finally how to route a document to the records center where it would reside during its retention period. We also provided information on how to improve searches on records and automate business processes by creating workflows for these records.


You didn't have to go too far to meet some really great speakers that are experts in the SharePoint field. It was great to see many of my colleagues and make the acquaintance of many new ones. These are the conferences where personal and professional connections are made. I am already looking forward to their next conference, being held April 15-17 of 2013.

International SharePoint Conference



May 07

Dear Tamara,

 

I have four columns Name, CollegeName, Picture, Bio.  I want to be able to display this list grouped by college name in a two column format.  The College Name would be displayed as an H2 on the page.

 

Then the picture would float to the left of Name & Bio, where Name was an H3. 

 

Also with the two columns I would like for all the colleges with names A-J in the first column & K-Z in the second column.

 

It would look like the image I have attached to help you visualize it a little more.

Wireframe

Thanks for your help.
Amy

Assumptions:

We have access to SharePoint Designer 2010.

We have a list named College with the following columns:

Column

Type

Required

Notes

First Name Single line of text    
Last Name Single line of text

X

Title Column
College Of Choice   Asheland
Big Sandy
Bluegrass
Hazard
Jefferson
Madisonville
Maysville
Bio Multiple lines of text   Rich Text
Full Name Calculated   =[Last Name]&”, “&[First Name]
Starts with* Calculated   =LEFT([College of],1) 
Image** Multiple lines of text   Enhanced rich text

Make sure you have some content. If you don’t have content it makes setting up the Data view just a little bit harder. Here’s my data:
My Data Set

Let’s build that Data View

1.   Open the site in SharePoint Designer 2010. Site Actions > Edit in SharePoint Designer.

2.     In the Navigation pane, click Site Pages.

3.     In the New group of the Pages tab, click the Page drop-down and select ASPX.

NOTE:
If you do not have the ability to Edit in Advanced Mode, create a Web Part Page instead of an ASPX page. Click Edit File after you have created and renamed your Web Part Page. Skip to step  to continue with the instructions.

4.     Right-click on your Untitled_1.aspx page and rename it CollegeContacts.aspx.

5.     Press the Enter key to save your change.

6.     Click on CollegeContacts.aspx to open the Settings Page for this page.

7.     From the Pages tab, in the Edit group, click the Edit File drop-down and select Edit File in Advanced Mode.

8.     Select the Insert tab.

9.     From the Web Parts group of the Insert tab, select Web Part Zone.

NOTE:
If Web Part Zone is unavailable, you do not have permissions to create a custom ASPX page. Create a Web Part Page instead.

10.  From the Web Part Zone Tools ribbon, click the drop-down for Zone Layout and select Side-by-Side.
Web Part Zone Tools

11.  From the Data Views & Forms group, click the Data View drop-down and select Empty Data View.

12.  In Web Part Zone 1, click Click here to select a data source.
Select Data Source

13.  Select College from the Data Sources Picker window and click OK.

14.  From the Data Source Details Tool pane, click on Image and drag and drop it into the DataFormWebPart.
Drag image to DataFormWebPart

15.  Click on an image, then press the Right Arrow key.

16.  From the Data View Tools ribbon, select the Table tab.

17.  From the Table tab, in the Row & Columns group, select Insert Right.
Insert Right Column

18.  Click into the new Right Column.

19.  From the Merge group of the Table tab, select Split Cells.

20.  Select the Split into rows radio button.

21.  Leave Number of rows: set to the default value 2.

22.  Click OK.Split Cells

23.  Click and drag Full Name from the Data Source Details tool pane into the top cell of the Right Column.

24.  Click and drag Bio from the Data Source Details tool pane into the bottom cell of the Right Column.

25.  Your page should now look something like this:
Data View before formatting

26.  Right-click in the Bio cell, from the drop-down select Format Item as > Rich Text.

27.  In the Confirm window click Yes.

Congratulations! You have just created a Data View.



Apr 30
Published: April 30, 2012 22:04 PM by  Timothy Calunod

Up until this point, we have been working to recreate a solution that was partially out of the box with limited additional configuration needed so that we could reach the point of creating a specific solution for our Enterprise Search experience. And while it is true that the setup and configuration of Enterprise Search still needs to be performed in SharePoint 2010, the nature of setting up Enterprise Search through a Search Service Application (SSA) is not too far from the SSP setup that would have included the Search service in the first place. The only things we needed to do additionally, which were also identical to SharePoint 2007, was the creation and configuration of the Content Sources as detailed in my previous post. Now that we have arrived at the same starting point as the Collaboration Portal from SharePoint 2007, we can examine the additional customization needed to create our targeted Search solution.

Scoping Searches

As we have seen with SharePoint Foundation Search, Search is limited to only the Site Collections in which they are performed, allowing a search query to run in relation to any content within that Site Collection from the Site and below where the search is performed. In some ways, Enterprise Search in the previous version out of the box worked like this, since Context Search was added at that time. However, Context Search does not go beyond the Site Collection and thus cannot be considered Enterprise since it cannot touch other Site Collections, much less content not included in a SharePoint Site.

To achieve a more global search set, the inclusion of an indexing service and associated content sources is required to allow SharePoint to communicate with any content and thus return truly Enterprise Search results. Thus by default, a search query returns results from any crawled content, and is displayed through several possible interfaces, which include the Search Center Sites. In this regard, a Site Collection must be configured to determine which Search Center Site will display results as well as submit the queries. Since this is not configured in most Site Templates in SharePoint 2010, this must be set or the result sets will never return content outside of the Site Collection. This sums up what we have achieved thus far in our solution.

However, Enterprise Search is not limited to specific content like it is with Context Search, so long as the content is crawled by SharePoint. This means that more specific relevance may not have much impact on the search results if perhaps we were only looking for content in a specific repository, such as a specific Site or File Share. To configure this, we need to create a Search Scope. In essence, a Search Scope is a logical division of a Search Content Database configured to perform queries against less than the entire corpus of the searchable content.

Site Collection Search Scopes

There are, in effect, two configurable levels of Search Scope: Global and Local. Global refers to all Sites in a Farm (or connected Farm), while Local refers to a specific Site Collection. Although Search Scopes can be configured at either level – one through Central Administration or one through Site Collection Administration respectively – both scopes are managed by the SSA as far as publishing, rules, updating and availability. Global Search Scopes are useful when a particular logical division, such as by a specific type of content, is required or applicable across all Site Collections in the Farm, but the more granular nature of a Local Search Scope allows the Site Collection Administrator control over how that group of Sites will use a logical limitation that may only apply to that group of Sites. If this were a business unit, a branch location or even an internal only type of function, the ability to choose availability of Search Scopes can be beneficial.

TargetedSearch-Scopes-CentralAdminView

One of the main reasons why the Search Scope is valuable, however, is inherent in the purpose of the Search Scope, which is to limit what will be searched within the arrangement of the available content. Search Scopes allow this limitation through several configuration options, all aimed at tightening the view of the content that will be searched. The most common is by Content Source, but this can also be configured to the URL level and thus as broad as an entire host or domain to a specific site or folder. This configuration, called a Scope Rule, allows for a specific, almost topic- or area-related scope to be applied to search queries. In our example, by configuring a Search scope with a Scope Rule that only searches the specific Document Center where the promotional data is located, we can pinpoint where the search will be run against without having to touch other content sources.

The key differences between a standard Contextual Search and a Search Scope allows the granularity of focusing only on a specific data source rather than the Site Collection as a whole. This also produces a targeted effect anywhere a search needs to be run, regardless of the Site in the Site Collection. This feature is applicable to our solution as a Site Collection Search Scope however, because it limits the availability to our targeted Portal rather than being a globally available limit. If the solution called for a specific targeting type not limited to a group of Sites, using a global Search Scope would be appropriate, but as this Site Collection was used specifically for the purpose of housing and accessing this specific data, the Site Collection level works best.

Configuration

We need to complete several steps to configure our Search Scope for our Organizational Portal to target the Document Center where all the location-specific data will be searched.

1) Create the Search Scope

Through the Site Collection Administration page we create the Search Scope by simply naming the Scope, then configuring a few additional areas.

TargetedSearch-Scopes-New

Display Groups

Aside from a Title, we also need a Display Group and a Target Results Page. The Display Group organizes Search Scopes by a type that shows in the drop-down options depending on where the Search Scope is logically grouped. A Search Scope grouped into a set can be used when configuring how search queries will be run by selecting the Scope for the type of search that is expected to be performed. In most cases, the Search Dropdown will be the most likely group as it is the default, but others can be created for additional targeting limitations, such as certain types of content only within certain branches or divisions. Display Groups can only be configured through the Site Collection Administration page governing the Search Scopes, ensuring that these groupings apply within a Site Collection.

As a Display Group is created, or a new Search Scope is created if the Display Group already exists, the Search scope can be paired with the proper Display Group by either means. A Display Group can further define which Search Scope will act as the default scope, but all Search Scopes within a Display Group can be giving a position, indicating its important, relevance or focus based on how far from the top the Search Scope is available. A Search Scope can be paired with more than one Display Group, if it applied. At times, with reasons such as types of content or location of content, a Search Scope could have a many-to-many relationship as well as a one-to-many relationship, although these types of configurations need to be logically organized to make sense to the user or it will lose its application and perhaps even confuse the user further.

We will discuss the Target Results Page at a later time.

TargetedSearch-Scopes-DisplayGroup

2) Define the Display Group

By either method – Creating a New Display Group or Creating a New Search Scope if the Display Group is available – we can choose which drop-down will be tied to the Search Scope. Since we want to perform standard Enterprise Searches but also use a targeted search, a Display Group indicating where the Search Scope will be used will be created to indicate how that search will run. By creating a one-to-one relationship between Display Group and Search Scope, we can eliminate confusion over how the Search Scope will work. Note that at least one Display Group must be chosen for the Search Scope to surface and be usable.

Search Scope Rules

3) Create the Search Scope Rule

Once the Search Scope is created, a single or multiple set of Rules needs to be created for the Search Scope to be properly limited. The Search Scope will not be available until Rules are added, although only one Rule is necessary.

TargetedSearch-Scopes-AddRules

Each of the types of Rules focus on how the content will be divided, such as by Web Address or by Property. However, from within a Site Collection, one Rule type that focuses on Content Source cannot be chosen, although this can be configured through Central Administration. In our scenario, the Web Address Rule will apply as we want our Search Scope to be limited to only the Document Center within our Portal. Since the Web Address options are very specific, we need the Folder level to indicate our Document Center Subsite in our Portal Site Collection. Also, the ability to Include, Exclude or Require is also important, as each type indicates an OR, AND or AND NOT operator Rule respectively. This allows for multiple rules to be properly joined or excluded as needed. Since we do not need to configure additional Rules, the default of Include will suffice.

TargetedSearch-Scopes-ScopeRules

Once a Rule type is chosen it cannot be changed, although it can be deleted and recreated.

4) Publish the Search Scope

Rules can be changed, removed or added at any stage, but each change, including creation of the Search Scope with at least one Rule, requires that the Search Scope be processed by the SSA upon completion. This process typically takes about 14 minutes but can be processed sooner through Central Administration.

TargetedSearch-Scopes-ScopeWaitingUpdate

TargetedSearch-Scopes-Update-CAdmin

Once the Search Scope has been properly configured, it can now be bound to a Search Center through the use of Web Parts, Targeted Pages, and Search Settings.

Observation

Because this behavior of grouping and logically limiting search queries is not automatic behavior, there are several steps involved with configuring a working, usable targeting system that will allow for the right level of focus as well as application. By creating a Search Scope with a single rule to focus only a the Document Center, and then grouping that Search Scope into a single Display Group, all search queries that run through that Search Scope Display Group will only yield results from our targeted location, effectively creating and focusing the targeting requirement of our solution. And while this particular solution did not require it, some thought and planning should go into the creation of Search Scopes, Search Scope Rules, and Display Groups, to optimize the Enterprise Search experience and not confuse or detract from the Search Application.

One last customization needs our attention, however, which is how the Search Center, the Search Settings, the Content Source, and the Search Scope all come together. This will be the topic of the next blog post.



Apr 30
Published: April 30, 2012 18:04 PM by  Bill English

I hope to write a book about this topic that will come out sometime next summer, but for the record – here is my working thesis:

A SharePoint deployment will surface business model and/or cultural dysfunction in the organization. This is due to breadth and depth of most SharePoint deployments. No other software – perhaps other than e-mail or a home grown application – will have as wide a "touch and feel" as SharePoint in most organizations. Hence, the logic that something this impactful in bringing change to an organization will also surface that organization's dysfunction.

OK – so there you have it. I've presented this several times already and have yet to have anyone push back on it. I'm working on several white papers and ideas that will flesh this out in book format. As details warrant – I'll post them here, including introductory and draft white papers that will form the book.

Bill English, CEO
Mindsharp



Apr 23
Published: April 23, 2012 04:04 AM by  Bill English

A one-day intensive course on how to properly re-design SharePoint in your environment and successfully drive user adoption of SharePoint technologies. This is a seminar designed for:

  • Enterprise Application Architects
  • System Administrators
  • Project Managers
  • Business Analysts
  • Any title or level of individual who is responsible for improving a disappointing SharePoint deployment

Many SharePoint implementations have generated disappointing results. Yet most SharePoint customers intuitively see the value SharePoint offers and want to "try again" as they upgrade to SharePoint 2010 or as they look forward to SharePoint 2013. This seminar is especially designed for those who have implemented SharePoint and have had disappointing results and need to re-design their deployment for greater business benefit and better user experience.

Taught by Experts with Real-World Experience

Ben Curry
Principle Architect and Managing Partner, Summit 7 Systems

Ben Curry (CISSP, MVP, MCP, MCT) is a well-known author and enterprise network architect specializing in knowledge management and collaboration technologies. Ben is a Managing Partner at Summit 7 Systems, a company focused on the next generation of Microsoft products. Ben's philosophy is that the best solutions are inspired by the best ideas and he encourages his team to continuously generate and share ideas. His numerous publications embody his philosophy.

Ben enjoys sharing his ideas as an instructor, both in the IT world and in the underworld — Ben is a certified scuba instructor with a passion for diving. Ben's other life passions include riding his Harley Davidson through his hometown of Huntsville, Alabama, coaching his daughter's softball team. Ben is happily married to Kimberly and is the proud father of their children, Madison and Bryce.

 

Bill English
CEO, Mindsharp

Bill English - (MCSE, MCSA, MCT) - is an industry leader, author, and educator specializing in SharePoint Products and Technologies. As Chief Executive Officer of EBA Companies (Mindsharp and The Best Practices Conference), Bill draws on his experience in business management to teach and consult about mapping SharePoint features to business processes and information organization needs. As a former psychologist in Minnesota for nine years, English uses his knowledge of human behavior to help companies implement change through software platforms. Microsoft has acknowledged Bill's professional contributions to the SharePoint community by awarding him the Most Valuable Professional (MVP) award for eleven consecutive years. Since 2000, Bill has authored 14 books on Exchange and SharePoint products, including the Administrator's Companion for SharePoint Server 2010 by Microsoft Press. Bill lives in Minnesota with his wife and two children, where summer is the six best days of the year!

 

Seminar Details and Outline

This seminar is for those who are responsible for the success of a SharePoint implementation in their environment. This is not a technical seminar in which we will explain how to configure or customize SharePoint.

Instead, this seminar will focus on the business, project and strategic aspects of your SharePoint implementation. Limited to 15 participants in non-competitive businesses, each participant will have the security and confidentiality needed to discuss the problems that exist in their current SharePoint implementation with other participants and two industry-leading experts on SharePoint and business.

This seminar is built around three core principles that must be understood and followed if you're going to be successful with your SharePoint implementation

We will meet in a conference room with white boards and markers, ready to learn and help you re-design your SharePoint implementation.

At the end of the day, Ben and Bill will select two companies that are most representative of the seminar participants and each will spend 30 min going over what they have learned, how they plan to apply their learning back at the office and gain additional insight from the seminar participants and instructors.

This is a unique opportunity to jump-start a disappointing SharePoint deployment and turn it into a great deployment that offers significant business value to your organization.

To ensure confidentiality, each participant will be asked to sign a Non-Disclosure Agreement before attending the class.

 

Principle 1: Assess and Understand Your Business Environment

Most SharePoint deployment will surface dysfunction in the organization's business models and overall culture. In this module, Bill English will go over two distinct reference architectures and discuss how to perform a gap and redundancy analysis to better understand your business and ECM environment into which SharePoint is being implemented.

What you will learn:

  1. How to apply a business reference architecture to your current environment
  2. How to apply a ECM reference architecture to your current environment
  3. How to discern where you have gaps (missing elements) or redundancies in your environment relative to the reference architectures

Principle 2: Assess and Understand the Scope of your SharePoint Implementation

Using a simple, but innovative method for understanding the scope of your SharePoint projects, Ben Curry will present the matrix that he uses to help customers be successful with their SharePoint implementations. Ben will present real-world examples on why understanding the scope of your project will result in higher success for your implementation.

What you will learn:

  1. The Start Big/Small/Top/Bottom matrix that will crystallize your thinking about your own SharePoint implementation.
  2. How to break down your overall SharePoint implementation into manageable "chunks" that can be assessed using the Curry Matrix
  3. How to identify areas of concern that you will need to address as part of your re-design effort

Principle 3: Understanding How Users Adopt New Technologies

User adoption of any new technology – especially SharePoint – is not rocket science. Learning how to use existing, proven research in understanding how users adoption new technologies is critical to a successful rollout. Using Diffusion Theory, Bill English will present a coherent, practical strategy on how you can achieve a successful adoption of SharePoint in your environment.

What you will learn:

  1. The decision-making process that every person goes through when presented with a new idea
  2. The five fundamental elements that need to be addressed in order for a person to accept a new idea
  3. A practical strategy on how to build a process for user adoption in your environment

Putting it all Together: Participant Interaction

In the final part of this day, two participants will be given the opportunity each to spend 30 minutes going over what they have learned, how they plan to apply their learning back at the office and gain additional insight from the seminar participants and instructors on how they can be successful.

Other participants will gain significant insight into how to apply the three core principles by simply listening and interacting with the two presenting participants.

Seminar Details

Cost: $995/person. $795/person for groups of three or more. We encourage multiple attendees from the same organization to attend due to the significant learning that will take place.

(Private Seminar Fee: $9,995 for up to 15 participants)

This seminar is not offered online.

Course materials:

  • Copy of powerpoint slides
  • Business reference architecture poster
  • ECM reference architecture poster
  • Curry Matrix poster
  • Job aids to fill in during the seminar that will form your action plan back at the office
  • Location to download the video recordings of the day's activities

When & Where: (Tentative)

  • June 5: Minneapolis
  • July 19: Huntsville
  • August 9: Washington, DC

For more information, contact sales@mindsharp.com or check the Mindsharp web site for additional information.



Apr 20
Published: April 20, 2012 00:04 AM by  Catherine Sheridan
 
We are excited to release the My Sites and Social Media Course and Certification.
 
The Course contains over 20 video demos on using My Sites and other social collaboration features in SharePoint 2010 to help users connect with others.
 
Check out some of the demos on our UserVersity You Tube Channel playlist "My Sites and Social Media Course" and while you are there make sure to subscribe to our channel to stay up to date with UserVersity, as well as view some of the other free demos available to view.
 
We have also finished the My Sites and Social Media certification exam, which is made up of 39 questions divided into two parts or tests. The exam can be taken in one sitting, or the two tests can be taken based on lesson grouping.
 
Both options for the test generate a personalized UserVersity Certificate in pdf format upon passing which can be printed out to show your accomplishment, or forwarded to your IT department for record-keeping.
 
For more information on UserVersity SharePoint 2010 contact your sales representative or info@mindsharp.com.
 
You can also  feel free to contact me directly, catherine.sheridan@mindsharp.com
 
 
 
 


Mar 06
Published: March 06, 2012 08:03 AM by  Penny Coventry

​SharePoint 2010 is coming up to its 2 year birthday, so it worth talking about Ribbons. Too often solutions concentrate
on pages, Web Parts, lists, libraries and workflows. A SharePoint solution should be more than this - each of these
components should be combined to provide users with a holistic solution, where the components work together and
not as discrete entities.

Using Web Part connections and customizing the Data Form Web Part (DFWP) Form Action button to initiate workflows,
are examples of how you can achieve this. However, SharePoint 2010 provides other components that can be used to
improve the users experience (UX).

Microsoft did much refactoring of the user interface (UI) introducing the Office 2007 client application Ribbon to
SharePoint Foundation, targeting standard tasks that users need to compete and reduced the use of tables. In your
solutions you can extend the out-of-the-box UI, specifically by displaying links, relevant text and commands on the:

  • Server Ribbon

SharePoint 2010 Server Ribbon and Status Bar

  • Status bar
  • Notification area

SharePoint 2010 Notification area

  • List Item Menu (LIM), also known by developers as the Edit Control Block (ECB).

SharePoint 2010 List Item Menu - LIM - also known as the Edit Control Block - ECB

In my sessions at the Australia SharePoint Conference (20-21st March) and the SharePoint Summit in Toronto
(14-16th May 2012), I'll concentrate on how to extend the server Ribbon interface and create LIMs, using
SharePoint Designer 2010, with no-code. I'll also briefly introduce how to use Visual Studio to extend the four UI
components listed above, and then in conclusion I'll highlight the pros and cons of using SharePoint Designer as
compared to Visual Studio. Along the way I'll also mention what is possible if you are using SharePoint Online, which is
part of Office 365.

The session is based on working at client sites and my investigations whilst writing Chapter 3, "Working with Lists
and Libraries", in SharePoint Designer 2010 Step by Step and Chapter 15, "Customizing the User Interface", in
SharePoint Foundation 2010 Inside Out. Developers can find more information on customizing the Ribbon, on my blog
post, SharePoint Conference: Session SPC402 Ribbon Development and Extensibility.



Feb 06
Published: February 06, 2012 13:02 PM by  Christina Wheeler
As most of you know, the OWSTimer memory leak is still an issue with SharePoint 2010. I created a scheduled task to run using PowerShell to stop the process nightly. Here are the instructions to create the scheduled task.

TaskManager

Open up your Windows Task Scheduler and right-click on Task Scheduler Library and then choose “Create Task” to start the Create Task panel.

Note: If you don’t know where the task scheduler is either search for it or type %windir%\system32\taskschd.msc /s in your Windows start menu search bar.

General
Type in the name and Description (optional) and change the security options to “Run whether user is logged on or not”.

CreateTask02

Triggers
Set your preferred scheduling options. Make sure to set it at a time that that will NOT conflict with backups and other scheduled SharePoint jobs.

CreateTask03

Actions

CreateTask04

Program/Script: %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe

Add Arguments: Get-Process OWSTimer| Stop-Process –Force

Once you’re done manually run the process to make sure it’s working. I keep my Task Manager open during testing to make sure the process is being stopped. Don’t worry about restarting the OWSTimer process manually because it will automatically restart on it’s own.



Jan 04
Published: January 04, 2012 13:01 PM by  Kay F. McClure

Happy New Year 2012 !!!!

 

I hope all of you had a fantastic holiday season … so – what’s new with me?

 

 

Well – in addition to being the Product Manager for Business User Products here at Mindsharp, as well as the primary instructor for that course, I am now teaching InfoPath Designer 2010 (two teaches under my belt so far with more on the schedule).  Teaching a new class is always an interesting challenge for an instructor as we need to trust our instincts and knowledge and not let any inner insecurities pull us down (which students don’t typically ever see as we don’t let them show)!

 

In December, I hosted a webinar here at Mindsharp where I discussed SharePoint Training Best Practices.  It received some pretty good reviews, so I thought I would also write a blog post series about this topic since my post audience may be different than my webinar audience.

 

One of the most important things that you can do to gain success (in addition to overall planning for your SharePoint implementation) is a solid training plan.  What does that mean?

 

Let me break it down to a more manageable focus.  At the very least, your organization needs to look at and for the following:

 

       Look for a training company with a solid, repeatable training curriculum

       Take a good, hard look at the training company’s reputation in the industry

       Make sure the company is willing to customize to your requirements

       Ask the right questions to get the training you REALLY need (sometimes it’s not exactly what you THINK you need).

       Get recommendations

       Attend conferences and other SharePoint events

       Look for great instructors

      Get their bio

      Be able to conference with them ahead of the teach

      See if they’re willing to conference with the proposed class ahead of the teach

       Make sure the class offers lots of hands-on lab time

 

While this is just a start – it’s a good start.  Please look for the continuation of this topic over the next couple of weeks … be safe and happy!

 

Kay McClure



Oct 15
Published: October 15, 2011 18:10 PM by  Steve Buchanan

Microsoft has released a web based tool that can be used to build PowerShell cmdlets for SharePoint. This is a great tool for those that are new to SharePoint PowerShell or PowerShell in general. It allows you to drag and drop a PowerShell verb and noun into a design surface and then input your specific SharePoint information such as farm, site collection database etc to complete the cmdlet. Once you have the cmdlet designed you can copy it out  and can run it on your server.

image

Microsoft announced this tool At the 2011 SharePoint Conference in Anaheim, CA which I was at. I missed that announcement and learned about this tool from Russ Kaufmann’s blog.  Thanks Russ!

Here is a link to more information about PowerShell for SharePoint and  this tool:

http://technet.microsoft.com/en-us/sharepoint/ff603532

Here is a link to the tool itself:

http://www.microsoft.com/resources/TechNet/en-us/Office/media/WindowsPowerShell/WindowsPowerShellCommandBuilder.html



Jun 01
Published: June 01, 2011 09:06 AM by  Todd Bleeker

Wednesday, June 1

8:30-5:00: SharePoint 101 The Developer (W-2 in Back Bay A)

This session is a day-long overview of development on the SharePoint 2010 platform. Increasingly, organizations are developing SharePoint based solutions. This workshop is designed to give developers basic and intermediate information about how to leverage the SharePoint platform to create enterprise SharePoint applications. Ideally, attendees will already have some SharePoint end user experience, be familiar with Visual Studio, and possess some knowledge of .NET programming language.

Thursday, June 2

1:15-2:30: Developer's Intro to Imperative Workflow in SharePoint 2010 (301 in Commonwealth Ballroom)

Visual Studio 2010 SharePoint Project Items for Workflow, Workflow State (Declarative properties, Imperative properties, Bind to existing property, and Bind to new property), Fault Handling, Start to Stop > Remove to Allow, Creating a SharePoint Task, Stop for Green Activities: OnTaskChanged, Correlation Tokens, Guid.NewGuid() not new Guid(), Property Bags, CodeDOM and Code Conditions, If/Then/Else Activity, While Activity, Send Email Activity, and Association/Initiation Forms. Hold on to your hats for this supercharged introduction to Workflow.
TECHNICAL LEVEL: Intermediate

Friday, June 3

10:00-11:15: Creating Custom Service Applications (601 in Back Bay D)

SharePoint 2010 includes a new facility for moving intensive processing from the Web Front End servers and onto load-balanced application servers. A Service Application Farm can even be configured to allow other Farms to offload their processes to a centralized and/or dedicated set of application servers.

However, with over a dozen moving parts, Service Applications can be quite overwhelming to create. In this session, Todd will simplify the process so that everyone can be successful implementing a Service Application.
TECHNICAL LEVEL: Expert

11:30-12:45: PowerShell - The Power of the Pipe (708 in Back Bay D)

Windows, Active Directory, SQL Server, Exchange and now SharePoint use a common administrative environment called PowerShell. This session will cover the constructs of the new language, explore some of its nuances, and demonstrate how to use it to query and manipulate a SharePoint environment. Come see what PowerShell has over a traditional Console Application or VBScript. If there's time, we'll end with details on creating a simple custom PowerShell cmdlet.
TECHNICAL LEVEL: Intermediate

<Todd />



Apr 22
Published: April 22, 2011 12:04 PM by  Dave Pileggi

Back story: Sitting with a client, their entire focus for their SharePoint project was geared around the social networking abilities of SharePoint 2010.  What I did know, was area got a huge upgrade between 2007 and 2010.  I also know how MySites work, how they are configured.  I would even go far as to say, I am quite comfortable with setting up Profile Synchronization despite its idiosyncrasies.  The SharePoint 2010 proof of concept was up, everything was running smooth, and AD was synchronizing nicely.  Lets see how this bad boy works with Office 2010.  Then to my stark realization the supposed super cool, outrageously awesome tie in to SharePoint and Outlook information called the Office Social Connector was blank.  NOTHING!  Its just a flick of the switch, right?  Not exactly.  I walked into this looking at Office 2010, Outlook 2010 specifically, as a black box that knows what to do.
OSC1

 

 

Wowsers, where’s the info!?

 

The Problem: So here is the problem I encountered.  SharePoint and Office do work well with each other, BUT…  There is more to the Office Social Connector than meets the eyes. There are more steps involved depending on what you want to display.  The problem lies in, there is very little about it in one place.

Needed Information: After several days of piecing fragmented information together, the black box began to become more translucent.  Let me share with you my findings.  This is not going to be a huge developer deep dive of vast proportions to break the code to the Fort Knox of Microsoft Code.  This is to try and give to you what I learned in layman’s terms in every day speech.  This way you know what is needed to make the Office Social Connector work with your network.  Minimally.  If your looking to tie it to other sources, such as Facebook, LinkedIn etc.  No soup for you.

Nothing was in the social connector, not even emails related to that individual.  How could that be?  What was wrong?  What needs to be put in place?  Windows Desktop Search.  Yeah you heard me correctly.  It makes sense when you think about it.  My client is still running on a Windows XP image.  Windows Desktop Search was not a part of the image.  So this is why even this information was not available.  Here is where I got found the fragment that pointed me in that direction.  “To take advantage of the features that are available with the Outlook Social Connector, you must run Outlook 2010 in Cached Exchange Mode with Windows Desktop Search and have Microsoft SharePoint Server 2010 My Site configured for users. In this configuration, local items — such as e-mail messages, meetings, and attachments from the sender — will be included in the communication history. Additionally, with My Site configured you can view the activity feed from the sender’s My Site.” This can be found Determine which features to enable or customize in Outlook 2010.

Once I installed Windows Desktop Search and it indexed my machine, as if like magic most everything started up.  Sweet! Oh yeah baby!  Out of morbid curiosity, I switched over to my laptop which is running Windows 7.  I found a pleasant surprise.  My information was already showing.  Suddenly I remember, Windows Desktop Search is baked into Vista and Windows 7.  No wonder why I was just expecting it to work.  Certainly good to know.

As for the feed updates.  not nearly as difficult.  Click the big green + Add under any of your pictures and let it rip.  Type in the URL to your MySites, then username and password. BAM! There it is.  This was not difficult.  No worries, there.

GreatWall

Last thing, seems to be a wall bigger than the Great Wall of China… photos.  Why are they not there?  We all put our images in our SharePoint profiles.  Yeah… Yet, nothing. Grrrrr! It took several days of research and redesigning my Bing (see that Microsoft! Smile with tongue out) searches to get the information I was looking for.  When I finally came to the answer I must have looked like a deer in the headlights.  I was certainly not expecting it.  I knew at the clients many of the executive board want the images populated.  I also knew we were going to be in a battle with the AD owners.  Let me give you the excerpt from the Blog post the Office team put out there about this very thing that helped me understand what needed to happen. “

I’ll use Active Directory since it will be the most common type of server used. What is the benefit of storing pictures in Active Directory? Well, the new Outlook social connector will pull from what is stored in the thumbnailPhoto attribute so a picture of a sender is visible in email. SharePoint 2010 will sync users pictures directly to the thumbnailPhoto attribute.” Found at SharePoint 2010 Profile Picture Property 101.  Now if you are like me you are going to say, what was that?  Store the images in AD?  Really?  I have to say… Really.  We tested the theory and sure enough, the images once all the AD servers synchronized.  So this is where it gets interesting.  How are you going to get the images in there? Well SharePoint can do it!  BUT (There always is a big butt with these, isn’t there?) This means the battle with AD team members will have to be picked up again.  This time they are going to have to give your LDAP service account even more privileges to make changes in AD. Good times will be had with your governance committee to give solid business reasons as to why you want to increase the permission radius of your LDAP account.  Unless you have the trump card, “Because the executives said so.” Everyone has to give their LDAP account Replicate Directory Changes permission.  That was a battle to let them understand that without it SharePoint Profile Synchronization would not happen.  Here is the excerpt from the TechNet article of what needs to be added. “If you will export property values from SharePoint Server to AD DS, the synchronization account must have Create Child Objects (this object and all descendants) and Write All Properties (this object and all descendants) permissions on the organizational unit (OU) that you are synchronizing with. See Grant Create Child Objects and Write permission for instructions to grant this permission.”  Yeah, this is to allow you to change SharePoint from import to export.

Solution Had:  Once these changes were put in place the Office Social Connector worked like a champ.  Lesson learned, SharePoint touches everything.  Its no longer the simple plug and play of 2001. (If you could even call that plug and play)  I needed to put this out there because I know many of you are looking for the same answers.  With them being spread all over the internet, having it in one area, certainly helps.



Mar 25
Published: March 25, 2011 08:03 AM by  Jim Bob Howard

Look! It's a weekend! It's a Saturday! It's a SharePoint Saturday. This time, it's just down the road in San Antonio, home of the Alamo. I am honored to have been asked to give two presentations at #SPSSA on April 2.

SharePoint Saturday is a FREE event for those who want to learn more about SharePoint and how they can use it in their organization. They happen all across the country, and all around the globe. If it hasn't come to your neighborhood yet, it will!

Reserve your seat now!

Come stay all day and hear some terrific speakers from all over. I'm on at 9:20 and 2:20:

Alphabet Soup: Intro to HTML, CSS, XML, XSL, SPD, and jQuery
So you DON'T know HTML. That's OK. In this session, we'll start with the basics to help you find what you're looking for on a SharePoint page. Using SharePoint Designer, we'll take a look under the hood of our pages. Using IE Developer Tools, FireFox's Firebug, and a simple View Source, attendees will come away with a clearer picture of what goes on behind the scenes on a SharePoint page.

SHAREPOINT VERSION: 2007 (much will port to 2010)
Level:  100
Audience:  End User, Business User, Soon-to-be Power User
Time: 9:20 AM

Don't forget to sign up!

Extending the Data View Web Part (DVWP)
Based on my popular EndUserSharePoint series and eBook of the same name, I will walk through a real-world solution that combines several take-away concepts that you can incorporate into your own SharePoint customization to extend this powerful webpart to meet your company's or client's needs.

PREREQUISITE: HTML (SharePoint Designer 2007 or 2010 required)
AUDIENCE: Power User, End User, Site Collection Manager
SHAREPOINT VERSION: 2007 (much will port to 2010)
Level:  100-200
Time: 2:20 PM

Many other great speakers are coming in from all over the country. So, be sure to R-S-V-FREE now!

If you come, please introduce yourself. I can't wait to meet you!



Mar 03
Published: March 03, 2011 19:03 PM by  Daniel Galant

There have been many changes and improvements with the release of SharePoint Server 2010 and how it implements a number of features and services. One of those features is the manner in which Themes are created, applied and customized in your SharePoint deployment. While playing with the new theming engine, I came across a number of articles and posts dealing with how to create themes using Office applications, such as PowerPoint and Word. However, there were not many that dealt with the customization of your CSS through the use of the new Theme Comments that SharePoint will leverage in order to apply your theme scheme to your customized Cascading Style Sheets (CSS).

This article deals with that very topic as I’ll endeavor to guide you through how to create and apply theme comments to your custom CSS so you can indeed leverage Themes in SharePoint 2010. To start off, let’s simply take a look at attaching some custom CSS to a Master Page in order to apply our own styles to the SharePoint site.

While there are several methods for attaching a custom style sheet to your Master Page, best practice dictates using the <SharePoint:CssRegistration> link in the <Head> of your Master Page. With SharePoint 2010 now supporting the After property, you can ensure that your custom CSS is applied after SharePoint’s core styles.

Master with attached CSS

Now we’ll also add a custom header image to the page so that we’ll be able to leverage the RecolorImage token as well later in the article.

Added Header Image

Let’s take a look at the CSS itself.

Original custom CSS

Notice the body #s4-ribbonrow setting the background-color as well as the TopHeader class pointing to our custom image. There are no theme comments added to the CSS yet, so the ribbon row color won’t be affected when you apply a theme to this site and no changes will be made to the header. Setting the new master page as our default master for the site will now render the site as in the image below.

Site Settings page with new master applied

If you then apply a theme to the site what happens? Let’s use the Vantage theme and see what the effect is.

Vantage applied no comments

Notice the changes to the TopLink, QuickLaunch and settings page, but the ribbon row and custom header remained the same. In order for these elements to also be affected by applying a theme, you must add the appropriate theme comments to your custom CSS.

In order to leverage theme comments when they are added to your custom CSS, you must first be sure to place your CSS files into the proper location within your site so that SharePoint will actually read them and apply the settings to your pages. For theme comments to be read by SharePoint when you apply a theme, you need to place your custom CSS files in a folder called Themable that you create in the Style Library of your site. This folder does not exist out of the box, nor will it be created magically for you when using custom CSS and theming.

The Style Library before:

Style Library before

The Style Library after creating the Themable folder:

Style Library after

Once you have created the Themable folder, import your custom CSS files into this location and be sure that your registration links are pointing to these files and not somewhere else in your site. Now to make your styles leverage themes when applied, you need to add the theme comments to your CSS.

There are three different tokens that can be leveraged by your CSS, ReplaceFont, ReplaceColor and RecolorImage. I’m not going to go into depth on the effects or properties of these elements here but ReplaceFont will let you change certain font elements to use one of the two available theme fonts, ReplaceColor allows you to substitute any of the 12 theme colors into your styles and RecolorImage will allow you to use any of the 12 theme colors in your images. We’ll see more on this later.

Right now we are going to add a comment so that the ribbon row will be effected when you apply a theme to the site. Since we are trying to leverage the theme’s colors to apply to the ribbon row, we’ll use the ReplaceColor token. The syntax for the comment is as follows:

/* [ReplaceColor(themeColor:”color”, property:”value”)] */

In the above comment, color represents one of the 12 theme color choices that you want to use to replace the color property of your style such as Dark1 or Accent5. For property you can use either themeShade or themeTint to darken or lighten (respectively) your color choice with a value between 0.0 and 1.0. Be aware that if you are not going to use the property:”value” option, do not include the comma in your comment. Doing so will cause SharePoint to skip your comment and you’ll be trying to figure out why your choices are not being applied.

The image below shows the theme comment added to the custom CSS file.

ReplaceColor comment added

This line simply tells SharePoint to replace the background-color #abc830 with the themes Dark2 color. You’ll now save your modified CSS and try applying a theme. Once again I used the Vantage theme. The image below shows you the 12 colors defined by this theme.

Vantage Color scheme

The result of applying this theme at this time is the following.

Vantage applied CSS not saved

Alright. So what happened to the ribbon row and the custom header we applied? Here you see the first of several issues you can run into when trying to use theme comments with your custom CSS. The site that I am working with in this example happens to be a publishing site and so the Style Library is under content approval. This means that any changes made to its files need to be published as a major version and approved before they can be properly used. Now while SharePoint seems to read and apply changes made to the CSS styles without having to go through all this, it does not process your theme comments until you have an approved major version of the file. As a matter of fact, as can be seen here, it seems to completely disregard the style altogether.

After publishing the file as a major version and approving it let’s apply the theme again. Theme comments are only processed at the time the theme is actually applied to the site. Therefore, any time you make a change to your file you will need to re-apply your theme to see the effect.

Theme applied and published

Here you can see that the ribbon row has now picked up the Dark 2 color of your theme, but the header is still the original green color. To change this you need to use the RecolorImage token in the header’s style declaration. The syntax for the RecolorImage token is as follows:

/* [RecolorImage(themeColor:”color”, method:”value”)] */

Once again color is the theme color you want to use with your image. Value can have one of three values, Tinting, Blending, or Filing. Tinting uses your theme color for the image colors, Blending mixes your theme color with the original color of the image and Filing completely fills the image shape with your selected color. In the image below you’ll note that I am going to recolor the image using the Accent 2 color and tint the image.

RecolorImage comment

Again you need to publish and approve the CSS file after making the change and then reapply the Vantage theme. The result is as follows:

Vantage applied tinting

If you choose to use the Blending option it would look like this:

Vantage applied Blending

One point I would like to make here, in my experience the value is case sensitive, Blending will work but blending will not.

So you can see that you have several options when it comes to themes and your custom CSS. Take some time and play around with the choices provided by using theme comments and see what effects you can come up with for your sites.

I hope this article helps you avoid some of the issues I ran into and gets you smoothly on the theme scheme highway. Till next time….



Nov 11
Published: November 11, 2010 11:11 AM by  Paul Schaeflein

I’m excited to be selected to speak at the European Best Practices Conference! The volcano created a major disappointment last year, but Steve tells me that he has had a talk with the appropriate people to sort that out for this year. Smile

It will be the SharePoint conference to attend in Europe in 2011, with 96 sessions from 69 speakers. No other conference outside Microsoft’s in the US will have this many talented SharePoint speakers in one conference. Plus, there will be the usual social events (SharePint) and a DVD full of recorded video, MP3 and PPT’s sent out after the conference.

The conference expects to sell out so booking early is recommended.



Aug 18
Published: August 18, 2010 10:08 AM by  Paul Papanek Stork

s2logo

Are you an experienced SharePoint or ASP.NET developer?

If you are, then ShareSquared is looking for you.  Our business is expanding and we are hoping to hire some more highly talented people to join our company.  ShareSquared architects and developers are seasoned computer science professionals with a thorough understanding of proper software construction, design patterns and best practices.

Our team is comprised of:

  • Microsoft SharePoint MVP's
  • Senior .NET Architects and Developers
  • 100% Microsoft Certified Professionals
  • Technology leaders in the SharePoint community
  • Former Microsoft SharePoint Dev-Team Members

If you would like to work with some of the best of the best than please check out: http://www.sharesquared.com/company/Pages/Careers.aspx and send your resume to careers@sharesquared.com



Jul 02
[Long post!]
 

Two weeks ago, the conference I’d been helping organize came to fruition and was held here in Sydney over two days – 16th and 17th June. The conference has since been referred to by many as one of the best and most successful SharePoint conferences ever held! The conference, in its first year here in Australia, had in excess of 600 attendees, it attracted speakers like Arpan Shah from Microsoft in Redmond, Todd Bleeker from Mindsharp (USA), Michael Noel (USA and author of the upcoming SharePoint Server 2010 Unleashed book by SAMS) and numerous other well known and respected international and national SharePoint experts and speakers. Delegates who attended the event travelled from all around Australia, including Perth, Melbourne, Brisbane, Adelaide and Canberra.

Debbie Ireland – SharePoint MVP from New Zealand (SPEvents) – was at the helm of organizing the Australian (and New Zealand) event/s – this year also saw the second New Zealand conference, held over in Wellington the week prior to the Australian conference, and which saw a 25% increase in attendance on last year’s conference! Debbie, and her team from New Zealand, did an absolutely outstanding job in organizing the conference, conference logistics and behind the scenes project management – it was a pleasure to meet and work with them – and I look forward to working with them and supporting them in future like endeavours. It was also a pleasure to work alongside the other conference organizers (both Australian and New Zealand), including James Milne (Brisbane), Mark Orange (NZ) and Brendan Law (Melbourne).

We had a fantastic line-up of sponsors – we also received favourable feedback from delegates on our conference sponsors, including the fact that exhibitor stands were easily accessed throughout the conference and session breaks. See the conference sponsors page here: - http://www.sharepointconference.com.au/sponsors.htm. Plus, a huge thank you to those sponsors who provided the prize draw prizes for both Day 1 and Day 2.

So, what made the conference a success? I believe the fact that (1) we (the key organizing team) all worked as a team – with a shared vision - from the outset and throughout the 6-7 month period leading up to the event; (2) we are all SharePoint experts (or SharePoint subject matter experts and actively working with (and in) SharePoint 2007 and SharePoint 2010 and related technologies), so we had a good feeling for the market and what people would be interested in, and we carried out market research from the outset; (3) we had a good assortment of topics and allocation of speakers; (4) we included a number of tracks to suit all audiences, including business, technical, Voice of the customer (real-life implementation scenarios) and vendor-specific sessions – this attracted a diverse group of people – many from the same company/ies who saw having the multiple tracks of real benefit - including System admins, developers, designers, business analysts, project managers, CTO’s and CIO’s and other business stakeholders – having such a diversity of tracks and people allowed for cross-pollination and sharing of information all at once!; (5) it was a ‘community focussed’ event and we had the SharePoint community behind us who greatly promoted the event and provided support throughout the two days, with the likes of a User Group Community Booth (the go-to spot for SharePoint questions and post-session follow-up) which was manned by the Australian and New Zealand SharePoint community throughout the entire conference; (6) We had Microsoft’s full support, both as a sponsor and as a community-focussed supporter, from the outset; (7) the venue – the Hilton Hotel – was the perfect venue, in terms of location, rooms and comfort – I constantly heard very positive feedback about the food – FOOD is an important part of any IT event! (8) The sponsor/exhibition area was well laid out and easily accessible to delegates throughout the conference; (9) the Ask the Experts panel – this was a great way of winding up the conference on the final day and we encouraged several international and local speakers to get involved and to include a good cross-section of SharePoint skills – including admin, developer and infrastructure.

This post is by no means the first, or only, post-conference write up. We’ve (the organizers) received numerous congratulatory e-mails and feedback; I’ve included a couple of links below:

Craig Bailey (@craigbailey) – convenor of the popular ‘Sydney Business and Technology user group’ and who attended the conference - provided a great post conference review - http://www.craigbailey.net/australian-sharepoint-conference-review/ (thanks, Craig)

IDM – our media sponsor and partner throughout the conference – also wrote a good post-conference review - http://idm.net.au/article/007910-australia-sharepoint-conference-schedule-return-2011 - interestingly, this article cites the percentage of female conference attendees at 25% - a vast (and welcomed) contrast to that number usually seen at IT events.

Also, a big thank you to Rose Stamell, Microsoft, for organizing the wrap-up networking drinks for MVPs and Speakers at The Hilton – it was a nice way for the conference speakers to reflect on the conference and discuss SharePoint goodness. Plus, a big thank you to Emantra Hosting Solutions (Australia) – and Mark Rhodes – for providing and hosting the main MYSPC SharePoint 2010 site used throughout the conference and provisioning and hosting the individual delegates trial SharePoint (server) 2010 sites.

Well, what about next year’s event? We hear you and planning is already underway for next year’s (2011) Australian SharePoint Conference. Thank you to all those conference attendees who completed the preferred conference location survey during (and post) the conference – even those who cheekily completed the survey multiple times! J At this stage, Sydney is the favoured location. In terms of next year’s conference dates, based on feedback received from this year’s event from Microsoft, sponsors and delegates, next year’s conference looks to be 8th and 9th March, 2011, at The Hilton Hotel. Keep an eye on the conference site – http://www.sharepointconference.com.au for further updates. Now is the time to start planning to attend!  Also, if you are interested in attending next year’s New Zealand event, then keep an eye on the New Zealand conference site – http://www.sharepointconference.co.nz – for updates, including dates and location.

If you are interested in speaking at next year’s conference, then initial speaker interested is being captured via http://spevents.co.nz/AUSPC2011/default.aspx - simply visit the site and complete the Speaker Registrations survey by clicking on the link in the left-hand column. Similarly, if you are interested in speaking at next year’s New Zealand SharePoint conference, then visit http://spevents.co.nz/NZSPC2011/default.aspx and complete the Speaker Registrations survey.

Hungry for more SharePoint information now? In terms of other SharePoint events happening between now and next year’s SharePoint conference, here’s a list of some of the events happening here in Australia:

SharePoint Saturdays Australia: Sydney (7th August - http://www.sharepointsaturday.org/sydney); Canberra (18th September - http://www.sharepointsaturday.org/canberra); Melbourne (16th October - http://www.sharepointsaturday.org/melbourne) – they are FREE but you need to visit the registration sites shown in order to register for each event.

SharePoint Saturdays globally (some of these happen as online events!) – see http://www.sharepointsaturday.org for a full listing of SharePoint Saturday locations.

TechEd Australia – will include a number of Office and SharePoint tracks - http://australia.msteched.com/ - up on the Gold Coast again this year (2nd year running at the same location!). Don’t forget about user group registration discounts for TechEd AU - if you are involved in a UG then you should ask your UG leader for further details. Unfortunately, I will not be attending this year’s TechEd due to a number of existing Sydney-based commitments.

Office DevCon, Sydney (will include both Office and SharePoint tracks) – http://www.officedevcon.com.au  – FREE plus a two-day weekend event – but you must visit the registration site in order to register for the event so we can properly cater for all for both food and space.

Australian SharePoint user groups – see http://www.sharepointusers.org.au/default.aspx - for a user group location near you. SharePoint user groups are a great place for meeting other SharePoint enthusiasts and experts!

SharePoint MVP online chats hosted by Microsoft – these chat sessions happen on a monthly basis (as of writing this blog post) – see details of the latest chat session -  http://blogs.msdn.com/b/sharepoint/archive/2010/06/17/live-chats-to-learn-more-about-sharepoint-with-the-mvp-experts.aspx – and are a great place to ask your SharePoint questions, ranging from administration, development, infrastructure and design.

SharePoint 2010 MSDN forums – a great place for asking (and answering) SharePoint 2010 questions - http://social.msdn.microsoft.com/Forums/en/category/sharepoint2010.

SharePoint 2007 MSDN forums – questions and answers specific to the SharePoint 2007 versions - http://social.msdn.microsoft.com/Forums/en-AU/category/sharepoint

PLUS, Microsoft has announced their SharePoint 2011 conference, happening over in Anaheim, California, in October, 2011 -  http://blogs.msdn.com/b/sharepoint/archive/2010/06/08/save-the-date-sharepoint-conference-2011.aspx.  

2010 – it’s a wrap!

 



Dec 20

 

Corro'll Driskell

December 20, 2009

Happy holidays to all, I am Corro’ll (Corel) Driskell, a SharePoint Architect on the SharePoint platforms. As many of you know I do many things around the SharePoint platforms and found it difficult to pick a starting place since my involvement on the TAP program.

So, I wanted to kick off my blogs, referencing the SharePoint 2010 platform and its tools, with SharePoint Designer 2010 (Beta). I will post a number of blogs, as a part of this blog series, referencing the many features of SharePoint Designer 2010, such as, the new User Interface (UI), the ribbon, and a number of other features. Bottom line, this blog provides an overview focusing on the UI of SharePoint Designer 2010. This is not a deep dive into the capabilities of SharePoint Designer 2010 (BETA).

Microsoft SharePoint Designer 2010 (Beta) allows Designers – non-programmers - and, encourages, Developers, and I mean encourage, to build web based applications on SharePoint’s latest platforms (SharePoint Foundation 2010 and SharePoint Server 2010).

To start, you must locate SharePoint Designer 2010 in the Microsoft Office application group – its default location.

image

SharePoint Designer 2010 (Beta) UI 1

One of the great things about the, new, SharePoint Designer 2010 experience is the initial start. Immediately, the user (Designers and Developers) is provided visual feedback upon the start of the application. It is my experience that the loading is rather quick versus the experience with the previous version, SharePoint Designer 2007.

image

SharePoint Designer 2010 (Beta) UI 2

After SharePoint Designer 2010 (Beta) initially starts, you will notice that there are two primary focuses. The user has the option to Open a SharePoint Site or Create a New SharePoint Site. The new initial UI is a far step from the traditional experience of SharePoint Designer 2007. In fact, the user does not need to browse around the interface attempting to introduce them to the application. It is all there front and center.

In contrast, the fact that there is an option to use SharePoint Designer 2010 (Beta) on the My Site is discouraging. In another blog posting we will discuss the new features available on the, new, SharePoint 2010 platforms that afford the SharePoint administrators and Site Collection Administrator better control now is not the time to dive into those features, also, we will focus on the various options in more detail in a future blog as a part of this series.

image

SharePoint Designer 2010 (Beta) UI 3

After, either, Opening the Site or Creating a New Site, the user is presented with the Site Setting information page. Of course, the most notable change, in the SharePoint Designer 2010 UI, is the presentation of the, new, Ribbon. Again, I will dive deeper in the various features afforded by the Ribbon in a later blog as a part of this series.

The Settings Page provides a significant amount of information , such as, the Site Information, Permissions, SubSites, also known as Webs, Settings and Customization. The fact that this Designer Dashboard, yes, I called it a dashboard, and no it isn’t Microsoft’s official terminology, is forthcoming with quite a bit of information. This information was, either, lacking or wasn’t as easy to obtain in SharePoint Designer 2007. Again, we will dive deeper into many of the features during this series in a future blog. Although the tab interface is not new to SharePoint Designer 2007, I find the tab interface in SharePoint Designer 2010 (Beta) a bit more inviting and user friendly.

image

SharePoint Designer 2010 (Beta) UI 4

Lists and Libraries are nested in a simple view in SharePoint Designer 2010 (Beta). It is more similar to a report versus a hierarchical structure, as leveraged in SharePoint Designer 2007. Also, I want to encourage you to focus on the changes in the context of the Ribbon’s interface as we navigate from the Site Settings page. Of course, we can witness a heavy use of the bread crumbs in the SharePoint Designer 2010’s interface. The bread crumb was presented as a simple navigation control in the SharePoint Designer 2007 interface. Again, there was an emphasis on the hierarchical structure.

image

SharePoint Designer 2010 (Beta) UI 5

Workflows are also presented in a report form. The Workflows’ report provides summary information referencing workflows leveraged by the site or web. In the SharePoint Designer 2007 interface, Workflows were presented nested in a Workflow library or folder, depends on whom you ask. Again, there is an emphasis on the actual artifacts’ hosted on the SharePoint 2010 platform. Of course, there is a significant amount of new features for SharePoint Designer 2010 (Beta) and its capabilities to build flexible workflows. Again, we will dive deeper into those capabilities through-out this blog series.

image

SharePoint Designer 2010 (Beta) UI 6

The Site Pages provides summary information about located in the Sites Pages Library. The Site Pages Library is used to create and store pages for a specific Site or Web.

image

SharePoint Designer 2010 (Beta) UI 7

The Site Assets provides a reports view of files that are included on the pages of a Site or Web. In the SharePoint Designer 2007 UI, the storage locations for files included on the pages were stored in a number of locations, such as, the images folder.

image

SharePoint Designer 2010 (Beta) UI 8

The Content Types page provided a summary report about the various collection of content types, leveraged by the Site or Web, to establish consistent management of content. Immediately, you will find information, such as, Group, Parent, Source and Description. Most importantly, the UI provides quick access to manage the various content types. SharePoint Designer 2007 did not afford users this type of reporting feature. We will explore this new feature further as a part of this blog series.

image

SharePoint Designer 2010 (Beta) UI 9

The Site Columns UI provides a summary report referencing a collection of columns available to Lists, which includes, Column Name, Type, Group and Source. In the SharePoint Designer 2007 UI we did not have a central presentation of the linked columns for a Site or Web.

image

SharePoint Designer 2010 (Beta) UI 10

The External Content Types summary reports provides information, such as, Display Name, Name, External System, Type and Namespace, about External Lists, also known as SharePoint Lists, that exposes data from various back-end repositories – databases, web services and other Line-of-Business applications. The beauty of it all is that this feature is provided in the SharePoint Designer 2010 UI.

image

SharePoint Designer 2010 (Beta) UI 11

The Data Sources summary report provides information, Name, Type and Description, about the various data sources available to the Site or Web. The report is categorized based on type, for instance, Lists and Libraries. Again, this is a great presentation in the UI so that users are not required to leverage the hierarchical structure to obtain the information similar to the SharePoint Designer 2007 UI.

image

SharePoint Designer 2010 (Beta) UI 12

The Master Pages summary report provides information, Name, Title, Content Type, Size, Modified Date, Modified By and Comments, about all of the artifacts, Master Pages, Page Layouts, images and xml files, found in the Master Page Gallery.

image

SharePoint Designer 2010 (Beta) UI 13

The Site Groups summary report provides some information, Group Name and Description, about the various Groups with, some level, of access to the Site or Web. You have to ask yourself, where are the contributor settings. Again, we will dive deeper into the many changes in a later blog.

image

SharePoint Designer 2010 (Beta) UI 14

The SubSites summary reports provide a list of the Sites or Webs within the hierarchical structure. The report provides information, such as, Site Name, URL and Modified Date.

image

SharePoint Designer 2010 (Beta) UI 15

Finally, the All Files provides a summary report of all content for a Site or Web, which includes the SubSites. The information provided includes, Name, Title, Size, Type, Modified Date, Modified By and Comments. The significance here is users have a more efficient way to ascertain the information about the artifacts that make up SharePoint 2010 sites.

image

SharePoint Designer 2010 (Beta) UI 16

The overarching selling point is that SharePoint Designer 2010 encourages rapid building and deployment of, web-based, solutions that meet business needs, leveraging the various features – lists, content types, workflows and a number of other features – of an organization. Here is the catcher, there is no-coding. Included in this blog series, I will work to cover the various use cases and features.



Dec 08
Published: December 08, 2009 13:12 PM by  Kim Lund

Depending on who you are in your organization, you may either LOVE SharePoint or HATE it. There are many promises on what SharePoint will deliver; however, have those promises become a reality in your organization? The answer may be the key to why your colleagues, employees, and end users use SharePoint or create work-arounds to avoid taking the time to understand it.

If you find that user adoption of SharePoint is avoided or slower than anticipated in your working environment, you are not alone. Many students that I have trained, consulted and listened to have expressed their pain points for SharePoint adoption. As I am blessed to work with and interact with many SharePoint users I have discovered and witnessed what works and what doesn't for successfully increasing people's use, acceptance, knowledge and confidence of SharePoint.

Pain Points

Some of the Pain Points I've heard expressed as it relates to slow user adoption are:

  • Employees Unaware of Powerful SharePoint Features
  • SharePoint Deployed Without Governance
  • User Community Not Involved in Planning SharePoint Site Use
  • End Users Expected to Create or Manage SharePoint Sites
  • Inefficient Use of Document Management Features
  • Uncertainty that Confidential Information is Secure
  • Added Training Needs Burden Staff
  • SharePoint Training Not Based on End User Needs
  • Help Desk Unable to Answer SharePoint Questions
  • Change in Organizational Culture Required for SharePoint to Be Accepted

How to

The key to overcoming these pain points and increasing end user adoption of SharePoint and achieving better buy-in from users at large is to develop a plan that includes:

  • Governance planning that includes:
    • Key members from various business units - not just IT
    • Focus on the vision and long-range goals
    • Ability to adapt to changes in requirements
    • Relevancy to needs of the organization
  • Taxonomy planning that includes:
    • Governance team that will own and manage the taxonomy
    • Classification of information according to categories
    • Focus on the business, not on SharePoint
  • Communication plan that includes:
    • What SharePoint is
    • Governance and taxonomies for use in SharePoint
    • Building excitement for what SharePoint will be able to do in their environment
    • How it fits into the existing ecosystem of technologies
    • What it might be replacing
    • Discovering and building SharePoint advocates
  • A training plan that provides succinct training that:
    • Focuses on the needs of individual users
    • Available when needed
    • Holds users accountable
    • Teaches the technical "how-to" about SharePoint
    • Shares the reasons and best practices for using SharePoint
    • Incentivizes employees
    • Provides key competency certifications that encourage and build confidence when key concepts are mastered

If any of these important steps are missing in a SharePoint adoption plan, you will find that the effectiveness of the other steps will be less. For example, if you have not provided governance and have a poor taxonomy plan, use of SharePoint will be inconsistent. When this occurs, even if users receive useful training, there will be confusion about the proper use of SharePoint features. Even if governance and taxonomy planning has been completed but this information is not communicated to employees, there will still be confusion and inconsistency with the use of SharePoint. Lastly, if you have planned for proper governance and taxonomy, communicated to your employees that SharePoint is coming, but then fail to train employees, end users will not know how to utilize the new features provided by SharePoint.

For this reason, in order to receive the anticipated return on investment (ROI) of a SharePoint deployment, the key for success in usability and user adoption is tied closely to implementing a plan that includes governance and taxonomy, communication to employees, and relevant training.

First Get Help!

If you think the suggestions included in the previous section are a tall order, you are right. You are probably not staffed to handle all of the steps that are recommended and you likely do not have the SharePoint expertise in-house to accomplish this plan. Mindsharp has the expertise, services, and products to help you implement all four key areas mentioned above. The biggest struggle for any company is a well thought out, effective training plan that meets the needs of the end user population.

That is why we developed UserVersity to deliver an end-to-end turnkey SharePoint communication and training program. We work with your staff to compliment the talent you have in-house, and then provide expertise in areas you may not have. UserVersity provides communication tools and a variety of training tools including:

  • Adoption Manager
  • E-learning
  • Online or in person instructor-led training
  • Quizzes
  • Certifications
  • Incentives and motivation for employees you would like to target

We are excited to be the first to offer such a flexible solution that encompasses all of your needs and provides a customized approach to training.

If you would like to learn more about this you can also attend a free 30 minute webinar about Increasing End User Adoption and about our UserVersity program. Please check out our website at http://www.mindsharp.com/Default.aspx?top=TRAINING&left=END_USER_ADOPTION

 

The following chart summarizes how Mindsharp and UserVersity can assist organizations when dealing with one or many of the pain points highlighted in this paper.

Pain Point 

How Mindsharp Can Help 

Pain Point 1: Employees Unaware of Powerful SharePoint Features 

Mindsharp's UserVersity provides a communication plan that informs users about the key SharePoint features. Our communication plan includes e-mail templates, posters, and additional resources as requested.

Pain Point 2: SharePoint Deployed Without Governance 

Mindsharp has SharePoint experts that can guide your governance and taxonomy planning or provide you with resources to assist your team in planning these important components.

Pain Point 3: User Community Not Involved in Planning SharePoint Site Use 

Mindsharp can help obtain feedback about who should be part of the team that develops your SharePoint governance and taxonomy plans.

Pain Point 4: End Users Expected to Create or Manage SharePoint Sites 

Mindsharp's UserVersity includes training in various formats that provides end users with the information they need to create and manage sites. 

Pain Point 5: Inefficient Use of Document Management Features

Mindsharp's UserVersity provides training on correct document management including topics such as:

  • Creating and saving documents
  • Adding metadata
  • Searching
  • Collaborating
  • Using check in and check out
  • Version history

Users can choose training that meets their needs and fits into their busy schedule. 

Pain Point 6: Uncertainty that Confidential Information is Secure 

Mindsharp's UserVersity provides training for end users on the topic of security. We provide thorough coverage on how SharePoint security works, as well as how to add or remove users from the SharePoint groups and permission levels. Users will gain confidence that they are securing their content appropriately.

Pain Point 7: Added Training Needs Burden Staff

Mindsharp's UserVersity provides an adoption manager that guides you through the program so you can make training decisions confidently. The advantage is that you are working with a SharePoint expert with years of training experience. 

Pain Point 8: SharePoint Training Not Based on End User Needs

Mindsharp's UserVersity is structured to provide specific training for every role and function in your organization to ensure competency in appropriate SharePoint functionality. UserVersity provides over 90 different lessons that simplify SharePoint by breaking training into six key functional competencies. This allows end users to focus on the aspects of SharePoint that relate to them currently, and then grow into other areas as their use and knowledge of SharePoint expands. Training can be repeated when knowledge of a skill needs to be refreshed or reinforced.

Pain Point 9: Help Desk Unable to Answer SharePoint Questions 

Mindsharp's UserVersity provides multiple ways to assist your Help Desk including:

  • Mindsharp has the leading SharePoint experts on staff who can answer questions from your Help Desk employees.
  • UserVersity has help desk crash courses to provide your IT and Help Desk staff with a thorough understanding of SharePoint.
  • The Help Desk can refer employees to specific computer-based training modules that address the user's problem. This is another way to provide the needed help without the Help Desk employee guiding users through each step.

Pain Point 10: Change in Organizational Culture Required for SharePoint to Be Accepted

Training with Mindsharp's UserVersity helps users understand the value of using SharePoint functionality. It goes beyond showing the "how" to teach the best practices and answer the "whys" in SharePoint. This approach helps increase end-user adoption and satisfaction.

 

Summary

SharePoint is one of the fastest growing corporate technologies on the market today. In fact, SharePoint has surpassed anticipated sales within Microsoft but has the frequency of its use in your organization surpassed expectations? Just because your organization has deployed SharePoint does not mean it is being used successfully.

I have identified some of the reasons end user adoption of SharePoint is slow in companies and offered ways to change that slow adoption. If companies create a SharePoint adoption plan that meets end user needs, SharePoint will be a tool they depend on to work smarter and faster.

 

If you would like to learn more about this you can also attend a free 30 minute webinar about Increasing End User Adoption and about our UserVersity program. Please check out our website at http://www.mindsharp.com/Default.aspx?top=TRAINING&left=END_USER_ADOPTION

UserVersity

 

 

 



Nov 15
Published: November 15, 2009 12:11 PM by  Ben Curry
I'll be speaking at the ATL users group tomorrow night at 6:30 EST. For directions and more info, see http://www.atlspug.com/default.aspx.
 
The topics are:
 
Session 1 Installing SharePoint Server 2010
Topic Description

Much has changed from the 2007 version of SharePoint. I'll be discussing a server farm installation of SharePoint Server 2010 to include the new Shared Services model (service applications), how those will upgrade, and limitations of 2007 and 2010 integration. Just for fun, I'll also give you a quick demonstration of building service applications and configuration using Central Administration and PowerShell!

Session 2 Enterprise Content Management Upgrades in SharePoint Server 2010
Topic Description

Wow! We have some really cool features that are new to SharePoint Server 2010 - DocumentIDs, robust Information Management Policies, and Document Sets. BUT, one of the most anticipated features is the centralized taxonomy and content type hub. Come see a live demonstration and early best practices for creating a content type hub and managed metadata service.

 
My apologies for posting this late. I hope to see you there!
 
Ben Curry


Oct 19
Published: October 19, 2009 17:10 PM by  James Curry
But for DBAs, you will have to set configure it. So no worries about SharePoint doing SP evilness.


May 22
Something has just come to light, here is an extract of the posting found on the SharePoint Team Blog ...

"During the installation of SP2, a product expiration date is improperly activated. This means SharePoint will expire as though it was a trial installation 180 days after SP2 is deployed. The activation of the expiration date will not affect the normal function of SharePoint up until the expiration date passes. Furthermore, product expiration 180 days after SP2 installation will not affect customer’s data, configuration or application code but will render SharePoint inaccessible for end-users." Jeff Teper/Microsoft Corporate VP/SharePoint.



Here is the link to the full text on plans to resolve and manual resolution of the issue.

http://blogs.msdn.com/sharepoint/archive/2009/05/21/attention-important-information-on-service-pack-2.aspx



Mar 04
Published: March 04, 2009 22:03 PM by  Tami Bolton

Folders can be used for large list support.

 

But...

 
 

01. Folders organize content when a item is saved, rather than when it is displayed

02. Folders/subfolders make finding an item difficult

03. A folder obscures the number of items it contains until the Folder is opened

04. Sort, filter, group, and paginate can only be applied to items within one folder at a time or to the entire list

05. It is more difficult to move an item between two folders than to change the value of a property

06. A single list item can have multiple properties but cannot be presented in two folders

07. A list item can have a required property but a folder can never be required

08. The browser URL is limited to 255 characters; nested folders make the URL unnecessarily long

09. Properties on a folder cannot be used to sort, filter, group, or paginate list items within that folder

10. New columns are added to the list items within the folder but not the folder itself



Jan 23

There are many manual methods for making a central search center available across your SharePoint implementation:

·         Adding to either Global (Top Nav Bar) or Local (Quick Launch) navigation in each site collection and/or site.

·         Adding Links to pages

·         Teaching Users to add to My Links list

In this post, I would like to suggest three methods of automating the publication of centralized search center access without having to touch individual SharePoint sites. The first two preferably use Active Directory group policies but are achievable for users on machines that are not members of your domain.

Add as Search Provider for Internet Explorer

Internet Explorer now supports multiple Search Providers for its built-in search box as shown in the figure below.

Your users can use the built-in tools to create a search provider for your central search center or you can provide a file which they can use to place the correct settings in their local registry.

To create this file, place the following test in Notepad:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{1EF4B245-681F-493C-9EF7-7AAE8262CC81}]

"DisplayName"="Portal"

"URL"="http://moss01/search/Pages/Results.aspx?k={searchTerms}&s=All%20Sites"

"Codepage"=dword:0000fde9

Replace “Portal” with the name you want displayed. Quotes are required.

In the URL, replace http://moss01/search/Pages/results.aspx with the location of your search results page. You could also change or remove the default scope (&s=All%20Sites).

The save the file with a .REG extension.

To share the file via email or in a document library, you may need to save the file with a .TXT extension and instruct your users how to download the file, change the extension back to .REG and import into their registry.

Add to Internet Explorer Links Toolbar

Although some users do not like to give up the space occupied by Internet Explorer’s Links toolbar, I am addicted to it for the sites that I use frequently. Also, it can quickly be activated / deactivated from the Tools menu as needed as well as collapsed / expanded.

Like most configurations of Internet Explorer, the contents of the Links toolbar can be pushed out to members of the domain using group policies. I find the easiest method of creating this policy is to configure IE in the desired format on a machine from which I can open the domain (or OU) group policy. Then I can simply import the local settings into the group policy and tweak them within the policy.

However, for those users whose machines are not members of your domain, the links shortcuts are contained in a folder in their favorites (C:\Documents and Settings\username\Favorites\Links). So your options are to train them how to go to the site and create the shortcut on the links toolbar or save as a Favorite in the Links folder. I suppose that zipping a links folder and sending out to users to place in the Favorites folder but that would probably be harder to teach them than saving as a favorite.

Add Link to Site Actions

Making the link to the site available to all users globally across your SharePoint farm is relatively easy even for administrators who do not normally write code.

Additions to the Site Actions menu are deployed as features. For the non-programmers, do not stop reading at this point. We are just going to do some simple cut and paste.

As long as we understand the basic components of a feature and have the basic code for two XML files, we can easily modify the menu.

A feature requires a folder containing two files, Elements.xml and Feature.xml. The folder should have a name that identifies the feature to administrators and must be unique within the C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES folder. In my example, the folder (and feature) is named EntSearch for Enterprise Search.

The contents of the Elements.xml file are:

<?xml version="1.0" encoding="utf-8" ?>

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">

  <CustomAction Id="CustomWebManagementPage"

      Location="Microsoft.SharePoint.StandardMenu"

      GroupId="SiteActions"

      ImageUrl="/_layouts/images/search.gif"

      Sequence="1000"

      Title="Enterprise Search Site"

      Description="Use this site for Enterprise and Internet Searches.">

    <UrlAction Url="HTTP://moss01/search"/>

  </CustomAction>

</Elements>

The Sequence entry controls the placement of the link on the menu list.

The Title controls the menu item name and the Description text appears below the menu item name as shown in the figure below.

The UrlAction Url is the link that is opened when the menu item is selected.

The contents of the Feature.xml are:

<?xml version="1.0" encoding="utf-8"?>

<Feature xmlns="http://schemas.microsoft.com/sharepoint/" Id="BEA70765-63BB-4bd1-927C-E72C3559D07D" Title="Enterprise Search Site" Description="This site is customized for Enterprise and Internet Searches." Scope="Farm">

  <ElementManifests>

    <ElementManifest Location="Elements.xml" />

  </ElementManifests>

</Feature>

The crucial line in this file is the Feature xmlns= line. In this line the Id must be a unique guid. Since we are not developers and probably do not have Visual Studio installed, we can use http://createguid.com/ to generate a new guid. The Title and Description need to be identical to those in the Elements.xml. for this feature, we want the scope to be Farm so that it does not need to be activated at lower levels. Farm level features are automatically activated.

Place the folder containing your two modified files in the  C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES   folder.  The feature is then deployed with the following command line:

"c:\program files\common files\microsoft shared\web server extensions\12\bin\stsadm.exe" -o installfeature -name "EntSearch" –force

Now across all sites and pages in your farm, your Site Actions menu contains an item as shown below:

Remember that a Site Actions menu does not appear unless a user has access to a link in the menu due to security trimming. So, for many of your users this may be the first time they have seen this item.

Hopefully, this post will at least cause you to think about some options for making your central search center more accessible for all your users.