How can I reverse engineer an existing workflow in moss - sharepoint

I know that we can reverse engineers sites definitions and other sharepoint moss entities but can we take a workflow that has been created via the UI and reverse engineer it to a vs.net based workflow?

Yes.
Each of the OOTB workflows in MOSS are acctually what you call "vs.net based workflows".
IE - the OOTB workflows are provisioned via features, which you can find the manifests for in 12Hive/Templates/Features.
Find the feature.xml for the workflow you want to reverse engineer and it will point you to the dll. You can use Reflector to then see inside the assembly.
On top of the VS workflow, all the OOTB workflows add .aspx initiation forms to the workflow. These forms collect the parameters (IE approver's email) that get passed into the workflow.
This should get you pretty far down your path.

Related

How to create customized web parts using sharepoint designer 2007?

I want to create a new customized web part through sharepoint designer not using the default one. Can anyone tell me is this possible to do it in sharepoint designer? or do I need any other software to do this?
Generally speaking, SharePoint designer doesn't do custom web parts. You can do some work with dataview web parts to retrieve data from external systems, but for the most part you need Visual Studio to create a custom web part. Here is a basic tutorial.

Transferring Nintex workflows to another site

In production environment, we have a SharePoint site with some Nintex 2007 workflows. Now we need to replicate the production site for testing purposes.
The target server already had Nintex installed when I restored the SharePoint backup.
Unfortunately, it turned out Nintex license has expired on it so we're a little paralyzed.
The workflows seem to have been moved with the backup, however some workflow steps in Nintex designer show exclamation marks with this tooltip:
queryListActivity1 of type Nintex.Workflow.Activities.QueryListActivity is unrecognized by Nintex Workflow
When I activate Nintex license, how can I ensure that Nintex workflow is deployed correctly? I see the following options:
copy Nintex database to the new server and try hook it up with Nintex instance (how?);
save existing workflows on source server using Nintex Export feature and upload them on target server.
What is the best one, or are there any other options available?
The preferred method is to export your workflow from the Developer License site and then import the workflow in your newly licensed site.
Once you have imported the workflow, simply save and publish.
Be aware that copying workflows between sites doesn't always result in a working result.
For example if your workflow queries a list, the connection to the list is implicitly based on the List unique ID (GUID) on the development server. When you move the workflow to the production server the equivalent list will have a different GUID.
You will often have to open these steps in the editor and re-create the list query (pointing at the right list) to get them to run.
I would be very keen to find a tool that can migrate Nintex workflows and automatically fix up things like site URLs and list GUIDs myself.

Does feature stappling is allowed in custom web templates for SharePoint 2010?

Does feature stappling is allowed in custom web templates for SharePoint 2010?If not , I guess I need to use the feature receiver to activate features?
SharePoint 2010 and web templates - Feature stapling
Primary purpose of the feature
stapling is to extend and customize
existing site definitions. Usually
these are used to provide some custom
functionalities for the out of the box
site definitions, but technique is
definitely available also for the
custom site definitions.

SharePoint: SPS vs STS sitetemplate workflow features/functionality

Is there any difference on workflow features / functions in MOSS 2007 between SPS and STS Site Definitions?
Example:
If I use SPS -> do i have same workflow functionality as STS site definition.
Maybe this is silly question but couldn`t find suitable answer...
The SPS and STS templates you refer to are not site templates, they are Site Definitions.
There is difference between the SPS and STS definition of course. The main one being that STS basically replaces the SPS template, microsoft has classified the SPS site template as obsolete (remnand from SharePpoint portal server (SPS) 2003, even though other site defs seem to refer to and use the templates belonging to the SPS site def.
Both don't use workflows for any of the out of the box functionality provided by the def. and the templates referenced in them (not 100% sure about this though). You can of course add workflows to them once the site based on either def. has been created. You can even enable the publishing feature later on if need be, and then use the workflow used by sharepoint publishing for scheduling content publication. the mentioned defs. are for team sites and are pretty basic.
See this and this post for more on the SPS definition template.

SharePoint and workflows

With MOSS 2007 (the question is probably applicable to WSS as well but I'm working in MOSS at the moment) is it possible to have the same Workflow on every Pages list within the site collection?
We're deploying a site with a basic 2-stage approver workflow so I'm not developing a custom one, just using the existing Approver workflow but having 2 approval groups working sequientially (see this blog post: http://www.sharepointblogs.com/tommysegoro/archive/2008/08/18/configuring-sharepoint-moss-2007-multi-stage-approval-workflows.aspx).
The problem is that when you create a Publishing Site it gets (by default) a single approver workflow, not the one I want.
Can I have the workflow enforced across the site collection and for any child site collections? Or do I need to create my own site template (and can that even define the workflow as it's deployed?)?
Edit
Just to clarify, I'm wanting to have the ability to create a new MOSS publishing site which has some slight modifications to the standard Approver workflow which is out of the box within SharePoint. I'm not wanting to deploy a different workflow, just modify the existing.
When you create a Publishing Site you get a "Parallel Approver" workflow which assigns workflow tasks to a group called Approvers and is set to run the workflow tasks in parallel. I need to change the groups (add a new one) and set it to be sequential.
You can create a feature which will add the second work flow to the Pages library when activated using the SPFeatureReceiver class, and staple that feature to the existing Publishing Site site definition using feature stapling.
Here are MSDN posts on using feature event receivers and feature stapling:
http://msdn.microsoft.com/en-us/library/bb862634.aspx
http://msdn.microsoft.com/en-us/library/bb861862.aspx

Resources