• Server-side scripts allow the system to run the JS scripts on the server-side when the server events happen, for example:

    • writing or updating any data in the database
    • an incoming message
    • due date and time occurrence
    • calling specified UI action
    • the Run Script activity processing within a workflow.

    They are used for creating reactions for the data writing based on the pre-defined rules, such as:

    • database transaction interrupting
    • new system object creation
    • associative record creation (once the record is created, one more will be created in return)
    • the context-dependent value calculation
    • a configuration of the record creation initiated by incoming email (the incident is created upon receipt of an email), and so on.

    In the server-side scripts, you can use native JavaScript and methods provided by server-side API.

    To define the API class in a script, specify it explicitly in the script, for example:

    class SimpleAutoAssigner {
    
      /**
      * @constructor
      * @param {string} autoAssignedRuleId
      */
      constructor(autoAssignedRuleId) {
        this.autoAssignedRuleId = autoAssignedRuleId;
        this.assigner = this.__create();
        this.userId = this.assigner.getUserId();
        this.groupId = this.assigner.getGroupId();
      }
      //...
    

    You can import all the API classes by adding the string // #import_all_types at the beginning of the script executed through the eval() function.

    // #import_all_types

    The following sections contain more details and specifics of server-side scripts usage.

    See the Scheduled Scripts article to get more information about implementing routine activities.


  • No labels