Changes

Workflows Overview

483 bytes added, 17:56, 15 January 2018
no edit summary
* Tasks: define the actions required in the workflow – each task represents a single step in the process. Specific roles or specific users are associated with each task, and these people will be automatically alerted when they need to perform the action defined by that task. These actions are generally used to accept, reject, or request a revision on the associated object, file, user or some application-specific information.
* Connectors: link tasks together, and provide for branching logic based on the user responses to the task or pre-set conditions.
 
=Configuring – Essentials=
==Create Workflow==
 
First create and configure the workflow.
==Create workflow tasks==
 
Once you have created the workflow you can add tasks, each task automates and streamlines some action or step in your business processes.
==Enable on Object
=====Enable Workflow on Company/User===
Workflows must be enabled against an organization before workflows will run against the organization itself, its sub-branches and the users within the organization and its sub-branches.
* If '''New''' is selected the Workflow will only be triggered when a new User or Contact is created.
* If '''Modified''' is selected the Workflow will be triggered when a new User/Contact is created, and when an existing User/Contact is modified.
 
===Enable Status-Driven Workflow on UTA===
 
Status-driven workflows can be triggered from all levels of a UTA if Workflows have been enabled on the types . To enable workflows for a type do the following:
* '''UTA Role Assignment Workflow''' - use to define one or more UTA Role Assignment Workflows that are triggered by this type .
* '''UTA Company Assignment Workflow''' - use to define one or more UTA Company Assignment Workflows that are triggered by this type.
 
If the file Custom Field is located on a Company or User you can select Company or User Workflow Types.
NOTE: The Workflow is only triggered when I file is uploaded, it is not triggered by file deletions.
 
===Enable Workflow on SmartFolder===
 
To trigger a workflow when a file is uploaded into a SmartFolder navigate to the desired SmartFolder.
=Configuring – Advanced=
==Suppress Workflow Window==
 
When a workflow step is executed the user is generally presented with a Workflow window where they can select a value that will be used to determine the next task to be performed.
==Recurring Workflow==
 
A recurring workflow is a Workflow that is not triggered against any particular object.
==Task Type specific configuration==
 
Each available task type represents a different type of action and has different configurations needs as a result.
:* Sensitivity={personal,private,company,confidential}
:: e.g. Priority=urgent;Importance=high
: :* '''Message Template: Subject''' - Narrative subject line of the message.:* '''Message Template: Body''' - Narrative body of the message.:* '''Message Template: Attach Object''' - Attaches the details of the object to the message. In the case of a SmartSimple object, such as a company, person, or application, the textual details of the object will be added. If the object is a file, then the file will be attached to an e-mail message, in the case of an instant message no file is attached.:* '''Message Template: Attachment File IDs''' - Attach additional default files. If this is a Link -Single File or Link - Multiple File or Display Only – Image custom field on the object, that triggered the workflow, then the custom field id needs to be specified (@#customfieldid#@). If you wish to attach a file from a SmartFolder, you must enter the SmartFolder file ID here. Multiple references should be separated by semicolons:* '''Message Template: Save as Event''' - will create an e-mail activity. If it’s L1/L2 workflow, where the UTA L2/L3 Email Activity settings have been configured, then it will be saved as L2/L3 event under the L1/L2 object. Otherwise it will be saved as user event under the Activities tab against each recipient in the field.:* '''Routing: Use Variable for Recipients''' - Allows recipients of the message to be selected using variables.:* '''Routing: Use UTA Role''' - When using roles to select recipients, the UTA Role can be used to determine recipients. Only appears if workflow is UTA specific.:* '''Routing: Role''' - Used to select recipients by role. This list includes all roles configured in the system, alongside the built-in roles that can be used in a workflow: ::* The Originator role is used to reference the name of the person that started the workflow. This could be the person that submitted an expense claim, added a file to a workflow or added a new employee. :*The Initiator role is used to reference the name of the person that initiated the current task in the workflow. This refers to the person that approved the current step of an expense claim, or reviewed a document loaded into a workflow enabled Smart Folder.::* The Owner role is used to reference the user assigned as the Owner of the record.::* The People role is used to reference the user assigned as the Person on the level one. This role is only available to Level One specific tasks.::* The Assigned Users role is used to send messaging to users who are in the Assigned field of a Level Two activity. This role is only available for Level Two workflows.
:
Once the role has been selected the following recipient choices are available:
::* Let the current user select target user from this role – When the workflow is triggered, the user will be prompted to select recipients from the list of users currently in the role.::* All Users of this role – The message will be sent to all users in the selected role.::* Selectable list of users currently in the role – The message is sent to the specific users that are selected. * '''Routing: Selected Users''' - details of the users configured as Recipients in the Role section* '''Routing Options''' - Specifies the types of options available to process this workflow step. In many instances, the default options can be used, such as Approved, Rejected or Revise. But additional and alternate sets of options can be created to reflect more complex business processes.
:
:* '''Routing: Selected Users''' - details of the users configured as Recipients in the Role section
:* '''Routing Options''' - Specifies the types of options available to process this workflow step. In many instances, the default options can be used, such as Approved, Rejected or Revise. But additional and alternate sets of options can be created to reflect more complex business processes.
Activate/Deactivate User Tasks have the following settings:
:* '''Name''' - Narrative name for the task.:* '''Task Type''' - manually set to Activate / Deactivate User.:* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.:* '''Description''' - Detailed description of the task (optional).:* '''Expire After''' - Intended duration of the workflow.:* '''Option''' - Sets the access type for the user against which the workflow is triggered. Options are::* '''Activate (Administrative or Portal Interface)''' - Provides access to the system to the extent permitted through the user's membership of specific roles.:* '''Activate (User Centric or Applicant Interface)''' – Only provides access through the User Centric Interface and Applicant Tracking “career sites”.:* '''Activate (Web Service Client Access)''' - Account type used to access data in a SmartSimple instance via an API (Application Programming Interface). Does not give access to SmartSimple interface directly.:* '''Deactivate (No Access)''' – User cannot log into the system. 
===Task Type: Change Status===
Change Status Tasks have the following settings:
:* '''Name''' - Narrative name for the task.:* '''Task Type''' - manually set to Change Status:* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.:* '''Description''' - Detailed description of the task (optional).:* '''Expire After''' - Intended duration of the workflow.:* '''Change Status To''' - lists statuses from the selected UTA level. This workflow task will change the status of the object that triggered the workflow to the selected status. 
===Task Type: Company Association===
Company Association Tasks have the following settings:
:* '''Name''' - Narrative name for the task.:* '''Task Type''' - manually set to Company Association:* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.:* '''Description''' - Detailed description of the task (optional).:* '''Expire After''' - Intended duration of the workflow.:* '''Use Variables for companies''' - Allows user to use syntax to reference the company IDs:* '''Action''' - Add, update or delete the company association:* '''Companies''' - use Lookup to select the Companies that will be added.:* '''Roles will be Assigned''' - select the categories that you want the companies to be assigned with. To assign different companies with different categories, you will have to create more than one Company Association task. 
===Task Type: Create Consumer/Provider Link===
Consumer/Provider Tasks have the following settings, all of which control how the target record is linked to the record triggering the workflow:
:* '''Name''' - Narrative name for the task.:* '''Task Type''' - manually set to Create Consumer/Provider Link:* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.:* '''Description''' - Detailed description of the task (optional).:* '''Expire After''' - Intended duration of the workflow.:* '''Connection Type''' - Select whether the link will be a Consumer or Provider:* '''Connection Application''' - Select the UTA being connected:* '''Connection Level''' - Choose the connection level (Level One or Level Two):* '''Object ID / Variable''' - Enter the Record ID (or a variable to obtain the Record ID of the object to connect to). It accepts semicolon separated lists.:* '''Connection Role''' - Select the Consumer UTA Connection role to be used for the connection 
===Task Type: Create New Activity===
New Activity Tasks have the following settings:
:* '''Name''' - Narrative name for the task.:* '''Task Type''' - manually set to Create New Activity:* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.:* '''Description''' - Detailed description of the task (optional):* '''Expire After''' - Intended duration of the workflow.:* '''Activity Scheduling Options''' - drop-down with 3 options (Disable, Schedule by Date and Amount, Schedule by Number of Activities) that can be used to create multiple instances of the Activity. :: If '''Schedule by Date and Amount''' option is selected then following settings are exposed.:::* '''Start Date''': Level 1 field used to set the start date of the activity scheduling period:::* '''End Date''': Level 1 field used to set the end date of the activity scheduling period:::* '''Schedule Every''': frequency of scheduling:::* '''Total Amount''': Level 1 field used for the Total Amount to be distributed. The amount specified will be split evenly between each Level 2. If 'N/A' is selected, the Level 2s will be created without an amount.:::* '''Activity Date''': Level 2 field used to set the date to be assigned to each record based on the scheduling options.":::* '''Activity Amount''': Level 2 field used to store the calculated amount for each record. If 'N/A' is selected, the Level 2s will be created without an amount.::* '''Activity Index''': Level 2 field used to store the index number of each record. If 'N/A' is selected, the Level 2s will be created without an index number.": If '''Schedule by Number of Activities''' option is selected then following settings are exposed.::* '''Number of Activities''': Level 1 field used to set the number of activities to be created::* '''Activity Index''': Level 2 field used to store the index number of each record. If 'N/A' is selected, the Level 2s will be created without an index number."
* :: If '''Days Delay''' - Schedule by Number in days of delay before creation of new activity. If left blank, the new activity will be created immediately.* '''Create for Users in UTA Role''' - select the UTA Role of the users that the Peer Activity should be created against.* Activities'''Activity Type''' - This option is where you specify which Level 2 Type you wish to create. If you select the Custom Field option selected then a Custom Field ID field is following settings are exposed.:::* '''Custom Field IDNumber of Activities''' - The Create New Activity workflow can be driven by a Custom Field. For example, you could have check boxes at : Level 1 corresponding field used to various Level 2 Types. Selecting each check box would create and attach the relevant Level 2 activity type. You must first create a Custom Field on the Level 1 record which stores set the typeid(s) number of the Level 2 Types activities to be created. To create multiple Level 2 records use one of the Select many field types (e.g. Select Many – Check Boxes, Select Many – Scrolling Check Box, Select Many – List Box) and to create a single Level 2 record use the Select One – Combo Box.:::* '''Activity StatusIndex''' - Allows you to define the Status for the newly created Level 2 record(s). Note: If that Level 2 Status has a workflow attached field used to it store the workflow will be triggered at the point index number of creation of the Level 2 each record.* If 'N/A''Reminder Type''' - You can select whether a Quick Message or reminder email is selected, the Level 2s will be sent out to the Owner or contacts attached to the record, or any combination of the above.* '''Reminder Days''' - Sets delay for reminder message being sentcreated without an index number."
:
:* '''Days Delay''' - Number in days of delay before creation of new activity. If left blank, the new activity will be created immediately.
:* '''Create for Users in UTA Role''' - select the UTA Role of the users that the Peer Activity should be created against.
:* '''Activity Type''' - This is where you specify which Level 2 Type you wish to create. If you select the Custom Field option then a Custom Field ID field is exposed.
:* '''Custom Field ID''' - The Create New Activity workflow can be driven by a Custom Field. For example, you could have check boxes at Level 1 corresponding to various Level 2 Types. Selecting each check box would create and attach the relevant Level 2 activity type. You must first create a Custom Field on the Level 1 record which stores the typeid(s) of the Level 2 Types to be created. To create multiple Level 2 records use one of the Select many field types (e.g. Select Many – Check Boxes, Select Many – Scrolling Check Box, Select Many – List Box) and to create a single Level 2 record use the Select One – Combo Box.
:* '''Activity Status''' - Allows you to define the Status for the newly created Level 2 record(s). Note: If that Level 2 Status has a workflow attached to it the workflow will be triggered at the point of creation of the Level 2 record.
:* '''Reminder Type''' - You can select whether a Quick Message or reminder email will be sent out to the Owner or contacts attached to the record, or any combination of the above.
:* '''Reminder Days''' - Sets delay for reminder message being sent.
===Task Type: Generate PDF File===
Auto generation of a PDF that can be:
:* E-mailed to the person(s) designated in the workflow step.:* Stored within a Multiple Files Custom Field. 
The PDF generated must be based upon a Web Page View Custom Field. You must specify the Custom Field ID of the Web Page View to be converted in the Web Page Field ID field on the Workflow Task settings.
Generate PDF File Tasks have the following settings:
:* '''Name''' - Narrative name for the task.:* '''Task Type''' - manually set to Create Consumer/Provider Link:* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.:* '''Description''' - Detailed description of the task (optional).:* '''Expire After''' - Intended duration of the workflow.:* '''Web Page Field ID''' - Must contain the Custom Field ID of the Web Page View to be converted into PDF format. To create multiple PDFs, enter the Custom Field IDs of the Web Page View fields in the Web Page Field ID# setting of the Workflow Task, separated by commas.:* '''Store to Field ID''' - If PDF file should also be stored to the record, must contain the Custom Field ID of the relevant Link - Multiple Files custom field.:* '''Message Template: Message Type''' - Type of message – e-mail, instant message, both, or none required with this task. E-mail and instant messages can be created using variables that will create custom messages specific to instances of the workflow. Options are No Message Required (default), Quick Message, Email Only and Quick Message and Email.:* '''Message Template: From Address - Email'''address sent from. This field accepts variables, so you can either hard-code a value (i.e. donotreply@mycompany.com) or use variable syntax (i.e., on a Level 1 Workflow, @owner.email@):* '''Message Template: CC Email Address''' - CC recipients address. (Separate multiple addresses with commas). Additional Email Syntax options can be used within this field.:* '''Message Template: Email Body Format''' - Options are Plain Text or HTML.:* '''Message Template: Email Message Header''' - The email header can be modified using the following syntax, with the arguments separated by semicolon: ::* X-Priority={1,2,3,4,5}::* Priority={normal,urgent,non-urgent}::* Importance={high,normal,low}::* Sensitivity={personal,private,company,confidential}::: e.g. Priority=urgent;Importance=high:: ::* '''Message Template: Subject''' - Narrative subject line of the message.::* '''Message Template: Body''' - Narrative body of the message.::* '''Message Template: Attach Object''' - Attaches the details of the object to the message. In the case of a SmartSimple object, such as a company, person, or application, the textual details of the object will be added. If the object is a file, then the file will be attached to an e-mail message, but not an instant message.::* '''Message Template: Attachment File IDs''' - Attach additional default files when triggered from a Smart Folder. See the Determining the File ID article for instructions.::* '''Message Template: Save as Event''' - will create an e-mail activity. If it’s L1/L2 workflow, where the UTA L2/L3 Email Activity settings have been configured, then it will be saved as L2/L3 event under the L1/L2 object. Otherwise it will be saved as user event against each recipient.::* '''Routing: Use Variable for Recipients''' - Allows recipients of the message to be selected using variables. See this article for configuration details.::* '''Routing: Use UTA Role''' - When using roles to select recipients, the UTA Role can be used to determine recipients.::* '''Routing: Role''' - Used to select recipients by role.::* '''Routing: Selected Users''' - If required, specific users can be selected to complete this task. This technique restricts the number of users that the initiator can select.::* '''Routing: Routing Options''' - Specifies the types of options available to process this workflow step. In many instances, the default options can be used, such as Approved, Rejected or Revise. But additional and alternate sets of options can be created to reflect more complex business processes.
HTTP Post have the following settings:
::* '''URL''' - where to Post::* '''User Name''' - username to access post location if needed::* '''Password''' - password to access post location if needed::* '''Parameters''' - free text field to pass in parameters such as apitoken , alias id, etc. Can include username and password if not specified in the specific fields::* '''Response Store to Custom Field ID''' - field on system where response from HTTP post can be stored 
===Task Type: People Association===
You can use the People Association Workflow Task Type to automatically add one or more contacts to a Level 1 record. They will be assigned to the record with the UTA role defined in the "Roles will be assigned" setting.
People Association have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Type''' - manually set to People Association::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Action''': Add, update or delete the people association::* '''Routing: Use Variable for Recipients''' - Allows recipients of the message to be selected using variables. This is discussed in greater detail in the Configuration – Advanced section.::* '''Routing: Use UTA Role''' - When using roles to select recipients, the UTA Role can be used to determine recipients.::* '''Routing: Role''' - Used to control role of user that will be associated.::* '''Routing: Selected Users''' - If required, specific users can be selected to be associated::* '''Roles will be Assigned''' - select the role(s) that you want the contact(s) to be associated with. To assign different contacts with different roles, you will have to create more than one People Association task. 
In the Routing section select a Role currently possessed by the contact(s) you wish to add, whether this is a system role or a UTA role. You can then either select specific contacts or groups that will always be added to the Level 1 when the workflow is triggered, or you can choose Let current user select target user from this role to allow the person that triggers the workflow to select a contact to be added.
Note:
::* If you are allowing the current user to select target user Suppress Workflow Window must be off (not enabled) otherwise the workflow will not fire.::* If you are allowing the current user to select target user, the Workflow must be triggered by a status, and not by a script.::* Include a description, as the description will be presented to the user when they are asked to select the contact to be assigned. 
In order to notify the contact(s) that they have been assigned you can create a subsequent Acknowledgement Workflow Task to e-mail all contacts with the UTA role you selected.
The settings for both of these Workflow Task Types match those used for the Acknowledgment task except for 2 additional settings:
::* '''Respondents''' - Indicates the number of respondents required for this approval.::* '''Allow Edit''' - Allows editing of the attached object. 
By default, a Request for Approval or Comment workflow task will move on to the next task (whether approved, rejected, etc.) as soon as the first recipient of the Workflow Task responds. The Respondents field allows a specific number of respondents to be required, which will keep the Request for Comment Task active until that number of respondents has replied.
You must set the minimum number of respondents on the connector associated with each of the approval options.
::* If you have selected three respondents on the Request for Approval Task, and the task should only pass if all three respondents click approve you would set the number of respondents on the Approve connector to be three, and the number of respondents on the Reject connector to be one. ::* If you have selected four respondents on the Request for Approval Task, and the task should only pass if three respondents click "Approve," you would set the number of respondents on the Approve connector to be three, and the number of respondents on the Reject connector to be two. 
The system checks the connectors once the number of respondents on the task has been met, this behaviour is not configurable. The first connector the system checks will be taken if the requirements are met.
You must ensure the Workflow Task is sent to enough people to meet the minimum number of respondents required, if you do not send the task to enough recipients the task would never complete.
Signority Submission Tasks have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Signority Field''' - drop-down which lists all Signority enabled WPV fields for the entity the workflow is configured against. 
===Task Type: Trigger Workflow===
Trigger Workflow Tasks have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Trigger Workflow''' - Select the workflow that should be triggered from this dropdown menu.::* '''Record id / Variable''' - this setting should contain the unique record ID for the record against which the selected workflow should be triggered. This record ID can be referenced using variables. :::* Examples: If the workflow to be triggered is a User type workflow, you would need to provide a User ID for the contact record against which you would want the workflow to be triggered.:::* If the workflow is to be triggered against a series of Level 2s attached to a Level 1 record, you could use List Syntax to define a list of activities meeting certain criteria against which the workflow should be triggered.
::
Update Company Category Tasks have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Option''' - options are Add or Remove. This determines whether the task will add or remove categories from the organization upon which the workflow is triggered.::* '''Categories''' - select the categories that should be added or removed from the organization's profile. 
===Task Type: Update Custom Field Value===
Update Custom Field Value Tasks have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Use Field''' - lists custom fields across all UTAs from the selected UTA level. This workflow task will update the selected field with the value in the "Update To Value" setting.
Note: If the field to be updated has the Read Only toggle enabled in the Formatting section of the field options (or a "read-only" HTML tag or "textreadonly" CSS class) the value will not update.
::* '''Update To Value''' - This workflow task will use this value to update the field selected in the "Use Field" setting. Variables can be used in the "Update To Value" setting as well as hard-coded values. 
===Task Type: Update Standard Field Value===
Update Standard Field Value Tasks have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Use Field''' - lists standard fields from the selected UTA level. This workflow task will update the selected field with the value in the "Update To Value" setting.::* '''Update To Value''' - accepts hard-coded values and variables. This workflow task will use this value to update the field selected in the "Use Field" setting.
Note: Some standard fields (such as Type) require the ID, not the type name in order to update correctly.
 
===Task Type: Update User Role===
Update User Role Tasks have the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Option''' - options are Add or Remove. This determines whether the task will add or remove roles from the contact upon which the workflow is triggered.::* '''Roles''' - select the roles that should be added or removed from the contact's profile. 
===Task Type: Web Service – SOAP Message===
This Task type has the following settings:
::* '''Name''' - Narrative name for the task.::* '''Task Number''' - A system generated number that determines the presentation order of the task in the workflow. This number can be changed to display the step in a different location.::* '''Description''' - Detailed description of the task (optional).::* '''Expire After''' - Intended duration of the workflow.::* '''Message Template: Action''' - The action to called by the Web Service call (These actions are defined by the external server, and are not part of SmartSimple)::* '''Message Template: Custom Field ID for Response''' - The Custom Field ID of an XML custom field on the object that the Workflow was triggered against that the response returned by the external server.::* '''Message Template: Email Message Header''' - The email header can be modified using the following syntax, with the arguments separated by semicolon: :::* X-Priority={1,2,3,4,5}:::* Priority={normal,urgent,non-urgent}:::* Importance={high,normal,low}:::* Sensitivity={personal,private,company,confidential}:::: e.g. Priority=urgent;Importance=high::: :::* '''Message Template: Endpoint''' - The URL or IP address of the destination server:::* '''Message Template: Envelope Template''' - The content of the Web Service message to be sent to the external service. This can contain variables related to the object the workflow is triggered against.:::* '''Message Template: Attach Object''' - Attaches the details of the object to the message. In the case of a SmartSimple object, such as a company, person, or application, the textual details of the object will be added. If the object is a file, then the file will be attached to an e-mail message, but not an instant message.:::* '''Message Template: Attachment File IDs''' - Attach additional default files when triggered from a Smart Folder. See the Determining the File ID article for instructions.:::* '''Message Template: Save as Event''' - Email will be saved as an event. 
If the content from the custom fields being included within the SOAP message contains certain special characters it will disrupt the XML structure, making the message unreadable by the receiving server.
The less than symbol (<) and ampersand (&) are two primary special characters to be concerned about. When including fields that may contain those characters you should use a special wrapper so the receiving system understands that they are data content and not part of the XML structure:
:::: <span style="font-size: small;">&lt;![CDATA[ '''''CONTENTS''''' ]]></span>:::
For example, an address could contain ampersands, so it should be wrapped as follows:
3. Confirm your selection by clicking on the Import button at the bottom of the pop-up window.
:::* The workflow tasks will be imported into the new workflow.:::* The Edit Workflow page will refresh to show the newly-added workflow tasks. 
==Workflow Condition==
A logical statement can be added to workflow connectors in the Condition field, enabling you to specify which workflow task will be triggered.
Note: because the sequence in which the system accesses each connector is not configurable it is important that the conditions are mutually exclusive. For example, if you have 3 connectors for different paths based on a particular value the conditions could be:
:::* "@Selection@"="Yes":::* "@Selection@"="No":::* "@Selection@"!="Yes" and "@Selection@"!="No":::* The last statement could also be represented as "@Selection@" not in ("Yes","No") 
You can also use MySQL syntax to perform calculations within the Condition:
:::* date_format(now(),"%d")="01" 
This condition will be true only on the 1st of the month. This could be used with a Recurring Workflow that loops daily if you wish to send out a summary e-mail on the 1st of every month.
Two connectors are set up on a workflow task with conditions of:
::::* ''"@typeid@"="12345"'' and::::* ''"@typeid@"="45678"'', respectively
:::
If the workflow is fired against a record associated with typeID 67890, the workflow will never progress to the next task.
Three connectors are set up on a workflow task with conditions of:
::::* ''"@typeid@"="12345"'',::::* ''"@typeid@"="45678"'' and::::* ''"@typeid@"="67890"'', respectively
:::
Alternatively, connectors with the following conditions could be set up:
::::* ''"@typeid@"="12345"''::::* ''"@typeid@"!="12345"'' (not equal to "12345"), and::::* ''"@typeid@" NOT IN ("12345","45678")'', respectively 
:::
'''2. Each condition must be mutually exclusive from every other'''
Two connectors are set up on a workflow task with conditions of:
::::* ''"@typeid@" in ("12345","45678") AND "@statusid@" in ("888","999")'' and::::* ''"@statusid@" in ("888","999")''
:::
The issue here is that both statements [[Boolean Operators|evaluate]] as '''true''' if the statuses on the record triggering the workflow have a statusID of 888 or 999.
Two connectors should be set up on a workflow task with the following conditions:
::::* ''"@typeid@" in ("12345","45678") AND "@statusid@" in ("888","999")'' and::::* ''"@typeid@" not in ("12345","45678") AND "@statusid@" in ("888","999")''
:::
This configuration satisfies Rule #2, in that the conditions are now mutually exclusive. However, a third connector must be included, with the following condition, which connects to the "Complete" task, in order to satisfy Rule #1 above:
::::* ''"@statusid@" not in ("888","999")''
:::
With these three connectors configured, the workflow will:
::::* never not have instructions on ''whether'' to trigger the next workflow task (Rule #1), and::::* always have clear instructions on ''which'' task to trigger given a certain set of conditions (Rule #2).
:::
==Using iCalendar to generate Meeting Requests, Tasks and Contact cards==
iCalendar is a file format that allows Internet users to send meeting requests, contacts and tasks through email and other digital methods.
The email engine will process iCalendar objects using the following syntax:
:::* "@@ievent":::* "@@itodo":::* "@@icard" 
Simple sample iCalendar objects are shown below
===ievent Object===
<!--@ssattach(icalendar,vevent)--><br />
@@ievent<br />UID:@owner.email@<br />ORGANIZER;CN=@company@<br />DTSTART:TO_UTC(@startdate@ @starttime@)<br />DTEND:TO_UTC(@enddate@ @endtime@)<br />LOCATION:Room 1<br />SUMMARY: Details to follow<br />DESCRIPTION: @description@<br />@@
'''Level 1''': _triggerwf('@opportunityid@',''workflowid'');
:::: Example::::
_triggerwf('@opportunityid@',98765);
'''Level 2''': _triggerwf('@eventid@',''workflowid'',26);
:::: Example::::
_triggerwf('@eventid@',98765,26);
('''26''' is the objecttype for Level 2 activities, and will be the same for all Level 2 workflows)
Notes:
:::* You must not select Let current user select target user from this role for the Routing of workflows triggered by script, as they will not execute.:::* Because the workflow is triggered when the script executes it happens before the record is saved. If the workflow changes the Status or a Custom Field value, when the record on the screen is actually saved it will overwrite any changes made by the workflow by those on the page that is being saved. Accordingly you should include any Status or Custom Field changes within the JavaScript that triggers the Workflow.:::* If this function is called with a button on a page where standard libraries are not included, make sure to include /js/sstools.js (Example:<script src="js/sstools.js" type="text/javascript"></script>).  
==Using variables with workflows==
'''Task Type: User Activation'''
:::* @password@ - Checks if the user is activated:::** if the [[User|user]] is not activated then generates a new random [[Password|password]] (i.e. Your password is: ABCDEFGH):::** if the [[User|user]] is activated then sends the text "current password" (i.e. Password is: current password) 
'''Task Type: Acknowledgment'''
:::** @randompassword@ - generates a new random [[Password|password]]:::** @checkactivatedpassword@ - checks if the [[User|user]] is activated:::*** if the [[User|user]] is not activated then generates a new random [[Password|password]]:::*** if the [[User|user]] is activated then sends the text "existing password" (see '''Notes''' below) 
Because of the complex nature of the password creation and validation process it is not possible to automatically translate '''existing password''' into other languages. If you are sending an e-mail containing the @checkactivatedpassword@ variable you can use the following syntax to display text other than "existing password" if required.
=Using workflows=
==Searching or Sorting Workflows==
 
To access the workflows list, click the menu icon in the action bar, followed by the Workflows link in the System Process section.
The following tabs are also displayed:
:::*** '''Workflows''' – click this tab to see list of workflows.:::*** '''Tasks''' – click this tab to see a list of tasks for all workflows.:::*** '''Outstanding Tasks''' – click this tab to see a list of outstanding tasks for all workflows.
Each of these tabs has search and sort options, to allow quick and easy location of workflows and tasks.
 
The steps for '''searching''' are as follows:
The Workflow Requests page lists:
:::*** outstanding tasks that you need to complete based on SmartSimple [[workflows]],:::*** tasks that other people need to complete where you are participating in some steps in the workflow, and:::*** project tasks that you are assigned to complete.
The request will be listed under the '''Requests to me''' link.
 
1. Click the '''Communications''', Workflow Requests link. The Workflow task is displayed.
2. Click the '''Task type''', '''File''' link. The Workflow step is displayed with the following fields in the request:
:::*** '''Task Name''' – The name of the [[Workflow|workflow]] task.:::*** '''Created Date''' – The date the task was triggered.:::*** '''Task Description''' – The description of the task’s purpose.:::*** '''Action''' – The '''Routing Options''' for the request. These options are only visible for '''Requests For Approval'''.:::*** '''Comments''' – This box is always visible but can only be used with '''Request For Comments'''.:::*** '''Object Area''' – The bottom portion of the request screen where the attached object is displayed.
3. Select '''Approve''' to approve the file and click the '''Submit''' button. The '''Approve''' option requires us to select a [[User|user]] to send the approval message to so the '''Select User''' list is displayed.
 
4. Select the [[User|user]] to receive the approval message and click the '''Submit''' button. The step is complete and the Workflow is also complete. The '''workflow complete''' message is displayed.
Some common reasons for workflow messages not arriving are:
:::**# Your [[Browser|browser]] has a pop-up blocker.:::**# [[Workflow|Workflows]] are not enabled.:::**# There is another [[Workflow|workflow]] triggering on the same status.:::**# Your [[Workflow|workflow]] is not configured properly.
Solution to:
 :::**# Allow [[SmartSimple]] as a trusted site '''''or''''' check your [[Browser|browser]] for any tool bars that may be blocking the pop-ups '''''or''''' set the [[Workflow|workflows]] to [[Workflow - Silent Mode|suppress pop-ups]].:::**# Typically in [[UTA]]s, you will need to edit the ''template'' and enable [[Workflow|workflows]] for the level at which they are being triggered.:::**# You will need to review the other [[Workflow|workflows]] to make sure that two [[Workflow|workflows]] are not triggering on the same status.:::**# You will need to review the configuration of the [[Workflow|workflows]] to ensure that the connectors are set appropriately as well as the individual tasks that are to take place. 
==Determining the Workflow ID==
Once a workflow has been created, the workflow ID (''wfid'') can be found as follows:
:::*** Click on the hyperlink for [[Global Settings]]:::*** Go System tab, click on the hyperlink for ''Workflows'':::*** The workflow ID is visible as the right-most column on the list of workflows. 
Alternatively:
:::*** Click on the Edit workflow icon for the Workflow you want, and the Workflow ID will be at the top of the page: 
[[Category:System Management]][[Category:Workflows]][[Category:Applications]]
0
edits