Quote Approval workflow for a specific User

Scenario
The client wants to set up a process in NetSuite that requires approval from a specific user (Approver) before any quotes are created by a specific user (Creator). The submit for Approval button is displayed for the Creator ( In all roles the creator is able to use the Submit for Approval button) and this button is displayed to all the users with admin roles.
Once the quote is submitted for approval the record is locked to the creator to avoid the override. No email is sent to the customers during the process.


Solution
Before starting the customization of the workflow created a transaction custom field to show the approval status of the Quote (Quote Approval Status)
Create a workflow
Customization>Workflow> Workflows > New
Record Type: Transaction
SubTypes: Quote
Check on the box execute as Admin
Initiation: Event Based
Event Defenition: On create, On view or Update
Trigger Type: All
Condition: Created By (AU): Name/ID = (Name of the creator) [This condition is to set up the workflow only for the specific user]


State 1 (Submit For Approval)
New Action
Set field value To Be Emailed = False (this is for not sending emails to customers)
Set field Display Type To BeEmailed= DISABLED
Set Field Display Type: Quote Approval Status = Disabled
Add Button: Submit For Approval
Condition: User = (Name of Quote creator) Or User Role = Administrator (This condition is for display submit for approval button to the creator or all the administrator roles)
Event Type: View
Trigger on: Before Record Load

Transition ON (From State 1 to State 2)
Execute on Button Submit for Approval

State 2 (Approve & Reject)
New Action
Set Field Value Quote Approval Status=Pending Approval
Send Email (Send mail to the approver to inform a quote is submitted for approval)
Sender: From Field- Select “Current Record”
Field: Select ” Created By (AU) “
Recipient: From Field- Select “Created By (AU)”
Field: Select “Supervisor”
Add Button “Approve”
Condition: User: any of: Name of the Employee( Approver)
Add Button “Reject”
Condition: User: any of: Name of the Employee( Approver)
Lock Record
Condition: User: any of: Name of the Employee(Creator) and
Quote Approval Status= Pending Approval

Transition On (From State 2 to State 3)
Execute On Button Approve

State 3 (Approved)
Set Field Value: Quote Approval Status =Approved
Set Field Display Type: Disabled
Lock Record: User: any of: Name of the Employee(Creator) and
Quote Approval Status= Approved

In the workflow state of Approved check on the Do not Exit Workflow

Transition On (From State 2 to State 3)
Execute On Button Reject

State 3 (Reject and Resubmit)
Set Field Value: Quote Approval Status =Rejected
Set Field Display Type: Disabled
Send Email (A email send to the created regarding the quote is rejected by the Approver)
Sender: From Field- Select “Created By (AU)”
Field: Select “Supervisor”
Recipient: From Field- Select “Current Record”
Field: Select ” Created By (AU) “
Add Button: Resubmit
Condition: User: Any of: Name of the Employee (Creator) and
Quote Approval Status= Rejected

Transition On (State 4 to State 3)
Condition: User: Any of: Name of the creator
Execute on Button: Resubmit









Leave a comment

Your email address will not be published. Required fields are marked *