Let the Start Page Remain

If you have loaded Visual Studio 2010 for the first time you likely didn’t notice the 2 checkboxes on the lower left of your Start Page. Why would you, you’ve been letting that start page load in VS2008- forever so why would you think about it now.

Here is why. The option “Close page after project load” is defaulted to on which means that your start page will go away. To get it back after the Project has loaded you need to chose your “View” menu and then choose the “Start Page” option. After it returns, you are given those two wonderful options again on the bottom left hand side of the screen. Uncheck the first option and let the Start Page Remain!.

Posted in Uncategorized | Leave a comment

I Posted My First Article to EndUserSharePoint.com

Navigating SharePoint 2010 – Part 1: Introductions

Check it out: http://www.endusersharepoint.com/EUSP2010/2010/05/21/navigating-sharepoint-2010-part-1-introductions/

Abstract

SharePoint 2010 meet World, World meet SharePoint 2010. With the release of 2010 and the new UI users will get lost and could use some instruction on how to use and manage navigation within their sites. This article will attempt to help you understand what navigation exists and how to leverage it

Posted in Uncategorized | Leave a comment

The Site Template Requires that the Feature ****

Hello and welcome to Solutions created by SharePoint 2010 “Save Site as Template”.

Last night you finally finished up that new site you created on 2010. You’ve got ribbon actions, wiki pages, libraries, complex workflows, you are the man/woman! You’re excited, want to show of your goods, so you send that awesome WSP out to several individual, you are on top of the World!

Later you check your emails and low and behold you see it in the subject line, “I got an error when I tried to load your template”. What…???!!!

They send you a screen shot and you see.

Boy this helps, doesn’t it. You look at the ULS logs and what do you see, the same error message, what now? The key is to find out which feature is being used so how do we do that?

You’ll need to check out two areas.

In your original site where your solution was created, you need to find out what corresponds to that feature id. So to do that, go to your “Site Actions”, “Site Settings”.

The first place to check is the Site Features. Click on “Manage Site Features”.

 

Right mouse click on the page and choose “View Source”. You should now see the HTML of the page. Ctrl-F on the page and search for the Feature ID.

If you scroll up a tiny bit in the page you should see the name of the feature.

 

Now you know. But what if it isn’t there, what if you didn’t find it? Now you need to check out the Site Collection Features. If you are already at the top level site collection you should see the “Site collection features” under “Site Collection Administration”.

 

If you don’t see Site Collection Features then please click on, “Go to top level site settings”.

 

If you don’t see that option, then you most likely don’t have access and will need to request it.

Within Site Collection Features, right mouse click on the page and choose “View Source”. You should now see the HTML of the page. Ctrl-F on the page and search for the Feature ID.

If you scroll up a tiny bit in the page you should see the name of the feature.

 

Now you have your answer. Have your user activate that in their Sites or Site Collections and you should be ready to go.

Hope this helps. If you can find an easier way, share it with the community and let everyone know through the comments. I am happy to link to your blog or article.

***Update***

Before creating your solutions, deactivate the features inside of Site Collection Features and Site Features which are causing the issue. Now create your template. This will resolve the error however users still may need to activate those features in their environment if they want to use those capabilities.

Posted in Uncategorized | Leave a comment

Did someone say SHAREgolf?

That’s right, someone said, SHAREgolf. SharePoint and Golf, what a great combination. If you are going to Microsoft TechEd (http://northamerica.msteched.com) I am trying to get a group of golfers together to enjoy a round of golf at TPC Louisiana (http://www.tpc.com/louisiana) on June 6. Right now I have set it up for 2 tee times for 8 golfers but if I can get 16+, then I can turn it into a golf outing. If that happens I will try to get some sponsors for the events so that we can have some contests and add to the excitement.

So if you are planning on arriving on Saturday or Sunday, like to golf, and can come out, please register at: http://sharegolf.eventbrite.com.

Please register soon, so that if we break through the 2 tee-times I can book the other times, quickly before they go.

I hope to meet you there.

Posted in Uncategorized | Leave a comment

I Need to Create How Many Site Templates and Solutions!

So your moving to SharePoint 2010. You’ve got some beautiful sites out there in your 2007 environment and need to create solutions out of them so that users can use them in your new SharePoint 2010 environment. You followed the instructions in my last blog article (). As such you’ve decided to give up on SharePoint and go back to Email as your collaboration and management solution.

Oh I have been there, so let’s see if we can make it easier.

Problem 1

Uploading multiple files to the Site Template Gallery is not permissible so I have to upload each one, one at a time. I have 60 of them, please let the asteroid hit now!

Problem 2

Creating multiple sites at a time based upon each site template you have in the gallery. That should only take about a day of clicking and typing in the title and URL. Why are you doing this to me!

Problem 3

You’ve upgraded your server, now you have to get the sites back in to WSP form. You have go into every site setting page and click the stupid link “Save Site as a Template”. I say stupid because by now, you never want to see SharePoint again.

Okay so let’s ease our pain, and while we wait, catch up on the latest episodes of Dancing with the Stars on Hulu. (No I don’t watch it really, I was actually watching Human Target)

 

First: On your server, make sure you have setup the 12/Bin directory up as a path in your Environment variables. We will need this for our command prompt. (Start Menu, Right-Mouse-Click Computer – Choose Properties, Advanced System Settings, Environment Variables, Path (Edit) – Add – “C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\BIN”, OK, OK.

 

Problem 1 and Solution

Use the command prompt with a for loop and the stsadm command to add all the site templates to the global site template gallery. To do this, open your command prompt as an Administrator. Also, place all the STPs files within a directory on your server that you will be accessing from your command prompt. In case you are wondering, if you haven’t already done so, in the command prompt locate the directory where your stp files are.

BEFORE YOU DO THIS: Make sure all site templates do not have spaces or unsupported special characters. (“, ~, {, }, ?, <, >, :, *, #, \, $, /, <space>, |)

Command Time

for %i in (*.stp) do stsadm –o addtemplate–filename %i –title %i

Congrats you have just added all the site templates to your site.

 

Problem 2 Solution

Use the same loop to created a web in SharePoint with your uploaded template.

Command time (Replace myserver with your siteurl)

for %i in (*.stp) do stsadm –o createweb –url http://myserver/%i –sitetemplate %i –title %i

Congrats you have just created a site for every one of your Site Templates. Now you can upgrade your server.

 

Problem 3 Solution

To PowerShell we go. We will use a complex script that will go to your site, grab all the subsites and make solutions out of them. Then you will go to the Solution gallery and download them. Easy Peasee, Lemon Squeezee. For this you will need to open SharePoint Management Shell in Administration mode.

PowerShell time (Replace myserver with your siteurl)

.\CreateSiteTemplates.ps1 ‘http://myserver/’ 1 0 1 1 ‘FullPortability’

Congrats you have just created a WSP for every one of your sites and can now download them from the Solutions gallery located in your site collection.

NOTE: I didn’t create this for 2007 as we already had our site templates created and they are available in the gallery, so we just downloaded them. I figured everyone else is the same, so I didn’t need this same script for 2007. If you want a script for 2007, let me know and I’ll build one.

If an error occurs during solution creation, you can match the error and possible resolution to my previous article. If those errors don’t match to the red error, please check the ULS log files to learn more, fix the issue, and then execute this script using the direct URL for the site that failed.

I designed the PowerShell to remove “.stp” from the WSP so that the Solution Names look nice.

 

The PowerShell Explained

The script that I wrote is designed to look at your site or sites and export the site(s) to the solution gallery. This takes the place of having to do one site at a time. A second benefit is you can use this to export a site to a solution with Full Portability. This  removes the need to have the original solution installed on the server where the new site template will be used.

To Download the PowerShell Script Click Here

You must execute this from a PowerShell Command window which is registered for the Microsoft.SharePoint.PowerShell cmdlet. You must also do so as an Administrator.

 

Use:

.\CreateSiteTemplates.ps1 –SiteURL <SiteURL:http://myserver/site> –SaveData <0/1> –SaveCurrentSite <0/1> –SaveSubSites <0/1> –CheckForSolutions <0/1> –SExportMode <FullReuse/FullPortability>

-SiteURL(REQUIRED) the URL of the Site that a solution will be created from or will be used as the parent URL for all sub sites from which solutions will be automatically created.

-SaveData is the boolean indication if data should be saved from the site that the solution is created from. (Enter 0 for false, 1 for true)

-SaveCurrentSite is the boolean indication that you would like a solution to be created from the site used as the parent site. The parent site is the site entered from your Site URL. (Enter 0 for false, 1 for true)

-SaveSubSites is the boolean indication that you would like a solution created for all sub sites found beneath the parent site. (Enter 0 for false, 1 for true)

-CheckForSolutions is the boolean indication that you would like the script to look to see if a solution was already created for the site and if so delete it. If false the solution will not be deleted and a number will be added to the end of the solution name to indicate it is a duplicate if a duplicate is found. (Enter 0 for false, 1 for true)

-SExportMode is the type of export that should be completed when creating the Solution. FullReuse indicates that you will require the user to have the original solution that the site was created from and require that the original solution be installed and activated on the server. FullPortability indicates that you wish for all dependencies to be loaded into solution so that the solution can be deployed on another server without the original solution being installed and activated.

 

Examples:

.\CreateSiteTemplates.ps1 ‘http://myserver/AnnouncementServiceV1.0.stp/’ (Will save the current site with data as a fully portable solution, making sure to delete any already existing solutions with the same name.)

.\CreateSiteTemplates.ps1 ‘http://myserver/TheAwesomeApp’ 1 0 1 1 ‘FullPortability’ (Will save all sub sites of the current site with data, as a fully portable solution making sure to delete an already existing solutions with the same name.)

.\CreatesiteTemplates.ps1 –SiteURL ‘http://myserver/AnotherAwesomeApp’ –SaveData 0 –SaveCurrentSite 1 –SaveSubSites 0 –CheckForSolution 1 –SExportMode ‘FullReuse’ (Will save all sub sites of the current site with no data, and the created solution will require any dependant solutions to already be installed an activated on the server before use. Before save it will not attempt to delete any solutions which already exist with the same name but will append a number after the solution name to indicate it is a duplicate solution.)

Posted in Uncategorized | 1 Comment

I Need to Upgrade the Site Templates to 2010

Having done this process 7 times (once per build released by MS) I’ve gotten pretty used to it so I figured I would write a quick article on how I did the upgrade of our 2007 site templates to 2010 solutions.

 

Before we start, you’ll need some stuff to assist you.

1) Hyper V or VMWare for building a 64 bit 2007 site that will be upgraded to 2010

2) Software on the Server to match what is on your current servers (You’ll absolutely need this if you expect to create a solution on the other server, not mention a site.)

3) A Netflix subscription or a collection of your favorite DVD’s that you will watch while waiting for the tedious process to complete.

 

Now that you have got everything let us get started.

 

1) Template and Download those wonderful sites that you want to upgrade and use as templates.

2) On your Hyper V server, install Windows 2003 or 2008 64bit bring up a Stand Alone version of SharePoint or SharePoint Server. Yes I said stand alone, why are you going to worry yourself with the management of a DB at this point.

3) On your server, add the DVD or EXE for the SharePoint version you will install and run it. Do not upgrade, you will be just installing the Prerequisites. This will save your time later on.

4) Snapshot your implementation.

5) Install all software your sites will need.

6) Snapshot your implementation

7) Install the Site Templates in your Site Template Gallery (See my next article on some easy tips to quicken this process.)

8) Create a Site per Site Template (See my next article on some easy tips to quicken this process.)

9) Pull your hair out – because you just had to go through this for 10 site templates. (This is why you need something that you can watch while you wait for the process to finish)

10) Snapshot your implementation (The last thing you want now is for an upgrade step to go wrong)

11) Time to upgrade, execute the install of the SharePoint 2010 version you wish to install.

12) Install SharePoint Designer (http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=566d3f55-77a5-4298-bb9c-f55f096b125d) – you may need it to fix any site errors that pop up while you create your templates.

13) Go eat dinner – marvel at your awesomeness and how SharePoint is your B***H.

14) Guess what you should do now – Snapshot your implementation

15) Enter each site on your new 2010 upgraded server

16) Inside the site, enter site settings and choose to save as a template on each site.

17) Swear at the computer screen when an error pops up with the correlation id as you are creating the template. (See below for some common ones with resolutions) – You probably shouldn’t have said that “SharePoint is your B***H” comment. :)

18) This would be a good time to install the ULS Viewer which rocks. (http://code.msdn.microsoft.com/ULSViewer) It will help to you view the files as viewing them in Notepad can be annoying.

19) Complete your fixes.

 

The next upgrade you do return to step 7. Good thing you created a snapshot just after installing the pre-reqs. Just think you saved yourself about 1.5 hours of SharePoint Install, Setup, and Pre-Req install. – - Then again maybe you would have wanted that time so you could watch another movie. (Sorry)

In my next article I will share with you some quick things I did to speed up my process and it just might (*wink, *wink) include a PowerShell script.

 

Errors & Resolutions

Error: "My List Name" at the URL: Lists/MyListName"

Cause: Missing a custom field on your server.

Resolution: Install any fields that you are using on the server and try again.

 

Error: The maximum total file size limit (50000000 bytes) has been exceeded.

Cause: The site you are trying to make a template from is going to save larger than 50mb.

Resolution: You’ll need to tell your server to accept more. Perhaps a PowerShell script can save the day. Check out (http://community.corasworks.net/blogs/AdamMacaulay/archive/2010/01/25/error-creating-solution-the-maximum-total-file-size-limit-10485760-bytes-has-been-exceeded-in-sharepoint-2010-.aspx)

 

Error: "Error generating solution files in temporary directory."

Cause 1: There is an installed component that is the problem. In CorasWorks case, it could be the Grid Display Adapter 1.6- or Bulk Emailer 1.6-.

Resolution: Upgrade your Toolset WSP to 1.7 and your Bulk Emailer to 1.7 and this will resolve the issue. Then again, maybe it is another component. Check the ULS logs to find out.

Cause 2: The site is invalid. Go to the site and check to see if you can access it. You can’t? Probably due to some type of solution that wasn’t activated on your server when you created the site. I found this occurred because I did not activate Mobile Entree in my site before upgrading.

Resolution: You’ll need to run through the upgrade process again, this time make sure you activate the required solution before saving.

Posted in Uncategorized | Leave a comment

SharePoint 2010 RTM REST Implementation

The following is courtesy of “Michaël Hompus” blog.

Link: http://blog.hompus.nl/2010/03/26/could-not-load-type-idataserviceupdateprovider-when-using-rest-with-sharepoint-2010/

Where to download ADO.NET Data Services .NET FrameWork 3.5 Update.

For Windows 7 AND Windows Server 2008 R2

Download the ADO.NET Data Services Update for .NET Framework 3.5 SP1 for Windows 7 and Windows Server 2008 R2.

For Windows 2000, Windows XP, Windows Vista, Windows Server 2003 AND Windows Server 2008

Download the ADO.NET Data Services Update for .NET Framework 3.5 SP1 for Windows 2000, Windows Server 2003, Windows XP, Windows Vista and Windows Server 2008.

Install these and your SharePoint 2010 REST Interface will come online.

This will resolve the error “Could not load type ‘System.Data.Services.Providers.IDataServiceUpdateProvider’ from assembly ‘System.Data.Services, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089′.”

Posted in Uncategorized | Leave a comment