Friday, October 17, 2014

Configuring Lazy Approval for Nintex Workflow

Configuring Lazy Approval for Nintex Workflow

 
Prerequisites
  1. Incoming email settings must be configured in SharePoint. This requires the SMTP service installed.
  2. Global Settings for Nintex Workflow must be correctly configured within Central Administration.

Install the SMTP Service (Windows Server 2008)  

The SMTP server is not installed by default. SMTP can be added through the Features Summary area of the Server Manager tool in Windows Server 2008. Please refer to http://technet.microsoft.com/en-us/library/cc772058%28WS.10%29.aspx.
 

Configuring Nintex Workflow Global Settings 

The Email settings within the Nintex Workflow Global settings page must be setup and configured before enabling LazyApproval.

1.       Navigate to Central Administration and select the Nintex Workflow Management section. Click on Global settings.

2.       Configure your SMTP Server, From Address and Reply To Address with appropriate values for your environment.

 
Enabling/Configuring LazyApproval  

1.       Navigate to Central Administration and select the Nintex Workflow Management section.

2.       Click on LazyApproval settings. Then click on Enable / Disable LazyApproval for the current server farm.

3.       Select Enabled and ensure the Email Alias entered is unique.

After successfully configuring LazyApproval, you should see a screen similar to the following (insert screen)

To use LazyApproval immediately;

1.       Perform an IISRESET on all servers in the farm.

2.       Restart all instances of the “Windows SharePoint Services Timer” service on all servers.

a.       From the Start Menu, select Run…

b.      Type services.msc  

c.       Locate the service, right-click the service and restart it.  

Otherwise, it will take about 15 minutes for the changes to take effect.

You can now create a new workflow, or edit an existing one. Include a Request Approval or Flexi Task action on the workflow and open the configuration dialog. You will now see the Allow LazyApproval checkbox in the dialog box. Once checked, this action will allow the use of LazyApproval.   

Troubleshooting LazyApproval  


If LazyApproval is not working, follow the steps below for troubleshooting.

If nothing happens, test the SharePoint incoming email settings

LazyApproval uses the SharePoint incoming email function; therefore this must be running correctly. To test the email settings, open a test library and configure it to accept new items from email.

Complete the following steps to allow a document library or list to accept email.

1.       Navigate to the desired document library or list and click Settings, Document Library Settings, and Incoming E-mail Settings.

2.       Select Yes to allow the Document Library to receive e-mail.

3.       Assign an email address to the document library.

4.       Select an Option for Attachments. You can save attachments in the root folder, in a sub-folder grouped by email subject, or a sub-folder grouped by sender.

5.       Select an option to overwrite files with the same name.

6.       Select an option to save the original email. If you select Yes, and you send a message with an attachment, the message and the document will be stored as two separate items in the document library.

Note: We recommend initially selecting Yes for this option until you verify that the document library is properly accepting emails.

7.       Select an option to save meeting invitations.

8.       Select an Email security policy to accept messages based on document library permissions (recommended) or to accept messages from any sender.

If this does not work, your incoming email settings may not be configured incorrectly.

Please refer to the Microsoft documentation on setting incoming email:


If incoming mail works, but still nothing happens

Check the application event log on the server for any error messages regarding EmailDropReceiver. Send any messages to support@nintex.com.

You receive the error message “Your email could not be matched to a running workflow”

Check the notification you receive from the approval task has the LazyApproval token in the subject. The LazyApproval token will look similar to [#DD7FGH#]. (The characters inside the square brackets are used by Nintex Workflow to link an incoming email to a task) It is a unique identifier that associates any message with the ID as belonging to a specific workflow. If the identifier is not there or has been modified by somebody, LazyApproval will not work, generating the error message above. The error message will be displayed in the SharePoint ULS logs.

Nintex workflows


Nintex workflows:


Nintex is more user-friendly with its graphical drag-and-drop components, and it can be accessed and edited directly from a SharePoint list or library.
Pros:
·         Drag and Drop Browser Based Designer: - Simple and intuitive drag and drop interface directly within the browser, no need to install additional desktop products or acquire additional licenses (Visio for SPD Drag & Drop).
·         Available actions: – additional PS actions (Query PSI, Publish, Update Properties, Change EPT) and over a hundred other actions including list manipulation, external integration, provisioning, logic and flow, tasks etc. All of which are simple to configure and to design
·         Core features: – Things like Lazy Approval (reply to approvals via email), Workflow visualizations, scheduled workflows, constants, and delegation etc., all out of the box.
·         Versioning:- Nintex handles versioning of workflow definitions very well
·         Social:-  supports  (yammer, twitter, facebook) and other LOB integration capabilities
·         Nintex Workflow provides greater efficiency and lower administrative costs.

Cons:
·         Nintex is fully integrated with SharePoint. This means that Nintex is tied to the limitations of windows workflow
·          No debugging in development environment.
·         Larger workflows will take longer when publishing or running for the first time.
·         Exported Nintex workflows whose file size is larger than 500-600KB may start to cause performance issues

Nintex Features:

1.       Design, Deploy, and Manage Everything from within SharePoint
Ø  Start in SharePoint, stay in SharePoint while designing
Ø  Draw and configure at the same time
2.       Easy to Learn, Master, and Use
Ø  Easy drag-and-drop graphical designer
Ø  One ribbon to set everything in an action
Ø  Lazy Approval™ lets you complete a task with an email reply (even via mobile email)
3.       Track and Analyze Everything
Ø  Workflow progress & performance statistics
Ø  Step-by-step profiling
Ø  Complete audit trail - Audit completions & cancellations
4.       Easy Work Reuse
Ø  Can easily import/export workflows and parts of workflows (easily migrate from Dev to QA to Production)
5.       Real-World Workflow Logic
Ø  Loops
Ø  ForEach Iterations
Ø  State Machines
Ø  Switches
Ø  Conditional start rules
Ø  Scheduled workflows

6.       Reach More SharePoint Functions, External Applications (Most are Enterprise only)
Ø  Word & Excel Services
Ø  User Profiles
Ø  Business Connectivity Services
Ø  Exchange Server
Ø  Windows Server Active Directory
Ø  Microsoft CRM
Ø  And Many More
7.       What Nintex Adds to SharePoint Workflow
Ø  Graphical designer
Ø  100+ actions
Ø  Management tools
Ø  20 Pre-built WF Templates
Ø  Makes it truly easy and powerful
Ø  Lets it model “real” work

This tool can be used by anyone from an admin assistant, to an experienced developer (and anyone in-between)

Workflow Interaction with SharePoint:


Ø  Lazy Approval
Ø  Approving, Rejecting and Reviewing Items
Ø  Configuring Chart Viewer Webpart and Report Viewer Webpart
Ø  Delegating Approval tasks
Ø  InfoPath forms
Ø  Manage workflow change approval and workflow history
Ø  Reusable workflows
Ø  Scheduling workflows
Ø  Viewing workflow status

In (Brief) Summary… 


Nintex Can:
v  Implement “real” workflow logic without code
v  Save and reuse pieces of one workflow in another
v  Change a workflow without returning to one or more extra apps
v  Start workflows based on conditions
v  See all workflow activity across multiple sites
v  See which users have the heaviest workloads
v  Put workflow changes though an approval process
v  Approve requests/complete tasks while offline
v  Complete tasks from a mobile device without development
v  Change a workflow without returning to one or more extra apps
v  Keep your workflow from looking like a code flowchart
v  Save and reuse pieces of one workflow in another
v  Schedule workflows
v  Reach out to external data or SharePoint service apps
v  Design workflows quickly and easily
v  Offer workflow to everyone

 

SharePoint Supported workflows


Workflow:


Workflow management is a system of overseeing the process of passing information, documents, and tasks from one employee or machine within a business to another.

Through proper workflow management, each of these employees or machines will pass the work on according to a predetermined procedure.

 As technology advances, much workflow management has become automated and takes advantage of special software to make the process much smoother

SharePoint Supported workflows:


We have different choices to develop workflows in SharePoint, below are some choices.

1.       Workflows in SharePoint UI

2.       Workflows in SharePoint Designer

3.       Workflows in Visual Studio

4.       Workflows in Visio

5.       Nintex workflows

6.       Other third party products (K2, ...) 

Workflows in SharePoint UI(OOTB workflows):


There are few very basic built-in workflows in SharePoint which can be implemented within minutes but are very rigid and inextensible.

Pros & Cons:
·         You can create very simple approvals and you are sure that the functionality wouldn’t extend
·         you can’t  access other SharePoint contents in the site like Lists and lookups
·         You can’t get more Inputs from approvers, except accept/reject and comments.
·         More suitable for in-house implementation not in projects where you are always expecting challenging changes request from an inconsiderate client

Workflows in SharePoint Designer:


With SharePoint designer simple workflows can be designed with the help of a wizard using built-in activities. 

Pros & Cons:
·         Unlike with the OOTB workflows, you can also access other SharePoint contents in the site like Lists and lookups
·         You can also define workflow variables and use them in the activities and notifications.
·         With some tweaking you can also apply branching or parallel approvals.
·         Unfortunately SPD workflow definitions are not portable but fortunately these are part of site backups.
·         Business Users can create them
·         No source control
·         No automated deployment method
·         No version control

Workflows in Visual Studio:


Visual Studio provides flexibility to create workflows to support virtually any business process, regardless of its complexity, and allows debugging and reuse of workflow definitions.

Pros:
·         More Activities
·         Fully customisable
·         Easier to debug
·         Integration with InfoPath schemas
·         Can be assigned to a site content type
·         Sequential and State workflows
·         Integrate with ASP.NET forms AND InfoPath Forms

Cons:
Overhead to learn .NET and SharePoint Programming
Overhead to learn .NET WF

Workflows in Visio:

With Microsoft Visio Premium, you can create a workflow in Visio and then export it to Microsoft SharePoint Designer. Business analysts and process analysts who are already familiar with flowcharting in Visio can use Visio to design a workflow that represents their business logic, export the workflow

Pros & Cons:
·         Needs Microsoft Visio 2010 Premium
·         Good to start with flowchart with future import to SharePoint Designer


Other third party workflow products :


Below are the some third party workflow products

Monday, August 22, 2011

Feature stapling

Using Feature stapling, you can activate default/custom features when a new site/web will be created.
The requirement of feature stapling roots to the problem of having certain features automatically activated when a new site(through site definition) is created. So we have 2 options to do this types of requirements.


1)Modifying the site definition(onet.xml)(Not a good practice)


2)Feature stapling(Feature inside feature).


Feature stapling means its nothing but nested features.
To create a staple you actually create another Feature that does the staple.


Feature stapling is implemented through a Feature that is specifically designed to staple other Features to one or more site definitions. Feature stapling allows a Feature to be stapled to any new sites created from any site definition or from specific site definitions based on the template name identified in the appropriate WEBTEMP.xml file