Monday, April 26, 2010

Compilation: Sharepoint 2010 Themes

I want to share some excellent posts I've found about changing themes in SharePoint 2010, something even an end-user can accomplish without assistance from an administrator.

You can change themes within SharePoint, but you can also create new themes using Theme Builder (available from Microsoft Connect). In these posts, you'll find step-by-step instructions on utilizing the built-in theme tools, instructions on creating new themes using Theme Builder, and even some notes on how CSS and themes are integrated in SharePoint 2010.

The next time you want to do some relatively straightforward color changes to the site, give this collection of notes a look!

Themes Overview from TechNet
Themes on SharePoint 2010 versus 2007 from Andreas Glaser
How Themes Work in SharePoint 2010 from Sharepoint Bits
SharePoint 2010 Themes from SharePoint Branding & Design
How to Create a Custom Theme for SharePoint 2010 from Todd Baginski
SharePoint 2010 and PowerPoint Themes from the SharePoint Coffee House
Theme Builder from Microsoft Connect

Wednesday, April 21, 2010

Method 'Post' of object 'IOWSPostData' Failed in Sharepoint 2010

Over the past several months I've been testing out new features in Sharepoint 2010, one of which is the new chart webpart. To test it I've been trying to import a spreadsheet into Sharepoint 2010, but I've never gotten the import to work without an error, until now. Everytime I tried to import a spreadsheet, no matter how small or simple, I got a method 'Post' of object 'IOWSPostData' Failed error message. Here's what happened to me, and how I fixed the problem.

Background
I'm running Sharepoint 2010 (the release candidate) and Office 2007. I confirmed this error message does not occur if you're running Sharepoint 2010 and Office 2010, only when the environments are
mixed.
  1. From your site, open All Site Content. Click Create and select Import Spreadsheet. Give the list a name and navigate to the file location.

  2. Choose Range of Cells and select the range on the spreadsheet.



  3. Click Import. The following error message will appear:



  4. The same error will appear if you select a Named Range or a Table Range.
How to Fix It
I found several other folks (here and here are the best examples) had had this problem as well, but none of their fixes had worked for me because I had a hybrid environment of 2010 and 2007. I'm guessing that other folks will encounter this problem too, because big companies don't often migrate Office all at once, especially while they're evaluating new products like Sharepoint 2010.

All of the posts I'd read about this problem suggested editing the Excel Add-in file EXPTOOWS.XLA located in the \Program Files\Microsoft Office\Office 12\1033 folder. But editing that file didn't help me a bit. Turned out there's another version of that same file in \Program Files\Microsoft Office\Office14\1033, and that was the one that needed editing in my case.

Before you begin, a few notes for the uninitiated:
  • EXPTOOWS.XLA is a hidden file. In order to find it, you'll have to show all hidden files on the system. Do this through the Control Panel, Appearance and Personalization, Folder Options, Show Hidden Files and Folders.
  • The 1033 folder is read-only, so you 1) must be an administrator to write to the folder and 2) can't just edit the file and save it back to the same directory.
To modify the file:
  1. Once you've found the file, rename it to OldEXPTOOWS.XLA (this will give you a backup in case something happens). You may be prompted to confirm the change because this is a read-only folder.
  2. Double-click on OldEXPTOOWS.XLA. This will open Excel but it will look like nothing else is happening. On your keyboard, press ALT-F11 to open the built-in Visual Basic editor. It will look something like this:



  3. Open the code window and scroll until you find this section:

    Sub Initialize(List, Title, URL, QuickLaunch)
    strQuickLaunch = QuickLaunch
    aTarget(iPublishURL) = URL
    aTarget(iPublishListName) = List
    aTarget(iPublishListDesc) = Title
    lVer = -1 ' can't tell STS server version
    If Val(Application.Version) >= 12 Then
    lVer = Application.SharePointVersion(URL)
    End If
    End Sub

  4. Comment out this line lVer = Application.SharePointVersion(URL) by adding a single apostrophe ( ' )to the beginning of the line.
  5. Add a line immediately beneath the commented line that reads lVer = 2 (that's an L, as in lollipop). The section will now look like this (I have highlighted the changes):

    Sub Initialize(List, Title, URL, QuickLaunch)
    strQuickLaunch = QuickLaunch
    aTarget(iPublishURL) = URL
    aTarget(iPublishListName) = List
    aTarget(iPublishListDesc) = Title
    lVer = -1 ' can't tell STS server version
    If Val(Application.Version) >= 12 Then
    ' lVer = Application.SharePointVersion(URL)
    lVer = 2
    End If
    End Sub


  6. Click File, Save. You will get an error message that the file is Read Only. Click OK to continue. A Save As dialog will appear. Change the file type to Excel Add-in (.xla). When you do this, the file location will change to the Excel addin directory - you will want to save the file to somewhere you can remember (like the Desktop). Make sure you've named it EXPTOOWS.XLA.
  7. Close the VB editor and exit Excel.
  8. Using Windows Explorer, navigate to \Program Files\Microsoft Office\Office14\1033.
  9. Copy the new file (EXPTOOWS.XLA) from your Desktop (or wherever you saved it) into \Office14\1033. You will be prompted to confirm this action.
  10. When the new file is in the \Office14\1033 folder, you should be able to import the spreadsheet into Sharepoint 2010 (although you may have to restart IE or the Sharepoint session).
Some of the blog posts say that you can change the version in the line from lVer = 2 to lVer = 3 and try that too. In my tests, it didn't matter which version you used as long as it was in the version in the \Office14\1033 directory. A modified EXPTOOWS.XLA in the \Office12\1033 folder didn't seem to cause this any ill-effects either.

Monday, March 15, 2010

Reinstalling SharePoint 2010

I recently tried to take a couple of SharePoint 2010 servers from the Beta install bits to the Release Candidate install bits and wanted to do that without having to reinstall the OS. I didn’t have access to the physical machine and wasn’t charged with maintaining the OS so in spite of SharePoint’s poor track record SharePoint uninstalls in previous versions, I thought I’d give it a try.

After uninstalling SharePoint 2010 Beta and restarting the server, it initially looked promising. The first part of the install where it installs the software worked fine. I hit the first snag when running the SharePoint 2010 Products Configuration Wizard. The Wizard started, said that “This wizard will upgrade SharePoint Products.” which didn’t bode well for the uninstall being successful. After prompting for the configuration settings (configuration database server and configuration database name) although not allowing me to change them from my previous install settings (I was hoping that I could give it a new config DB name), it failed with this message:
Configuration Failed
One or more configuration settings failed. Completed configuration settings will not be rolled back. Resolve the problem and run this configuration wizard again. The following contains detailed information about the failure:
Failed to initial the upgrade sequence.
An exception of type Microsoft.SharePoint.Upgrade.SPUpgradeException was thrown. Additional exception information: Exception of type ‘Microsoft.SharePoint.Upgrade.SPUpgradeException’ was thrown.


Given this error, I thought the next logical step was to delete the SharePoint config database myself and re-run the Products Configuration Wizard. Again, the wizard said that it would upgrade SharePoint products and let me proceed to the next step. It then
failed again with this message.
Configuration Failed
One or more configuration settings failed. Completed configuration settings will not be rolled back. Resolve the problem and run this configuration wizard again. The following contains detailed information abou the failure:
Failed to initialize SharePoint Products upgrade.
An exception of type System.Data.SqlClient.SqlException was thrown. Additional exception information: Cannot open database “ShaerPoint_Config” requested by the login. The login failed.

After a little more research, I found that I could modify the value of the
“SetupType” key in the HKLM\Software\Microsoft\Shared Tools\Web Server Extensions\14.0\WSS registry hive from B2B_Upgrade to CLEAN_INSTALL. Once I did that, I ran the Products Configuration Wizard again and got a new error in a pop-up dialog. This error was:
Failed to detect if this server is joined to a server farm. Possible reasons for this failure could be that you no longer have the appropriate permissions to the server farm, the database server hosting the server farm is unresponsive, the configuration database is inaccessible or this server has been removed from the server farm.



But this time, the Products Configuration Wizard gave me the option to “Disconnect from this server farm:” and finish. After finishing, I re-ran the Products Configuration Wizard one more time and hit just one more snag. SharePoint does not like installing if there is already a IIS web site in place called SharePoint Central Administration. Once I deleted that web site, the Products Configuration Wizard completed successfully and SharePoint 2010 Release Candidate successfully installed and configured on my server.

Monday, March 8, 2010

Why We Make SharePoint Work

This is the blog for my company, Avitiva, Inc.. We are a group of consultants that are very passionate about SharePoint and making it work. We are especially passionate when it comes to using SharePoint as a Business Intelligence (BI) tool, as a tool to standardize repeated processes and as a platform for making existing knowledge, data, measurements accessible as information to all intended users.

We’ve been working with SharePoint since its first release in 2001 and the experience with four versions (including 2010), has given us a pretty good tool set to understand how to make SharePoint work, how to make SharePoint supportable, how to do crazy things with the out-of-box (OOB) features (intended or not) and how to envision the trajectory on which SharePoint is traveling.

This blog is intended to be our notes on the SharePoint, BI, SQL Server experiences we have. We captured some of these in the SharePoint 2007 Bible published by Wiley press (and now available in Chinese), but intend for this blog to be a more immediate way to communicate what we are playing with and learning.