Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Approvals can be defined for all tasks the workflow of which may require such a step. They allow users and groups to be associated with a task, for the purpose of either approving or rejecting the task.

To define approvals, please navigate to the Approvals category.

Approval tickets

In SimpleOne, once a task requiring authorization is submitted, then it transitions to the authorization stage. For this, approval tickets should be sent to all persons responsible for the approval. In such a ticket, every recipient is proposed to approve or reject a request.

Approvals

In this list, you can find all the approvals that have worked in the system. Please be noted that "the approvals" are not equal to "the approval tickets", because one approval may contain a number of the approval tickets to approve.

To view this list, please navigate to Approvals → All Approvals.

are used to authorize operations, process stages, and confirm decisions that require additional control by responsible users (also called approvers). Approvals are obligatory for normal and emergency changes, absences, vacations, etc. They help to minimize risks, keep high-level service, and conduct secure processes.

Panel

Example

In the out-of-the-box ITSM application, there is a predefined approval process for implementing a newrequest template. Before implementation, it should be approved by the service owner. The owner of the service is defined by the referenced record in the Service Category field.

After filling in the fields, an agent switches the state from New to Waiting for Approval.

The Approval Rules are the following:

  • the approval is created only when the request template state is Waiting for Approval
  • the request template will be rejected ifone of the approvers rejects their ticket

The service owner will decide whether to implement the request template or return it for further improvement.

  • If the template is not approved, it goes to the New state and should be deleted or improved and sent to approval process once again.
  • If the template is approved, it goes to the Published state.

Conclusion:

The approval stage ensures the quality and secures the system from implementation of inappropriate elements. A request template will not be implemented until the service owner or all owners approve it.

You can implement approvals to any table according to your business processes. Approvals are automatically created according to an approval rule or within a workflow with the User-approval activity.

Approvals associate users or groups with a record to be approved or rejected. If users reject an approval, they need to give a reason in the comment.

Tip

When a new approval is assigned to a user, they will be notified via email. Refer to the Available Notifications article to learn more.

Image Added

Refer to the My Approvals article to learn how to process approvals via the Self-Service Portal.

Info

If you create a new custom table and set up approvals for it, you need to define the portal approval card appearance from scratch. As this table is new, the system does not have information about what fields it should display on the portal. See the Customizing portal and agent interfacearticle to learn how to add fields to the portal approval card.

Approvals


To view the list of created approvals, navigate to Approvals → All Approvals.

In the table below, you will find description of approval form fields.

Approval form fields 

FieldMandatoryDescription
StateY

Approval state. Available choice options:

  • Requested
  • Approved
  • Rejected
Canceled
  • Cancelled.
ApproverY
Reference to the user
User responsible for approving the related record.
Approval TypeY

The approval type depending on the type of the participant. Available options:

  • Mandatory
  • Non-mandatory.

For more information, please refer to the Flexible Approvals article.

ItemN

Reference to the

item that was processed by the approval rule and approved or rejected.Display Name

record for which the approval is created. Approver makes decision on this item.


SubjectN

Approval

display name (

subject is copied from the Item subject

).SubjectNApprove subject (copied from the Item subject)

if it has the corresponding field. Describes the approval item briefly.

DescriptionN
Approve

Approval description

(

is copied from the Item

 description)

description if it has the corresponding field. Edit approval description.

Comments
N
YA text field for storing comments regarding the approval.


Approval

RuleNReference to the approval rule that was run for this approval.Approval SetNApproval tickets set number (if there were sent more than one sets of tickets for one record).

states


Generally, the approval state flow is as shown below: 

Image Added

But the state flow may differ depending on the abortion rules. For example, if One of the tickets rejected abortion rule is specified, when one of the approvers rejects the ticket, the approval state will turn to the Cancelled state.

Other states may depend on issue types and their state models. For example, approvals for Change Request have another state flow defined by its workflow. On the approval stage, the change request will have the Authorization state. If the request is approved, it will pass to the Scheduled state; otherwise, it will return to Registered.

Approval tickets


In SimpleOne, once a record requiring authorization is submitted, the transition stage is initiated. For this, approval tickets are sent to all persons responsible for approval. In tickets, every recipient is proposed to approve or reject the request. An approver can also get information about an object of approval from the Summary and Activity Feed.

An approval ticket is a record in the Approval (sys_approval) table, which the system sends to every user responsible for approval: one ticket per user, that is, one approval may contain several approval tickets. It is the ticket you see on the My Approvals page. In other words, a user approves or rejects a ticket within one approval.

Image Added

Approval sets 
Anchor
approval set reject
approval set reject


Approval Set is a group of Approval (sys_approval) records created by the same approval rule for the same item. That is, these approvals share the same values in the Item field, same approval rules, and are included into one approval set. Approvals created by a workflow are not marked with set number.

Example:

An approval rule has the following abortion rule: one of the approval tickets is rejected. One of three approvers rejected their approval ticket. It is Approval Set 1, and after some required changes, approval was requested once again. This is Approval Set 2, and all three approvers received approval tickets. This process will repeat until the conditions are met (all users approve their tickets).

Image Added



Creating approvals


Approvals cannot be created manually. They are created by the system when conditions defined in an approval rule or a workflow are met. That is, there are two ways to implement approvals into your processes:

  • via Approval Rules
  • via Workflow

Approval Rules 
Anchor
approval rule
approval rule


Approval

Additional ParameterN

This field contains additional approval parameters. For example, mandatory and non-mandatory approvers list formatted as JSON array:

Code Block
languagejs
titleAdditional Parameter
{"mandatory":["155931135900000001","158696360714088200","158694883210265025","159723031011970067","157416257019674826"],"non-mandatory":[]}

Approval Rules

Approval rule is a flexible instrument able to trigger on a predefined event. Once triggered, they send a set of approval tickets and process feedback (approves and rejects). Approval rules also can automatically create a set of approvers.

A diagram below illustrates the flow how an approval is created with an approval rule.


Image Added

Tip

Role required: admin.

To define the an approval rule, please complete the steps below:

  1. Navigate to Approvals → Approval Rules.
  2. Click New and fill in the fields.
  3. Click Save or Save and Exit to apply changes.

Approval

rule start conditionApproval rules perform when the start condition specified with the Approve condition field is met. After defining the Target table, all fields of this table are available in the constructor

Rule form fields

FieldMandatoryDescription
NameNSpecify approval rule name.
TableYSpecify a table which will be processed by this approval rule (for example, Incident).
DescriptionNDescribe the approval rule in details.
Approve ConditionN

Approval rule start condition. When the conditions are met, the rule will send approval tickets.

Use non-dynamic and dynamic filter conditions (like is (dynamic) or is not (dynamic)) when composing conditional expressions with the Condition Builder to

make your business rules more versatile

fit process requirements. You can create complex AND and OR filters, more than one in one approve condition.

Approval Rules form fields

Info

An empty condition always returns 'true'.

FieldMandatoryDescriptionTableYSpecify a table which will be processed by this approval rule (for example, Incident).Approve ConditionNCreate a condition to meet before sending approve tickets. Use the Condition Builder to build a filter that fits your needs. 


ApproverY

A choice field specifying

a

the category of users responsible for the request approving. Available choice options:

  • Users
  • Group
  • Script.
UsersNIf the Users option
was
is selected in the Approver field, choose one or more users responsible for the approval process in this dictionary field.
GroupNIf the Group option is selected in the Approver field, choose the group responsible for the approval process in this dictionary field. All the group members will have approval tickets to process.
ScriptN

If the Script option

was

is selected in the Approver field, enter the script extending your approval condition: define users who will receive approval tickets. You can use SimpleOne server-side API

there.GroupNIf the Group option was selected in the Approver field, choose the group responsible for the approval process in this dictionary field. All the group members will have approval tickets to process.

.

Example:

Code Block
languagejs
themeEclipse
titleScript
(function approvalRuleScript(current) {
  if (current.assignment_group) {
    return current.assignment_group.getValue('responsible');
  }
})(current);

The approvalRuleScript() function will return data in one of the following formats:

  • return '156956878014585856';
  • return ['156956878014585856', '156956851511250859'];
  • return '156956878014585856,156956851511250859';
Anchor
abortion rule
abortion rule

Approval Abortion Rule

Y
In this field, you can specify

Specify the condition of the approval request reject. Available choice options:

  • More than half tickets
rejected
  • rejected 
  • Set rejected tickets limit
  • All tickets rejected
  • One of the tickets rejected.
CountN

Specify a limit of the rejected tickets for the approval request reject.

The field appears if the Approval Abortion Rule field value is Set rejected tickets limit.

Approval status

Generally, the approval status of any issue may be either Rejected or Approved. Other states may depend on issue types and their state models.

For example, Change Request will have the Authorization state on the approval stage. If the request is approved, then it will pass to the Scheduled state; otherwise, it will return to Registered
ActiveNSelect this checkbox to enable the approval rule.


Note

The server-side business logic may not work for system tables if the creation or updating of records is initiated by the backend. For example, an Import Set is created as part of loading an Import Source, or an Email is created as a result of a notification rule, and so on.

A list of table examples for which server-side business logic may not work:

  • Main Log (sys_log)
  • Script Log (sys_log_script)
  • Exception Log (sys_log_exception)
  • Record Deletion Log (sys_record_deletion_log)
  • Import Set (sys_import_set)
  • Activity Feed Item (sys_activity_feed_item)
  • Email (sys_email)


Workflow


You can implement automatic creation of approvals using the User-approval activity in your workflow

Anchor
approval via workflow case
approval via workflow case

In the example below, we have a simple process of approving new partner inclusion to a custom table. The flow begins when a new record is inserted into the Partner table. By default, new records are in the Pending state. To make the partner record relevant, their state must be confirmed by approvers. Here, the user-approval activity comes in handy. Before transferring the record to the Relevant state (the set values activity), all approvers must confirm that the new partner is relevant and can be transferred to the Relevant state. If one of the approvers rejects the approval, the state of this partner record will be Cancelled.

Image Added

See the Workflow articles to learn more.

Info

Please note that when you add approval via the Workflow, there will be no related records in the Approval Rule table. Editing of this approval creation conditions and other attributes will be available only through the relevant workflow.

Tracking approvals


If an approval is created for a particular record, it will be displayed in the Approval related list. Newly created custom tables may not have this tab. You can add it using the related lists configuration (Approval->Item). After that, related approval tickets will be displayed.

In our example case described above, a new record in the Partner table with the Pending state will have the Approval related list as this:

Image Added

Refer to the Related Lists article to learn how to add the Approval tab to the Related Lists area.

Table of Contents
absoluteUrltrue
classfixedPosition