SP2010 – Removing old Application Pools for Service Applications


You’re creating a new Service Application, and in the “use an existing application” pool drop-down menu you see listings for many application pools that don’t actually exist in IIS.

How this happened:

You probably created many Service Application Pools when creating old Service Applications that have since been deleted. After you told SharePoint to remove the Service Application, there was an unused Application Pool in IIS that you subsequently removed manually.

How to clean this up:

Open a PowerShell window that has the Microsoft.SharePoint.Powershell snap-in loaded, and use the Remove-SPServiceApplicationPool “APP POOL NAME” command to tell SharePoint that those old application pools no longer exist. The next time you try to create a new Service Application, those old nonexistent options will be gone.

Happy Sharing and Pointing.

Great video on document co-authoring

This video demonstrates co-authoring in Word 2010.  It would be great if they discussed implications on the versions.    As we know without checking out documents, versions grow very quickly.


Co-authoring is a bit more difficult to demo on a virtual image in SharePoint training as one needs to authenticate in both browser and Word to impersonate another user.

SharePoint Online Services Description Updated


Microsoft recently changed SharePoint online pricing as well as updated some documentation: Get the new document here

Below is the feature comparison on what’s available online. Notice that not all plans have these features. The cheap plans don’t.



SharePoint 2010 Server

SharePoint Online

Ask Me About Yes Yes
Blogs Yes Yes
Colleague Suggestions Yes Yes
Colleagues Network Yes Yes
Discussions Yes Yes
Enterprise Wikis Yes Yes
Keyword Suggestions Yes Yes
Memberships Yes Yes
My Site: My Content Yes Yes
My Site: My Newsfeed Yes Yes
My Site: My Profile Yes Yes
Note Board Yes Yes
Organization Browser Yes Yes
Photos and Presence Yes Yes
Ratings Yes Yes
Recent Activities Yes Yes
Status Updates Yes Yes
Tag Clouds Yes Yes
Tag Profiles Yes Yes
Tags Yes Yes
Tags and Notes Tool Yes Yes
Wikis Yes Yes





SharePoint 2010 Server

SharePoint Online

Client Object Model (OM) Yes Yes
Developer Dashboard Yes No
Event Receivers Yes Yes
Language Integrated Query (LINQ) for SharePoint Yes Yes
Solution Packages Yes Yes
REST and ATOM Data Feeds Yes Yes
Ribbon and Dialog Framework Yes Yes
SharePoint Timer Jobs Yes No
Silverlight Web Part Yes Yes
Workflow Models Yes Yes
Access Services Yes Yes
Browser-Based Customizations Yes Yes
Business Data Connectivity Service Yes Yes
External Data Column Yes Yes
Business Data Web Parts Yes Yes
External Lists Yes Yes
Business Data Integration with the Office Client Yes No
Business Connectivity Services Profile Page Yes No
SharePoint Designer 2010 Yes Yes
Forms: Out-of-Box workflows and customization through SharePoint Designer 2010 Yes Yes
InfoPath Forms Services Yes Yes
Sandboxed Solutions Yes Yes
Workflow Yes Yes
Microsoft Visual Studio® 2010 SharePoint Developer Tools Yes Yes
Windows 7 Support Yes Yes
Workflow Templates Yes Yes
SharePoint Service Architecture Yes Yes

SharePoint 2010 Server

SharePoint Online

Audit Opening and Downloading Yes No
Records Center Yes No
In-Place Legal Holds Yes Yes
Document Sets Yes Yes
Metadata-driven Navigation Yes Yes
Multi-Stage Disposition Yes Yes
Rich Media Management Yes Yes
Shared Content Types Yes Yes
Support for Accessibility Standards Yes Yes
Content Organizer Yes Yes
Unique Document IDs Yes Yes
Word Automation Services Yes No
Managed Metadata Service Yes Yes

SharePoint 2010 Server

SharePoint Online

Business Intelligence Center Yes No
Chart Web Parts Yes No
Data Connection Library Yes No
Excel Services Yes Yes
PerformancePoint™ Services Yes No
Visio Services Yes Yes
Calculated KPIs Yes Yes
Dashboards Yes No
Decomposition Tree Yes No
Excel Services and PowerPivot for SharePoint Yes No

SharePoint 2010 Server

SharePoint Online

Advanced Content Processing Yes No
Best Bets Yes Yes
Tunable Relevance with Multiple Rank Profiles Yes No
Extensible Search Scale Yes Yes
Business Intelligence Indexing Connector Yes No
SharePoint 2010 Search Connector Framework Yes No
Contextual Search Yes No
Deep Refinement Yes No
Duplicate Detection Yes Yes
Federated Search Yes No
Metadata-Driven Refinement Yes Yes
Mobile Search Experience Yes Yes
People and Expertise Search Yes Yes
Phonetics and Nickname Search Yes Yes
Query Suggestions, “Did You Mean?” and Related Queries Yes No
Recently Authored Content Yes Yes
Relevancy Tuning Yes No
Rich Web Indexing Yes No
Enterprise Scale Search Yes No
Windows 7 Search Yes No
Search Scopes Yes Yes
Similar Results Yes No
Single Site Collection Search No Yes
Site Search Yes Yes
Click-Through Relevancy Yes Yes
Thumbnails and Previews Yes No
View in Browser Yes Yes
Visual Best Bets Yes No
Basic Sorting Yes Yes
Advanced Sorting Yes No

SharePoint 2010 Server

SharePoint Online

SharePoint Lists Yes Yes
Web Parts Yes Yes
Improved Governance Yes Yes
Large List Scalability and Management Yes Yes
Multi-Lingual User Interface (MUI) Yes Yes
Permissions Management Yes Yes
Quota Templates Yes Yes
Secure Store Service Yes Yes – Tenant Level
Connections to Microsoft Office Clients Yes Yes
Web Analytics Yes No
Public Website No Yes (one per tenant)
Audience Targeting Yes Yes
Cross-Browser Support Yes Yes
External sharing No Yes
SharePoint Ribbon Yes Yes
Mobile Connectivity Yes Yes
Office Web Apps integration Yes – separate installation Yes – comes preconfigured
SharePoint Workspace 2010 Yes Yes
Out-of-the-Box Web Parts Yes Yes
Scalability Yes Yes
Templates Yes Yes
Accessibility Yes Yes
Configuration Wizards Yes Yes

InfoPath and SharePoint 2010: Part 3

Click here for the first post in this series, and visit us for SharePoint 2010 Training.

One thing you may notice between List and Library forms is that there are different controls available, and that Library forms have a superset of the controls available to List forms. The image below has the extra controls available in a Library form highlighted in blue.

Controls Available in List and Library Forms


Let’s start from the bottom and work our way up to explain why these are missing.


Everything missing here has to do with some sort of repeating element. Repeating elements don’t make any sense in a List form, as you can’t have some subset of your list columns have extra data in them. That’s just not how a list works. If you have columns that allow multiple selections, then you can certainly populate them individually with multiple-selection people pickers or check boxes.

But let’s say we want to have a list where we pick multiple people and multiple cars and remember who drives which car based on that information. It’s true that we wouldn’t be able to do this, but we couldn’t do it in a single SharePoint list anyhow. There is no cross-column relationship possible there, so even if we made sure to pick the same number of people as cars, we still wouldn’t know which car belonged to whom.

Note that if you create a list form that allows you to manage multiple list items with the same form, repeating containers are used by that form to handle that replication.


The only thing extra in this section is the file attachment control. In a library form you can have multiple attachments. You can do the same thing in a list form with the Attachment field, but only one of them is allowed. You can use it to upload multiple attachments, but you can’t have them in more than one section of the List form. In a library, you could have several different attachment controls in various locations.


The first piece missing from the List forms is the option button. This is not to be confused with a radio button and is instead more like a checkbox. While it is possible to re-cast a drop down list box as an option button after the control has been added to the form, it won’t behave like you would expect. Don’t do this. Feel free to experiment, but it won’t behave in any way that you’ll want.

Next we’ll talk about the absent external data column. In a Form Library this allows you to choose from a Business Connectivity Services entity. In a list form, it’s not available. If you go ahead and add an External Data column to the list and reopen the form, the controls available for the columns populated by it will be merely lines of text with no actual link back to the entity. People could put in whatever text they want. I’m sure many of you can think of workarounds for this involving population of options from web services and so on, and those are legitimate solutions, but there is no direct mechanism to mimic that behavior.

Lastly, the bulleted, numbered, and plain lists are missing. Experiment by trying to convert a list box on the List form into one of them, and you’ll find that the behavior is not what you would expect. The basic premise is that that sort of entity does not really exist in a SharePoint List, and with no available analogue the controls have been removed.


You cannot digitally sign a list form. You can’t do it for a library form either, but you can instead sign sections of it. Putting everything into one section and signing that would be functionally equivalent to signing the entire form.


The general theme, aside from the external data issue, is that you’re missing controls because SharePoint Lists do not store all of the data types available in InfoPath forms. Just as Form Library forms are a subset of what is available in standard InfoPath forms, the List forms are a further subset of that.
Until next time, feel free to contact us for any of your SharePoint 2010 Training needs.

InfoPath and SharePoint 2010: Part 2

Click here for the first post in this series, and visit us for SharePoint 2010 Training.

The first question you will need to answer before creating your form is whether it will be stored in a list or library. This question is sometimes hard to answer, so we’ll do it by analyzing some extreme cases. Your situation will likely fall somewhere in the middle, so it will be up to you to decide where your case lies on that spectrum.

For our first scenario let’s pretend that we’re working for the IRS. Someone in charge made a deal with Microsoft and our taxes will now be done by saving them in SharePoint lists. For some reason we want to put tax software companies out of business. Our architects already handled the hardware issues that would come from a hundred million people storing their taxes in SharePoint, so we don’t have to worry about that aspect of it at all. All we need to do is decide if we want to use a form library, or just a standard list form.

You may have guessed that we’ll be using a form library, but why? What reasoning drove us to make that decision?

First off, this is an enormously complicated form. Had we chosen a list form, each piece of information would be stored as column data. We’d need thousands of columns to handle every scenario, and many of those requisite columns wouldn’t be used by the majority of people filling it out. We’d be hiding most columns in every single view, and would need to have customized conditional view forms for individual items.

This alone would steer us toward a form library where we get the views for free and only extract the columns that we care about for list views, but what about alternate means of submission? With a form library, we could e-mail enable the list to allow people to fill out their taxes and e-mail them directly to the library. To do the same thing with a list would require custom code on both the form side as well as the “make a new list item” side.

This hints at another reason this scenario dictates that we use a form library: custom code. When you’re filling out your taxes, there are a lot of little things that your tax software is doing for you. It’s checking rate schedules behind the scenes to determine how much you owe. It’s determining if you’re trying to deduct health care expenses that don’t meet the minimum required amounts for deductibility. While some of these examples could be handled with basic validation in a list form, some of the information could be coming from other data sources that aren’t easily reachable from InfoPath.

We could go on for a while with even more analysis pointing to a form library for this extreme case – we didn’t even mention digital signatures, but let’s leave it at that. To boil it down to something more easily remembered and catchy:

Use a library if you’re collecting a lot of data, want alternate submission methods, or need to have custom code running in the background.

Let’s look at another scenario: We want to let people request vacation time through a web form.

What information are we collecting? The employee name, which could just be a lookup to the user information list.We want to know what days they would like to have off, so a start and end date for their vacation. We want to know their department, but we get that from their User Profile information. Maybe we want to know how much vacation time they have accrued? For our example, this is stored in another system and we’ll be looking that up manually when it comes time for approval, as there are currently no software hooks to grab that information via.

So we need three pieces of information: a name and two dates. After we get this information, we might want to have a Gantt view of it to see whose vacations are overlapping. Maybe this only matters by department (so we don’t leave a skeleton crew at an important time), so we pull that column in from the user lookup and have filtered views for each.

Why are we doing an InfoPath form at all? We want the information to be formatted in a nonstandard way, with the two dates next to each other instead of above and below. We also want to ensure that the dates selected are in the future and that the last day is after the first day.

Since the form is fairly basic and we’re using all (or most) of the columns in our list views, we’re doing a custom list form.

Despite what we’ve just outlined, there may be cases where you need to pick the “wrong” sort of form for other reasons, some of which will be outlined in part 3 of this series where we explore the different controls available in the two types of InfoPath SharePoint forms.

In the mean time, feel free to contact us for any of your SharePoint 2010 Training needs.

InfoPath and SharePoint 2010: Part 1

At Pilothouse, we do a lot of SharePoint Training, but in the course of a week long class there isn’t as much time to cover some of the topics as in-depth as we would like.

This is the first of a series of posts that will discuss many aspects of custom form creation with InfoPath. Here we’re giving a brief introduction to the what and some of the why behind these customizations, and in the next parts we will be digging a bit deeper to learn more about what you can and cannot do with this tool.

As with most things in SharePoint, some seemingly difficult things will become trivial, and some seemingly trivial things will become difficult or impractical. I don’t say impossible because when you know as much as some of us do about the product you can come up with custom-coded solutions to many of those impossible cases, but impractical is a fair term to throw around.

InfoPath List and Library

New in SharePoint 2010 is the ability to customize list forms with InfoPath Form Designer 2010. In SharePoint 2007 it was only possible to collect data from these forms with a form library (if you know how to get InfoPath form data into normal lists in SharePoint 2007 without custom code feel free to post your tricks – there are a few ways).

One of many issues with a form library is that it is not an actual list, but a document library. One implication is that you cannot set the item level permissions for the entire list to “view only your own items.” For surveys or other data collection tasks that would prefer individual data to not be shared with others, this was problematic. Yes, you could write a custom event receiver to change permissions on new items that have been added, but at the point where you want to start allowing modifications you have to think a little harder about what the receivers are doing and theoretically have more than one working in concert.

The first parts of this series will be addressing the following questions:

  • When to use a list form vs a form library
  • Differences in available controls between the two types of InfoPath forms
  • Having different custom Edit, New, and View forms for the same list
After that we will be addressing anything that comes up in comments or going free form with some tasks that could be completed with. At any rate, if you either like to or need to use InfoPath to create custom list forms, stay tuned to our next installments.

Office 365 for SharePoint hosting

I decided to take a look at Office 365 to let Microsoft host SharePoint for us, but it turns that Office 365 wants to do a lot more thanjust SharePoint hosting for you.

Here is our current collaboration/document management setup

  • We host our own SharePoint server on a dedicated server which is probably an overkill as far as the hardware goes, but it nice to have.
  • We let Google apps handle our email. Google docs are ok, but I prefer SharePoint for document and list management.
  • Our main public website uses a simple solution of DreamWeaver + SVN

The initial setup process for Office 365 is very simple. My initial impression of the admin page was really good.

Office365 main admin

I did not move email hosting to Office 365 as it was not my intention and Google seems to be working just fine, plus Android in it integration is great.

I was a bit disappointed with the way SharePoint was set up. It seem like you get one site collection and you are forced to have a top level site with a custom publishing master page. Collaboration and document management are supposed to take place at the sub sites.

  • http://pilothouse.sharepoint.com – main site collection setup with a custom publishing master page. The intention here is that you would move your public website here. <a href="http://www.sharepointrating.com/wp-content/uploads/2011/09/offic365-tree-view.png"><img src="http://www.sharepointrating.com/wp-content/uploads/2011/09/offic365-tree-view-1024x510.png" alt="offic365 Site Collection Tree View" title="offic365 Site Collection Tree View" width="1024" height="510" class="aligncenter size-large wp-image-180" /></a>
  • http://pilothouse.sharepoint.com/teamsite – sub site with a team site template
    offic365 Site Collection Tree View

I believe that Office 365 would be better off just focusing on internal collaboration and document management instead of trying to build a so so external site on SharePoint. After looking around this setup I decided that I like the flexibility that we currently have with our SharePoint setup and will not be moving anything to Office 365 just yet. Also, I don’t have a Windows 7 phone to see how well the integration works; I assume for some organizations it will be important.

Overall, I never felt that the publishing feature was how you start selling SharePoint ot a business that has not used SharePoint before, but ti certainly seems a strategy for Office 365. We’ll see if they change it soon.

We recently updated our sharepoint training dates. Click here to see the schedule.

SharePoint 2010: Service Packs and Site Collection Backups

This only applies to Site Collection backups, and not farm backups. Farm backups are apparently just fine as long as you run the psconfig update command afterward. I haven’t had to deal with these specifically yet, and if those have the same issue then I’ll post at a later date (when I come across those issues).

If you have a site collection backup from before a service pack was applied, you can not restore from that backup after the service pack. What you’ll want to do is to set aside another environment (even if it’s a virtual image) from before the update in case you need to restore one of these old backups in the future. After you have the content database restored with the site collection in it, you can attach to the new environment and run psconfig’s update to get it up to speed.

The pre-SP1 environment I stood up for this purpose was a Windows 7 developer install of just Foundation on no domain at all. The final destination was in a domain running server.

Yes, I just had to do this. Yes, it was a huge hassle. Yes, it worked.

Here’s a link to the relevant page on technet.

Happy restoring!

SharePoint 2010 Summer Class Schedule Posted

All of Pilothouse summer classes are for SharePoint 2010.   Our last SharePoint 2007 class was held last week in Las Vegas.    It is unbelievalbe that we run 2007 classes for almost five years (starting in June of 2006).   SharePoint 2007 is definitely a great product, but as not as good as 2010.

Click here check SharePoint 2010 training schedule.

Calculated Calculated Columns

This is another observation that isn’t necessarily earth-shattering, but potentially very useful in the right situation.

You can make calculated columns based on other calculated columns.

The example I’ll give will be pay rate per hour. Make a column that collects that information from the end user.

Then, make a calculated column based on the first column, multiplying it by 8 for how much they would make in an 8 hour day.

Make yet another calculated column based on the second, multiplying that by 5 for the week.

And a third calculated column multiplying that by 52 to get a year.

Add a fourth to divide 1 million by the value of the third calculated column, to figure out how long it would take to earn a million dollars.

You can then find out that at $15 per hour, 8 hours a day, 5 days a week, and 52 weeks a year, I can make a million dollars in a little over 32 years.  That is, as long as I pay no taxes, eat nothing, spend nothing, and am homeless.

Perhaps I need a raise?

In Summary: You can base calculated columns on other calculated columns.