Tuesday, April 29, 2008

Fast Installation of Fabulous 40 templates

Over some period of time I’ve got tired of installing Fab. 40 templates solutions over and over again.

The time had come to write a script that allows for faster installation. This script will only install solutions associated with Fab 40 package, it’s up to you to upload site templates into site template gallery.

Bob Fox has graciously provided space on his server for this script, Thanks Bob!

Here is how to use this script:

1. Download Fabulous 40 templates from this location.

2. Run the downloaded file, this action will unzip all files into specified location

3. Download the script (right mouse click -> Save Target As), you can probably copy and paste it into notepad from here, but there is a big chance you will have to struggle with some hidden characters and the script will have hiccups J

4. Open this file in notepad and modify the first line

@SET SLNDIRECTORY=C:\Apps\

Change C:\Apps\ to the location where you unzipped your Fab 40 files to (keep the last slash)

5. Save the script with .cmd extension instead of txt

6. Run it from your server

This script will keep your server busy for a while, you might get “Service Unavailable” until the script stops and all timer jobs are finished (which is usually not longer than couple of minutes), but if you have users in your environment, run it during off-hours. This will install all solutions in one shot and globally deploy them immediately.

In your Central Administration, under solutions management check for all 20 solutions.

As the last step upload all .stp files into your site templates gallery.

Here is the source for the script, but you can download it here

:

@SET SLNDIRECTORY=C:\Apps\

@SET STSADM="c:\program files\common files\microsoft shared\web server extensions\12\bin\stsadm.exe"

Echo Adding Solution ApplicationTemplateCore.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ApplicationTemplateCore.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ApplicationTemplateCore.wsp -allowgacdeployment -immediate -force

%STSADM% -o copyappbincontent

Echo Adding Solution AbsenceVacationSchedule.wsp

%STSADM% -o addsolution -filename %SLNDirectory%AbsenceVacationSchedule.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name AbsenceVacationSchedule.wsp -allowgacdeployment -immediate -force

Echo Adding Solution BudgetingTrackingMultipleProjects.wsp

%STSADM% -o addsolution -filename %SLNDirectory%BudgetingTrackingMultipleProjects.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name BudgetingTrackingMultipleProjects.wsp -allowgacdeployment -immediate -force

Echo Adding Solution BugDatabase.wsp

%STSADM% -o addsolution -filename %SLNDirectory%BugDatabase.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name BugDatabase.wsp -allowgacdeployment -immediate -force

Echo Adding Solution CallCenter.wsp

%STSADM% -o addsolution -filename %SLNDirectory%CallCenter.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name CallCenter.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ChangeRequest.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ChangeRequest.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ChangeRequest.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ComplianceProcessSupport.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ComplianceProcessSupport.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ComplianceProcessSupport.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ContactsManagement.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ContactsManagement.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ContactsManagement.wsp -allowgacdeployment -immediate -force

Echo Adding Solution DocumentLibraryReview.wsp

%STSADM% -o addsolution -filename %SLNDirectory%DocumentLibraryReview.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name DocumentLibraryReview.wsp -allowgacdeployment -immediate -force

Echo Adding Solution EventPlanning.wsp

%STSADM% -o addsolution -filename %SLNDirectory%EventPlanning.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name EventPlanning.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ExpenseReimbursementApproval.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ExpenseReimbursementApproval.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ExpenseReimbursementApproval.wsp -allowgacdeployment -immediate -force

Echo Adding Solution HelpDesk.wsp

%STSADM% -o addsolution -filename %SLNDirectory%HelpDesk.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name HelpDesk.wsp -allowgacdeployment -immediate -force

Echo Adding Solution InventoryTracking.wsp

%STSADM% -o addsolution -filename %SLNDirectory%InventoryTracking.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name InventoryTracking.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ITTeamWorkspace.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ITTeamWorkspace.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ITTeamWorkspace.wsp -allowgacdeployment -immediate -force

Echo Adding Solution JobRequisition.wsp

%STSADM% -o addsolution -filename %SLNDirectory%obRequisition.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name JobRequisition.wsp -allowgacdeployment -immediate -force

Echo Adding Solution KnowledgeBase.wsp

%STSADM% -o addsolution -filename %SLNDirectory%KnowledgeBase.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name KnowledgeBase.wsp -allowgacdeployment -immediate -force

Echo Adding Solution LendingLibrary.wsp

%STSADM% -o addsolution -filename %SLNDirectory%LendingLibrary.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name LendingLibrary.wsp -allowgacdeployment -immediate -force

Echo Adding Solution PhysicalAssetTracking.wsp

%STSADM% -o addsolution -filename %SLNDirectory%PhysicalAssetTracking.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name PhysicalAssetTracking.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ProjectTrackingWorkspace.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ProjectTrackingWorkspace.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ProjectTrackingWorkspace.wsp -allowgacdeployment -immediate -force

Echo Adding Solution RoomEquipmentReservations.wsp

%STSADM% -o addsolution -filename %SLNDirectory%RoomEquipmentReservations.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name RoomEquipmentReservations.wsp -allowgacdeployment -immediate -force

Echo Adding Solution SalesLeadPipeline.wsp

%STSADM% -o addsolution -filename %SLNDirectory%SalesLeadPipeline.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name SalesLeadPipeline.wsp -allowgacdeployment -immediate -force

Friday, April 11, 2008

Workflows do not start on a document library with Custom List Form SharePoint control on edtiform.aspx

Interesting discovery

If you are using Custom List Form SharePoint control to edit/enter metadata for your document library, documents will not get automatically checked in upon document upload thus preventing workflows to start.

Here is the situation I had to deal with:

A document library is set to "Require documents to be checked out before they can be edited?" to "Yes". under normal circumstances, when you upload a document on the EditForm.aspx you would have  two buttons "Check in"(it would save the metadata associated with the document and check the document in) and "cancel" (which would discard all metadata changes, keep in mind that it does not discard the doc it's self) on top of the form as well as on the bottom.

if the library is set "Require documents to be checked out before they can be edited?" to No when the document is uploaded on the editform.aspx you would have  instead of "Check in" button a standard OK button.

If you are using a Custom List Form SharePoint control  on the EditForm.aspx, and "Require documents to be checked out before they can be edited?" is set to yes,  on top of the edit form you will see "OK" button and on the bottom "check in" button alongside with the standard "cancel". One would presume that clicking the "Check in" button would check in the document.

Unfortunately it does not happen, neither clicking the "OK" button checks the doc in, which results to workflows not starting, because the document does not automatically gets checked in.

I'm not sure if it's a BUG, if it is then for some reason I could not find any information of this.

Only setting this doc library not to require document check out fixes the problem. but quite often it's not a desired functionality.

Tuesday, April 1, 2008

"New" company or "New" employer!!!

Very interesting day... Something that I thought would be a company-wide meeting turned into a BIG announcement.... I guess, I work for EMC now :-)

Don't get me wrong... I was not looking for a new job, I've been very happy at Conchango. WE are being acquired by EMC!

Exiting times and new opportunities!!!!!!!

Technorati Tags: ,,