Tuesday, December 09, 2008

Microsoft SharePoint 2007 - SharePoint Designer Workflows does not automatically start

Today, I created a SharePoint Workflow with SharePoint Design 2007, selected the options for it to be started upon the creation of a new item and upon the modification of a new item. It didn't start!

However, if I enable the option to start the workflow manually, and do so, the workflow starts!

A google search lead me to an answer:


This behavior occurs because a security fix in Windows SharePoint Services 3.0 SP1 prevents declarative workflows from starting automatically under the system account. After you install Windows SharePoint Services 3.0 SP1, declarative workflows do not start automatically if the following conditions are true:

  • The Windows SharePoint Services Web application runs under a user's domain account.
  • The user logs in by using this domain account.
  • The site displays the user name as System Account.

Source: http://support.microsoft.com/kb/947284

Thursday, October 09, 2008

Microsoft Office SharePoint Server 2007 - My Sites and "Portal Site Connections" to change breadcrum behaviour

Summary
My Sites have proved to be a true value-add to any organisation as it does improve social personal information sharing (and alot more). It is easy to setup and logical to use.

There are however still several glitches when it is first setup in an environment. For instance, many users have found that once they navigate to their MySite, there is no link in the breadcrum back to the main Intranet Portal (as illustrated below):


Luckily, there's a setting called "Portal site connections", once this setting is set, you would have modified the behaviour of your My Site breadcrums (as illustrated below):


Making the configuration change
Assuming we want to make this change to all My Sites under the current "My Site Host", we will need to perform the following steps:

1. Login to My Sites as the My Site Host owner (in my case this user is administrator)
2. Browse to the "My Profile" tab
3. Click "Site Actions"
4. Select "Site Settings" from the Site Actions menu (or http://mysiteurl/_layouts/settings.aspx)



5. Click "Portal site connection" under Site Collection Administration


6. Select Connect to portal site and fill in a URL and link name (example illustrated below):
7. Click "OK"



Notes: When you now go back to the "My Profile" tab, you will see the change immediately. This change will only be valid for any new "My Sites" that are created (Not the MySite host or My Profile tab. Yes, personal sites aka the "My Home" tab) . For "My Home" tabs in existing "My Sites", you can either recreate the My Site, or make the same configuration via the following instructions:

1. Login to My Sites as the My Site Host owner (in my case this user is administrator)
2. Browse to the "My Home" tab
3. And follow from point 3 in the instructions above

Tuesday, September 09, 2008

Microsoft SharePoint 2007 - New SharePoint SDK

In the most recent MSDN flash are the following updates to take note of - some new SharePoint SDK releases:

Download the SharePoint Server 2007 SDK (Aug 08 1.4 Refresh)
The August 2008 update of the SharePoint Server 2007 SDK contains documentation for new and improved features in the Infrastructure Update for Microsoft Office Servers and new conceptual, procedural, and reference information. You can also
view the August update online.

Download the Windows SharePoint Services 3.0 SDK (Aug 08 1.4 Refresh)
See the latest additions to the Windows SharePoint Services SDK. Find conceptual overviews, programming tasks, and references for Windows SharePoint Services.
View the Windows SharePoint Services 3.0 SDK online.

Monday, September 08, 2008

Microsoft Office SharePoint Server 2007 - Best Practices Resource Center for SharePoint Server 2007

What is the best way to do something in SharePoint?

Recently, the SharePoint Team Blog announced the SharePoint Best Practices Series (http://blogs.msdn.com/sharepoint/archive/2008/08/29/announcing-the-sharepoint-best-practices-series.aspx).

The series includes a "Best Practices Resource Center for SharePoint Server 2007" site, which includes all guidelines about implementing Search, Publishing Portals, My Sites, Team Collaboration, SP Development, and more!
http://technet.microsoft.com/en-us/office/sharepointserver/bb736746.aspx

Tuesday, September 02, 2008

Tech-Ed Australia 2008

If you are going to Tech-Ed in Sydney this week, you can catch a few very interesting SharePoint/Search sessions:

  • OFC315 - Why Findability Should Be an Organising Principle for Your SharePoint Server 2007 Deployment. Presented by Ivan Wilson (SharePoint Gurus) and Ben Curry (MindSharp)
  • OFC301 - Form Processes in Minutes, not Months. Presented by Ivan Wilson (SharePoint Gurus) and Ben Walters (SDM).
  • MVP307 – SharePoint Monitoring – How to measure the success of your SharePoint implementation. Presented by Ivan Wilson (SharePoint Gurus)
  • OFC302 Stop Searching... Find it! With Microsoft Enterprise Search. Presented by Gayan Peiris (Microsoft)
  • OFC405 Creating Solutions with the Business Data Catalog. Presented by Ishai Sagi (Unique World)

Also another interesting one with Silverlight and SharePoint:

  • OFC303 Enhance the SharePoint User Interface with Silverlight 2.0. Presented by William Cornwill and Craig Harrowfield

Friday, July 18, 2008

Microsoft SharePoint 2007 - WSS and MOSS VPCs

I just discovered Microsoft provides VPC's for SharePoint evaluation. If you are a little lazy and don't already have a VPC, these maybe a good starting point:

Microsoft Office SharePoint Server 2007 VHD (24 July 2007):
http://www.microsoft.com/downloads/details.aspx?FamilyID=67f93dcb-ada8-4db5-a47b-df17e14b2c74&DisplayLang=en


Windows SharePoint Services 3.0 SP1 Developer Evaluation VPC Image (3 July 2008):
http://www.microsoft.com/Downloads/details.aspx?familyid=1BEEAC6F-2EA1-4769-9948-74A74BD604FA&displaylang=en

Thursday, July 17, 2008

Microsoft SharePoint 2007 - Changing service accounts and service account passwords in SharePoint

I was trying to change passwords for my VPC and I stumbled across these very nice articles.

This Microsoft KB talks about changing the service account/service account password for WSSv3 and MOSS2007:
http://support.microsoft.com/kb/934838

Joel Oleson's article talks about some additional tips including updating Search Service credentials:
http://blogs.msdn.com/joelo/archive/2006/08/22/712945.aspx

Tuesday, July 15, 2008

Microsoft CRM 4.0 - Browsing documents more effectively in Microsoft CRM 4.0

Ever thought browsing thru attachments in Microsoft CRM 4.0 was painful? You had to open the Entity window (ie. Contact/Account/Quotes...) and then go to the Notes tab, then scroll down to the attachment you need. Seems like alot of clicks to me.



Luckily, the guys at mscrm-addons.com released a tool a tool called "Document Summary". The "Document Summary" is available in the "Documents Core Pack for MS CRM 4.0", which includes a range of other tools such as WordMailMerge, SharePoint Integration, Send to PDF, and more.

I haven't used it myself yet, but I've seen the demo video. Here's how it looks like:


So far it looks pretty good. Point, click and browse. Simple, and very nicely done.

I don't work for mscrm-addons.com, so I'm not trying to sell their products.

For more information:
http://www.mscrm-addons.com/Products/AddonsforMSCRM40/DocumentsCorePack/tabid/130/Default.aspx

Microsoft SharePoint 2007 - Including/Excluding a list in the Search Index

Have the search results in your WSS/MOSS environment been ugly with all that list data? Did you want the content source to include content excluding list data?

In SharePoint, the content in each list can be configured to be included or excluded from being indexed in search crawls.

Through the SharePoint UI, this option is called "Allow items from this list to appear in search results?" and is located in the Advanced List Settings:



Through the SharePoint API, this option is exposed as a property called "NoCrawl" (for the list named "Hidden From Search List"):


SPSite site = new SPSite("http://siteurl");
SPWeb web = site.RootWeb;
SPList list = web.Lists["Hidden From Search List"];
list.NoCrawl = false;
list.Update();


After this property has been updated, the next time SharePoint Search crawls, it would skip indexing the list with a NoCrawl value of false.

Tuesday, July 01, 2008

Microsoft SharePoint 2007 and Microsoft CRM 4.0 - Custom Field Types for MS CRM 4.0

I came across a great article by Karine Bosch and Patrick Tisseghem about creating custom field types in SharePoint that exposes CRM 4.0 data via BDC. The first article includes a link to download the sample.

Here are the links:
Overview - http://www.u2u.info/Blogs/Patrick/Lists/Posts/Post.aspx?ID=1789
Detailed How To - http://www.u2u.be/Res/Article.aspx?ART=CRMSharePointCustomField

The highlight here is the ability for the user to search for a CRM record (whilst checking details on the record) to attach to a SharePoint list item.

Microsoft SharePoint 2007 - Sample Event Handler to set Permissions

I recently had to dig up something I learnt in the past so, here it is - a good example posted by Ishai Sagi to show a great example for:
  • Getting a list item in the event handler
  • Impersonating another user totally (without using RunWithElevatedPrivilages)
  • Changing permissions for an item
  • Creating a new permission role in a web site
  • Checking if a role exists or not

http://www.sharepoint-tips.com/2007/03/sample-event-handler-to-set-permissions.html

IIS - Web Application Proxy Settings for internet access

This post is to remind myself the configuration settings required in web.config to enable a web application to access the internet via a proxy.

Within the Configuration node in web.config for the web application...


<system.net>
<defaultproxy>
<proxy bypassonlocal="true" proxyaddress="http://ProxyAddress:PortNumber">
</defaultproxy>
</system.net>


Sunday, June 29, 2008

Microsoft Windows SharePoint Services 3.0 - Saving a Site as a Site Template

There's a page in SharePoint that allows you to save a Site directly as a Site Template to the Site Templates Gallery. The URL is http://(sharepoint site)/_layouts/savetmpl.aspx

Apparently, there is no link in the settings page to this url in SharePoint.

With this, you can customise a site, and then save it as a template for future use. This serves as an alternative to using the stsadm backup and restore command.

Here's a screenshot of what the page looks like.

Tuesday, June 17, 2008

Microsoft SharePoint 2007 - SharePoint Branding Tool v1.7.0 (Custom tool for themes, masterpages, site logos...)

This is an update for this article.

I've been quiet busy recently but I was still able to squeeze some time into improving this tool. I can't think of anymore to improve on without over-doing it. That being said, feel free to send me a post on my blog for suggestions. I hope it will be a useful tool.

You can get the tool at codeplex

http://www.codeplex.com/BrandingTool.

Here is the readme:

SharePoint Branding Tool v1.7.0 Released

This tool can be used apply the following actions for multiple Site Collections, and Child Sites:

-modify Themes,
-modify MasterUrl (Master Page),
-modify CustomMasterUrl (System Master Page),
-modify SiteLogoUrl (Site Logo),
-modify SiteLogoDescription (Site Logo Alternative Text),
-modify AlternateCssUrl (Custom CSS Style Sheet)
-view various properties of sites and themes at a glance

Selection of sites can be filtered by the Site Template used.

In this version I have made the following enhancements from feedback:
-UI Improvement: Less intrusive messages
-UI Improvements: Status Strip for operation reporting, etc
-Different SharePoint language version support (Dynamic install path support - for Spanish support)
-Improved error message reporting
-Improved operation reporting
-Configuration file support


And here are some screen shots of the new app:






Remember the tool not only does the job using the SharePoint Object Model, but it also allows you to do it through the SharePoint UI:


You can get the tool at codeplex

http://www.codeplex.com/BrandingTool.

Sunday, May 11, 2008

Microsoft Visual Studio - Web development quickie tip: Quick GAC deployment

I've been across this one so many times before, so I'm adding this entry to remind myself how to automatically deploy compiled libraries to the GAC and recycle the application pool after a successful compilation in Visual Studio 2005/2008:

Add this on the post build events of the Class Library project for quick GAC deployment
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil" -i "$(TargetPath)" | C:\Recycle.vbs

Then create a VB Script file using Notepad in location
C:\Recycle.vbs:
strAppPoolName = "DefaultAppPool"
strComputer = "."
Set objWMIService = GetObject _
("winmgmts:{authenticationLevel=pktPrivacy}\\" _
& strComputer & "\root\microsoftiisv2")

Set colItems = objWMIService.ExecQuery _
("Select * From IIsApplicationPool Where Name = " & _
"'W3SVC/AppPools/" &strAppPoolName & "'")

For Each objItem in colItems
objItem.Recycle
Next

Wscript.echo "Recycle Completed"

Change the value of the variable "strAppPoolName" to the name of the application pool that needs recycling.

Tuesday, March 25, 2008

Microsoft SharePoint 2007 - Stsadm extensions

"The branding tool is out. What next? How about an stsadm tool for themes?"

After a search on google, it seems Gary Lapointe has beat me to it:
http://stsadm.blogspot.com/2008/01/apply-theme.html

He's created a very useful list of stsadm extended commands found here.
(http://stsadm.blogspot.com/2007/08/stsadm-commands_09.html)

The source code can be downloaded here:
http://www.thelapointes.com/blog/stsadm.zip

The installation file can be downloaded here:
http://www.thelapointes.com/blog/Lapointe.SharePoint.STSADM.Commands.wsp

Here's a listing of the additional commands:


  1. createquotatemplate

  2. editquotatemplate

  3. setmastersitedirectory

  4. setallowaccesstoonlinegallery

  5. disableuserpermissionforwebapp

  6. enableuserpermissionforwebapp

  7. setselfservicesitecreation

  8. connecttoportalsite

  9. setsitegeneralsettings

  10. setuserprofiledefaultaccessaccount

  11. setuserprofileimportschedule

  12. gen2003to2007profilepropertymap

  13. migrate2003profilesto2007

  14. setpictureurlnewpath

  15. setsitenamingformat (use mysitesettings instead)

  16. enuminstalledsitetemplates

  17. enumavailablesitetemplates

  18. addavailablesitetemplate

  19. removeavailablesitetemplate

  20. enumnavigation

  21. addnavigationnode

  22. setnavigationnodes

  23. copynavigation

  24. enumfeatures

  25. copycontenttypes

  26. enumavailablepagelayouts

  27. fixpublishingpagespagelayouturl

  28. repairsitecollectionimportedfromsubsite

  29. convertsubsitetositecollection

  30. setsitedirectoryscanviewurls

  31. enumtimerjobdefinitions

  32. exportlist

  33. importlist

  34. copylist

  35. getlistschemaxml

  36. enumunghostedfiles

  37. reghostfile

  38. deletelistfield

  39. moveweb

  40. managecontentdbsettings

  41. addsiteadmin

  42. deleteweb2

  43. mysitesettings

  44. upgrade2

  45. enumpagewebparts

  46. movewebpart

  47. setwebpartstate

  48. retargetcontentquerywebpart

  49. replacefieldvalues

  50. applyupgradeareaurlmappings

  51. publishitems

  52. setlocalsitedirectory

  53. import2

  54. setsearchcenter

  55. replacewebpartcontent

  56. enumeffectivebaseperms

  57. createwebapp

  58. deletewebapp

  59. exportlistitem

  60. importlistitem

  61. copylistitem

  62. deletelistitem

  63. setnavigationsettings

  64. enumprofileprivacypolicies

  65. setprofileprivacypolicy

  66. enumprofileproperties

  67. editprofileproperty

  68. exportlistfield

  69. importlistfield

  70. updatelistfield

  71. deletelist

  72. copylistsecurity

  73. updatelistview

  74. setsspacl

  75. createsearchscope

  76. updatesearchscope

  77. addsearchrule

  78. setauditsettings

  79. setusageanalysis

  80. adduser2

  81. adduserpolicyforwebapp

  82. addlistitem

  83. exportlistitem2

  84. movesite

  85. applytheme

  86. retargetgroupedlistingswebpart

  87. sitewelcomepage

  88. enumwelcomepages

  89. createcontentdb

  90. createsiteindb

  91. exportcontenttypes

  92. exportsitecolumns

  93. importsitecolumns

  94. setanonymousaccess

Monday, March 24, 2008

Microsoft SharePoint 2007 - SharePoint Branding Tool v1.6.0 (Custom tool for themes, masterpages, site logos...)

This is an update for this article.

I spent a few more hours trying to update the user interface and to make the tool a little easier to use.

Update 1: New options
The interface is more refined and has shortcuts to open the site directly from a context menu. New items in the "File" menu for easy access to SharePoint Theme files and folders.


Update 2: More Information at a glance
I've added an extra DataGrid View to show properties of the selected site or selected theme. This version also shows the theme preview.


Update 3: Easier to use interface
I've reduced the pop-ups and tried to bring is all together in the one window.


Enjoy!

You can get the latest (v1.6.3) SharePoint Branding Tool here:
http://www.codeplex.com/BrandingTool

Thursday, March 20, 2008

Microsoft SharePoint 2007 - SharePoint Branding Tool v1.5.1 (Custom tool for themes, masterpages, site logos...)

I got a little bored and a little sick at home, so I started finishing off some code I worked on with my colleagues Andrey Shchurov and Alexandre Bacchin (I'm no geek though).

This is meant to be a tool that will aid the Web Designer or the SharePoint Developer in applying look and feel to their SharePoint sites. It also doubles up as a great tool to update multiple SharePoint sites manually (including MySites).


This is how the tool looks like. You can select from a list of web applications, select the sites to apply changes, and then apply your theme! (If you've got lots of sites, that's ok, you can filter them by the site template the site uses)


It's got other features as well to quickly update your MasterPage URL, and your Applications MasterPage URL(CustomMasterUrl) as well:


So this is before the Theme application:


This is after. It doesn't only apply it for the top level site, but also did it for one of the child sites (which is 2 level below the above site):


Need to change the site logo and description for multiple sites? No problem:

Boom! In just a few seconds just took a few seconds...

And the Master Page URL? How does it work? Here's a screen shot:

After the update of the property via the code:

Not to mention, it also logs what it does in a text file, so it's easy to revert in case of mistakes. It's developed with .NET 2.0 and uses the SharePoint 2007 API, so it'll work with WSSv3 and MOSS2007.

The code doesn't have good naming conventions, but we'll leave that to be a to-do. For now, I've tested it enough to prove it works with no problems. Any suggestions of feedback, please post it on the codeplex page.

A newer version is available. More information here:
http://sharepointsix.blogspot.com/2008/03/microsoft-sharepoint-2007-sharepoint_24.html


You can get the SharePoint Branding Tool here:
http://www.codeplex.com/BrandingTool

Saturday, March 08, 2008

Microsoft SharePoint 2007 - Silverlight Blueprint for SharePoint

I'd have to say this is pretty exciting stuff from Microsoft. Examples of implementation of SharePoint components using Silverlight! The most impressive blueprint is the social networking tool which sources its information from the User Profile that is ultimately imported from AD.

Impressive because, it surfaces the information in a very intuitive UI, and not only that, it also links back to the user's public "My Profile" page.

For more information, the Silverlight Blueprint for SharePoint site is:
http://www.ssblueprints.net/sharepoint/