12
Sep
07

SharePoint 2007 link love 09-12-2007

Another MOSS Internet website :-)

Fastlink becomes Zain as leading operator in Jordan re-brands. Visit their new website on http://www.jo.zain.com/

IE Crashing when trying to do certain things in SharePoint?

Towards the end of the development cycle of Excel Services, we saw some incredibly intermittent, incredibly rare issues with Internet Explorer crashing when doing certain operations. There were also a few people complaining about this on our forums. Apparently, there is a simple fix out there and it is described in this post.

VSTO and SharePoint Workflow

The “Orcas” release train has been keeping me busy. For a long time I have been thinking of blogging about the feature that I worked on in Orcas. As the title of this entry suggests it is a VSTO feature that has to do something with SharePoint Workflow.

Firstly, lets look at SharePoint (also referred to as Microsoft Office SharePoint Server (MOSS) - yet another long product name!). In the MOSS 2007 release, the SharePoint team has done a great job of integrating with the Workflow Foundation (WF) to provide a means to create workflows.
K2 BlackPearl Launch - 26 September 2007

K2 have invited all SUGUK members to their launch party for their new workflow and BPM platform many of us know as BlackPearl.

AGENDA
10:00 — 10:30 Registration and coffee
10:30 — 11:00 K2 welcomes business people to K2 blackpearl
11:00 — 11:15 What K2 blackpearl means to business people
11:15 — 12:30 Product showcase: Driving real benefit to the business
12:30 — 12:45 Panel Q & A
12:45 — 14:00 Lunch and ‘See it Live’
14:00 — 14:30 K2 welcomes IT people to K2 blackpearl
14:30 — 14:45 What K2 blackpearl means to IT people
14:45 — 16:30 Product showcase: Tools to enable IT

Apparently you can win iPods and things like that as well :-)

This is taking place on 26th September at BRITISH LIBRARY, 96 EUSTON ROAD, LONDON, NW1 2DB

Changing the SPWorkflowAssociation.AutoCleanupDays property

By default the SPWorkflowAssociation.AutoCleanupDays property value is set to ‘60’ days, to set this property we need to call the SPList.UpdateWorkflowAssociation(SPWorkflowAssociation) function, SPWeb.Update() won’t work here.

SPSite site = new SPSite(”<http://nishandv3:100/sites/DevSite/>”);
SPWeb web = site.OpenWeb();
SPWorkflowTemplateCollection collection = web.WorkflowTemplates;
SPList list = web.Lists[”Shared Documents”];
SPWorkflowAssociation _asso = null;
How to hide subsite’s GlobalNavigation nodes/tabs through SharePoint API?

When we create a site either through UI or OM, it will not come as a tab unless you check the option ‘Site Actions–>Site Setting–>Navigation–>Show subsites to true’.

On checking the option results in displaying all the subsites as ‘Tabs’. If you want to hide some of them programmatically, you need to change the ‘__GlobalNavigationExcludes’ property from the property bag of SPWeb object.

Consider I have a site with 10 subsites, I enabled the option Site Actions–> Site Settings–>Navigation–> Show subsites to ‘true, I can see now 10 addtional tabs, If I say SPWeb.Navigation.GlobalNodes.Count wont return a value approx equal to 10.

Partially Restore Site Collections or Sites

was working with a customer a while back that had several hundred various objects deleted from a Site Collection (sitecollection1). Their question was “Can I restore only the objects that were deleted”. They were told ‘no’ by their local admins. No fault of theirs, but let me show you how this is accomplished:

1. Restore the content database, to an alternate farm,that hosted the before-mentioned site collection. if you don’t know, this can be found from Central Administration, Application Management, Site Collection List.

2. Browse to http://alternatewebapp/sites/sitecollection1

Tool of the Day: WSPBuilder for SharePoint

What a coincidence: this week I’m in Aarhus, Denmark for a SharePoint 2007 Development Training, and I’ve stumbled upon a very nice SharePoint tool, created by a Danish guy: Carsten Keutmann. The tool is named WSPBuilder and can be downloaded from the CodePlex site. Basically this tool can build a SharePoint solution file (WSP) in minutes. You just have to copy the contents for the WSP to a corresponding structure (e.g. 12\template\layouts, 12\template\features\yourfeature), run the tool and you’ve got yourself a splendid SharePoint solution!

Description from CodePlex:
No more manually creating the manifest.xml file.
No more manually specifying the DDF file.
No more using the makecab.exe application.

How to change the service accounts and passwords in MOSS2007

I see a fair number of cases where there are issues related to service/resource accounts and passwords. Often, a reset of the accounts and passwords will fix customer issues. Here’s how to do it easily.

http://support.microsoft.com/kb/934838

Discussion: What is the purpose of PortalName and PortalURL properties of SPSite

I am unsure as to what the purpose here is.  From what I’ve seen this is how you associate various site collections(SPSite) back to a central “portal” (another site collection).  I’m guessing that if these properties are set then a link appears somewhere in the child site collection leading them back to the parent portal.  Also this occurs within the SPWeb, again I’m assuming that this basically relays a link within sharepoint back to a parent portal.  Does anyone know of any other uses for this?  Can anyone confirm what I have stated?  Has anyone have any use cases where this became neccessity?  Does anyone know where this link turns up when implemented?

Adding Users to WSS 3.0 Site in HMC 4.0 Exposes Users in All Organizations

If you followed our deployment guide to the letter, then chance are your WSS 3.0 setup isn’t 100%. There’s a big problem with the deployment guide for WSS that can break “multi-tenancy.” Here’s how you can check if you are broken and how you can fix the problem.

The Test

  1. Log into an MPS-provisioned WSS site as the organization admin.
  2. Click the Site Actions drop-down and choose Site Settings
  3. Click People and Groups.
  4. Click New.
  5. Underneath the text box labeled “Users/Groups” click the little book icon (the Browse button)
  6. Type something generic like ‘a’ and hit Enter

Free SharePoint Document Workflow Workshop - Part 2 (ASP.NET Workflow Forms)

In Part 1 of the Workshop series, I focused on how to get your Development Environment configured and how to build a basic document workflow for SharePoint using Visual Studio.  In Part 2, I am expanding on the subject by tackling the subject of “getting information into the workflow.

This workshop covers a type of Workflow form called an “Association Form.”  Association forms are used to get/set the “default behavior” of the workflow.  For example: If you wanted to configure a document workflow to follow a prescribed set of steps or start off with a initial set of parameters, you would use an Association Form (Association as in “When you Associate the workflow to the SharePoint List/Document Library”).

Custom Workflow Strangeness

Today I ran into two unexpected behaviors of my custom workflow (created with SharePoint designer).

First, I created a task list with the same settings as the out-of-the-box list however mine would never generate an email either from the workflow created list items or manually created list items.  My solution was to switch to the generic Tasks list which was generating emails correctly.  I never figured out what caused this.

Second, when creating a new task based on another list, I could not populate dynamic string variables.  There was no error, they just always returned blank.  I found this blog article (http://blogs.3sharp.com/Blog/davidg/archive/2007/02/28/2979.aspx) that mentions something to this effect but I was using “Create Item in Tasks…” as an action, not the “Assign a To-do…”; still maybe that’s a documented “feature”.  I wanted to use a dynamic string to key on specific text for my next workflow since I would have to use the generic Tasks list and I don’t want this workflow kicking off every time.

Cannot open MOSS Alert email in Outlook.

Hi,

I came accross this issue on a customer site today and found the following KB Article.

You cannot open a SharePoint Server 2007 notification message in Outlook 2007 when your mailbox is on an Exchange 2003 server

http://support.microsoft.com/KB/930807

How to troubleshoot mysterious SharePoint errors.

Debugging is difficult when developing custom functionality for Windows SharePoint Services 3.0 (WSS) or Microsoft Office SharePoint Server (MOSS).  The main culprit is that SharePoint surfaces very little diagnostic information on the web browser when an error occurs.  This blog entry describes how to locate additional system-generated diagnostic information that can often provide that extra bit of detail that one needs in order to identify root causes.  This can then lead to solving the problem.

I have used this technique with great success to solve otherwise mysterious errors.

Approach:

SharePoint saves a great deal of information to a diagnostic log in a log file in the 12 hive.

The “12 hive” is usually located at “C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12″.  (I’m not sure if it’s possible for the 12 hive to live anywhere else, in fact).

Add a link to a document within a Document Library in MOSS

Many people within my company have asked how they can add links to documents inside their document libraries so that there are not multiple copies of a single document floating around the system.

A quick and easy way to do this is to add a content type of Link to a Document and then use this content type for links.

How to set this up:

SharePoint Conference 2008 Registration Now Open

Microsoft Office SharePoint Conference 2008

The Microsoft SharePoint Conference 2008 is now open!  Last years event was a huge success and was sold out very quickly.  So if you would like to attend, click here to register today!

The event will showcase Microsoft’s market-leading SharePoint Products and Technologies, solution expertise and customer successes and will be held from March 2-6, 2008 at the Washington State Convention & Trade Center in downtown Seattle. The Conference is designed to educate you on every aspect of Microsoft’s SharePoint Products and Technologies with technical and business-focused educational tracks, an entire track dedicated to customer best practices sessions, the first-ever SharePoint Awards presentation, hands-on labs, peer networking opportunities and much more!

The fee to attend the Conference is $1100 USD, but if you are one of the first thousand to register, you qualify for the early bird discount rate of $800.
Register today and save over 25%!

The event will feature keynote addresses by Bill Gates, Chairman, Microsoft Corporation; Kurt DelBene, Corporate Vice President, Office Business Platform Group; and Greg LeMond; the first American to ever win the Tour de France.

The Microsoft SharePoint Conference 2008 Team | SPC2008@Microsoft.com

BDC Meta Man release with DB2 support.

We’ve just released version 2.0.0.3 Beta of BDC Meta Man which now includes DB2 ODBC support. Although SQL syntax should be the same for all ODBC connections it invariably isn’t, so we’re going to go through and implement each ODBC connection as it’s requested. Got a request? Leave a comment or send me an email. DB2 support is available for professional customers only, but we are looking for one or two extra beta testers so if you do have a DB2 test environment get in touch.

Here’s a quick overview of using BDC Meta Man with DB2. First things first ensure you have a ODBC connection setup that you can use (this will of course have to be setup on your MOSS boxes as well)

Cannot add Web Part to the Web Part Page.

I was getting the unsafe Web Part error trying to drag the EasyTabParts.wssv3 web part onto a page. (http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=ef23da8a-72b6-4a04-b536-46da24b2605b) (http://www.divshare.com/download/1761708-c06) Normally, the unsafe web part error occurs because the file is not registered as safe in the web.config, or all the files are not properly in place (such as a missing dll). So I tried to clean and reinstall first. In my efforts to migrate from SharePoint 2003 to MOSS 2007, there was some “residue” that I needed to get rid of from the 2003 version. I performed the following steps to clean and reinstall: cd C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN stsadm -o enumwppacks stsadm -o deletewppack -name easytabpartsdeployment.cab C:\WINDOWS\assembly Uninstall EasyTabParts cd C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN stsadm -o addwppack -filename EasyTabPartsDeployment.cab -globalinstall -url http://sps01:83/ iisreset Then I started to get a new error trying to drag the web part onto the page: Cannot add Web Part to the Web Part Page. For more assistance, contact your site administrator. Then I copied the dll into the web site’s bin directory. copy EasyTabParts.dll C:\Inetpub\wwwroot\wss\VirtualDirectories\83\bin After that, the web part could be dragging onto the page without errors.

AED for SharePoint

At my new job, I work with a lot of very smart people. I was chatting with Ben Curry, and he remarked about the troubles that a lot of administrators have with the OWSTimer.exe program. So, I wrote an extension to STSADM that will help manage this program. You can find the Adminstration Extension Download for SharePoint on the Mindsharp site.

Feedback is appreciated.

Inspecting Policies for a Web Application

MOSS 2007 has a new feature called Web Application Policies. These are security permissions that is tied to a Web Application. These security settings override any security setting that is set at the Site Collection or Site (Web) level for that user. This post will show you how to get all the policies for a Web Application and see what kind of rights they are.

On the SPWebApplication object there is a property called Policies. This property is a SPPolicyCollection that contains SPPolicy objects. The UserName property contains the name of the AD user or group that this policy belongs to. Because a policy can actually have a Grant and Deny permisions assigned to it, there is a property called PolicyRoleBindings that contain all the permission bindings for this property. we can simply loop through the role bindings and inspect them to see what kind of bindings they are. Below is a utility method that will inspect the policies for a Web Application passed in.

How to Auto Detect Your SharePoint Environment

This post will show you how to auto detect your Web Applications and Site Collections using the object model. In SPS2003 there was a SPGlobalAdmin object in the Microsoft.SharePoint.Administration namespace. That has been depracted, in MOSS 2007 we have a new object called SPFarm in the same namespace (Microsoft.SharePoint.Administration).

To auto detect your SharePoint environment, the first thing we do is get a reference to the local farm using the static variables Local on the SPFarm object.

SharePoint Disk Allocation and Disk I/O

Had a good conversation with a large customer this morning at TechED SEA.  They said we have questions about capacity planning, not about users and server and server performance, but about disks, sizing and that kind of thing.

OS - The OS drive is under rated.  A lot of people start out thinking that this drive doesn’t matter.  If you start with a 4GB partition for the OS drive you will regret it.  Even if you start with 1GB or 2GB of RAM, you will quickly run out of disk.  The IIS logs are stored here by default, the .NET cache and other cache is stored here as well as your page file not considering other OS and system files.  These days I say 20GB is a good start.  You want to have room to grow, you should also consider putting your IIS logs on another drive even at this size.  The other thing is your index file (the large edb file) is by default going to sit on this drive, so unless you’ve got some experience it’s better to find out you’ve been ok.  Yes, you’ll want to mirror this drive and speed is a factor.  I wouldn’t consider it crazy to have a 40GB drive even.  These days more and more I’m seeing 8GB or 16GB of RAM on WFEs and Query servers, they are putting as much of the index in memory as possible and with caching, page file, etc… this disk and space is valuable.  Know what happens when this disk runs out of space?  Well you’re down.  It’s a funny kind of down, pages might render partially and uploads will act wierd until you start getting 500 errors.  You should monitor this drive and start on the bigger side.  Disks are cheap, get 2 pretty FAST, quality disks and mirror them.  These disks should almost always be local DAS disks.  I can’t think of any reason why not to.

Is collaboration for everyone?

I met with the SharePoint Users Group of Kansas City today. And they brought up an interesting topic.  And all in all it makes sense.  Should IT release SharePoint in the hands of the end users…  I would say yes, but your managers and execs would probably say no.  Like the mindsharp people were saying SharePoint is a tool for their employees to communicate with other employees… and everytime you attempt to increase the communication in the workplace there is hesitation by management.  The oldest MCT in the biz, a mindsharp trainer, was recalling the days when companies were first thinking about placing phones at employees desks…  and then when email was to hit the desktop with Outlook…  Each time a tool becomes available to enhance communication among employees, management wants to have their hands in it, with an attempt to control and police it.  However, like with email and the phone, SharePoint will produce more results when it is placed in the hands of the employees.  Each individual employee having their own mysite, and each dept having its own site with subsites.  There will be a learning curve, but someday it will be an everyday utility.


0 Responses to “SharePoint 2007 link love 09-12-2007”


  1. No Comments

Leave a Reply