Posts

Showing posts from 2012

How to use Workflow Constants as Environment Information

Image
After showing how workflow constants can help you with environment information in my last post How to Handle Environment Variables with Nintex Workflow, I am going to explain how workflow constants can be used in your deployment scripts.

Starting of we create a workflow constant at website level. Therefore go to the Site Settings of the site where you want to use the workflow constant, then select Manage workflow constants under Nintex Workflow. Select New from the ribbon and create a workflow constant with the following settings:



Then open the command prompt and switch to the Nintex Workflow 2010 install folder. (Typically: C:\Program Files\Nintex\Nintex Workflow 2010). In order to export the workflow constant you have just created enter the following command:

1: nwadmin -o ExportWorkflowConstants -siteUrl [url to your site] -outputFile wfconst_dev.xml -includeSite
The output file wfconst_dev.xml contains all workflow constants which do exists at the selected site. As you can gues…

How to Handle Environment Variables with Nintex Workflow

Image
A topic you sure will run across is how to handle environment variables when you deploy workflows designed with Nintex Workflow. The values are by definition just valid for one specific environment, and have to be changed in order to deploy the workflow into another environment. Example for environment variables are URLs of web services or service accounts, which are different between development, test and production system.

Basically, there are three ways how you can handle this information:

store the information within the workflow activitycreate a workflow variablecreate a workflow constant Most people start with alternative 1. The environment specific information is directly configured on the workflow activities. This has one advantage: You are pretty fast when you configure the activities the first time. But in the long run the disadvantages outweigh. After deploying the workflow from environment to the next stage, you have to update all affected activities. Beside the fact that t…

How long does "Delay for..." really wait?

Image
First looking at the action "Pause for..." I was thinking think that I could configure the delay period precisely to the minute.



However, when I used this activity I discovered that the activity did not behave as I as expected. This was especially true when I entered an interval shorter than five minutes. I always waited longer than configured.

Looking deeper, I found out that the cause for this is the SPTimerJob job-workflow which controls the triggers for "Pause for...". This timer job runs with the standard configuration every five minutes. If you set "Pause for..." to a shorter interval, the trigger send by the timer job will be sent every five minutes anyway. The same applies when you set the action to pause the workflow for any period of time that lies between the configured schedule for job-workflow.

Of course, an option to solve this issue is to reconfigure the timer job to run in shorter intervals. But ask yourself if this is really necessary. In my…

Run Now in Nintex Workflow 2010

Image
With version 2.3 Nintex introduced Run Now into Nintex Workflow 2010. Nintex promises that with Run Now the integration with other system will be easier, because workflow designers can test actions with Run Now support already during the design stage. It is not necessary to start and step through the workflow until you reach the actions.

Can it keep up to the promise?
Run Now can be accesed on all supported actions during the workflow design stage. Start with a new blank workflow and then drag an integration action into the design area. I will be using Query LDAP for the rest of this post. The other actions work alike.

After you have configured the action select "Run Now" in the ribbon. A new window is displayed where you can test the configuration. If you are using workflow variables for the configuration you can replace them with actual values. And remember:

As soon as you press execute the target system will behave as if you execute the action from the workflow. Meaning you …