Why Ragic?Templates Features PricingSign in
Free sign up
Free sign up Sign in

Example of Approval Formula

The diagram below provides an example of designing approval formulas and the approval process.
Two approval steps are configured: the first with a single approver and the second with multiple approvers (2 approvers).
The table below displays the results of the approval formulas for this process, helping users better understand how approval formulas work!

Related to the Whole Approval Flow
FormulaDescriptionExampleResult
APPROVAL.COUNT()Returns the number of approval steps.APPROVAL.COUNT()2
APPROVAL.STATUS()Returns approval status.
N: New, indicating the approval process has not yet started or has been canceled.
P: Processing, indicating the approval process is ongoing and awaiting completion.
REJ: Rejected, indicating rejection by anyone approver.
F: Finish, indicating completion when all approvers agree.
APPROVAL.STATUS()F
APPROVAL.SUBMITTER()Returns the email address of the user who starts the approval process. Supported in Select User Fields.APPROVAL.SUBMITTER()Andy@ragic.com
APPROVAL.SUBMITTERNAME()Returns the name of the user who starts the approval process.APPROVAL.SUBMITTERNAME()Andy
APPROVAL.SUBMITDATE([true])Returns the date and time an approval process is started. Supported in Date Fields.
The [true] argument is optional; when applied, the time value will display in UTC+0. Otherwise, the time value will display in the account’s time zone. For more details, please refer to this section.
APPROVAL.SUBMITDATE(true)2024/10/24 14:53
APPROVAL.FINISHDATE([true])Returns the date and time an approval process ends. An approval ends when all the approvers approve or when one of them rejects. Supported in Date Fields.
The [true] argument is optional; when applied, the time value will display in UTC+0. Otherwise, the time value will display in the account’s time zone. For more details, please refer to this section.
APPROVAL.FINISHDATE(true)2024/10/24 15:03

Related to a Certain Step of Approval Flow
FormulaDescriptionExampleResult
APPROVAL.CURRENTSTEPINDEXReturns the index value representing the current step in the approval process.
Index 0 means the approval process has not yet been started.
Index 1 means the approval process has been started but no approver has approved yet.
Whenever an approver approves, "1" will be added to the index. When the approval process ends (all approve/ 1 rejects/ canceled), the index returns to "0".
APPROVAL.CURRENTSTEPINDEX0
APPROVAL.STEP([stepIndex]).NAME()Returns the name of this step.APPROVAL.STEP(1).NAME()Sales Manager
APPROVAL.STEP([stepIndex]).STATUS()Returns the status of this step.
N: New, indicating the approval process has not yet started or has been canceled.
F: Finish. If this step involves a "single approver", it indicates either approval or rejection of the request. If there are "multiple approvers", it indicates that the number of approvers who have agreed equals or exceeds the designated threshold, or someone has rejected the request.
APPROVAL.STEP(2).STATUS()F
APPROVAL.STEP([stepIndex]).USERS()Returns all approvers.
E.g., Jessica Jones|Nick Fury|Steve Rogers Supported in Multiple Select Users Fields. (Since formulas cannot currently be applied to Multiple Select Fields, please set the formula first, then select Multiple Select settings.)
APPROVAL.STEP(2).USERS()Jessica|Rebecca
APPROVAL.STEP([stepIndex]).UNSIGNEDUSERS()Returns the approvers who haven't approved in this step.
E.g., Jessica Jones|Nick Fury|Steve Rogers Supported in Multiple Select Users Fields. (Since formulas cannot currently be applied to Multiple Select Fields, please set the formula first, then select Multiple Select settings.)
APPROVAL.STEP(2).UNSIGNEDUSERS()
APPROVAL.STEP([stepIndex]).SIGNEDUSERS()Returns the approvers who have already approved this step.
E.g., Jessica Jones|Nick Fury|Steve Rogers Supported in Multiple Select Users Fields. (Since formulas cannot currently be applied to Multiple Select Fields, please set the formula first, then select Multiple Select settings.)
APPROVAL.STEP(1).SIGNEDUSERS()Emily
APPROVAL.STEP([stepIndex]).ISMULTI()Returns "True" if this step has "multiple approvers".APPROVAL.STEP(2).ISMULTI()true
APPROVAL.STEP([stepIndex]).THRESHOLD()Returns the threshold number of this step, or "-1" if this step only has a single approver or no threshold was set.APPROVAL.STEP(1).THRESHOLD()-1
APPROVAL.STEP([stepIndex]).SIGNEDCOUNT()Returns the number of the approvers who have already approved this step.APPROVAL.STEP(2).SIGNEDCOUNT()2
APPROVAL.STEP([stepIndex]).RESP([email])Returns the response of this step.
One approver in an approval step: No [email] argument needed.
N: Not yet, indicating that this step has not yet been approved or rejected and is still pending approval.
A: Accepted, indicating that the approver has accepted the approval.
A_D: Accept by Deputy, indicating that the deputy of the approver has accepted the approval.
REJ: Rejected, indicating that the approver has rejected the approval.
REJ_D: Reject by Deputy, indicating that the deputy of the approver has rejected the approval.
APPROVAL.STEP(1).RESP()A
Multiple approvers in an approval step: Without the [email] argument:
N: Not yet, indicating that the number of approvers who have accepted the approval is less than the designated number of approvers.
A: Accepted, indicating that the number of approvers who have accepted the approval is greater than or equal to the designated number of approvers.
REJ: Rejected, indicating that someone has rejected the approval.
APPROVAL.STEP(2).RESP()A
Multiple approvers in an approval step: With the [email] argument:
unsigned: The approver has not yet accepted or rejected the approval.
signed: The approver has accepted the approval.
signed_by_deputy: The approval has been accepted by the deputy of the approver.
rejected: The approver has rejected the approval.
rejected_by_deputy: The approval has been rejected by the deputy of the approver.
APPROVAL.STEP(2).RESP("Jessica@ragic.com")signed
APPROVAL.STEP([stepIndex]).COMMENT([email])Returns comments of the approver(s), or null if there is no comment.
(1) One approver in an approval step: No [email] argument needed. Returns the comment of the approver.
(2) Multiple approvers in an approval step: The [email] argument is required. Returns the comment of a certain approver.
APPROVAL.STEP(1).COMMENT()Reason 1
APPROVAL.STEP([stepIndex]).SIG([email])Returns the signature of the approver in this step.
E.g., base64 image URL. Supported in Upload Image Fields.
(1) One approver in an approval step: No [email] argument needed. Returns the signature of the approver in this step.
(2) Multiple approvers in an approval step: The [email] argument is required. Returns the signature of a certain approver.
APPROVAL.STEP(1).SIG()bbcode img
APPROVAL.STEP([stepIndex]).SIGIMG([email], [width], [height])Returns the signature of the approver in this step in a predetermined image size.
The [width] and [height] arguments are optional, with default values being 300px x 150px. This formula can be applied to field descriptions with BBCode [formula].
APPROVAL.STEP(2).SIGIMG
("Jessica@ragic.com",150,75)
bbcode img
APPROVAL.STEP([stepIndex]).
ACTIONDATE([email],[true])
Returns the approve or reject time of a specific approval step. This formula needs to be applied to a Date Field.
The [true] argument is optional; when applied, the time value will display in UTC+0. Otherwise, the time value will display in the account’s time zone. For more details, please refer to this section.
One approver in an approval step: No [email] argument needed. Returns the approver’s approval or reject date and time.
APPROVAL.STEP(1).ACTIONDATE('',true)2024/10/24 15:01
Multiple approvers in an approval step: Without the [email] argument:
The system will return the date and time when one approver has rejected this approval or when the step is completely approved (the number of approved approvers meets the approval threshold settings).
APPROVAL.STEP(2).ACTIONDATE('',true)2024/10/24 15:03
Multiple approvers in an approval step: With the [email] argument:
The system will return the respective user’s approval or reject time.
APPROVAL.STEP(2).ACTIONDATE
("Jessica@ragic.com",true)
2024/10/24 15:02
APPROVAL.STEP([stepIndex]).
COMMENTDATE([email],[true])
Returns the date and time left comments of the approver(s).
The [true] argument is optional; when applied, the time value will display in UTC+0. Otherwise, the time value will display in the account’s time zone. For more details, please refer to this section.
One approver in an approval step: No [email] argument needed. Returns the date and time the comment was left by the approver.
APPROVAL.STEP(1).COMMENTDATE('',true)2024/10/24 15:01
Multiple approvers in an approval step: The [email] argument is required. Returns the date and time left the comment was left by a certain approver.APPROVAL.STEP(2).COMMENTDATE
("Jessica@ragic.com",true)
2024/10/24 15:02

Start Ragic for free

Sign up with Google

Terms of Service | Privacy Policy