How to prevent terminated or disabled users from creating Incidents via email

Version 1

    How To:

    When a user is terminated, even if their Employee record is flagged as Disabled and their Status set to Terminated, they are still able to log Incidents by sending an email into the listener. Is there a way to prevent this?

    In the original example, the customer's users were external, and they needed to be able to recognize and/or prevent tickets from being logged by users who are no longer subscribed/licensed.

     

    Step by Step:

    Log into the Admin role

    Select Configure Application

    Select Business Objects

    Select Frs_CompositeContract_Contact

    Select Fields

    Select Add New

    Select Text

    Set a Field Name (for this example, 'NoIncidents')

    Set the Display Name as desired

    Click 'Add this Field'

    Save the object

    Select Business Objects

    Select Employee

    Select

    Business Rules

    Expand Editing and Calculation Rules

    Select Add Calculation Rule

    Select the new field for Field Name

    Set Condition to Always

    Set the expression to: $(if Disabled || Status == "Terminated" then "true" else "false")

    Save

    Optional: Add the new field to your Employee form so the value can be monitored or changed manually

    Select Business Objects

    Select Incident

    Select Business Rules

    Expand Validation Rules

    Select Add Validation Rule

    Check 'Validate on Insert'

    Set the expression to: $([Frs_CompositeContract_Contact#.IncidentAssociatedCustomer]NoIncidents != "true")

    Set the Message to 'Disabled User'

    Save

     

     

     

     

    Now when an Employee is Disabled or Terminated, it will trip this flag, and they will no longer be able to create Incidents via email (or by any method).

    Please note that this value will only exist for Employee records updated after the configurations above were implemented; existing records will have a blank/null value. You can update Employees by making any change to the record, either individually or as a mass update via quick action, or via a SQL script.