Name

global.AbstractAjaxDataUpdateChecker

Description

AbstractAjaxDataUpdateChecker

Script

var AbstractAjaxDataUpdateChecker = Class.create();
AbstractAjaxDataUpdateChecker.prototype = Object.extendsObject(AbstractAjaxProcessor, {
 updateData: function() {
    var itemID = this.getParameter('sysparm_item_id');
    var table = this.getTableName();
    var result = "";
    if (itemID != "" && table != null){
       var gr = new GlideRecord(table);
       gr.addQuery('sys_id', itemID);
       gr.query();
       if (gr.next()){
          var values = this.getNewValues(itemID, gr.state);
          if (values){
             gr.state = values[0];
             gr.blocked = values[1];
             gr.blocked_reason = values[2];
             gr.update();
             result = values.join("|");
          }
       }
    }
    return result;
 },

 whatWillChange: function() {
    var itemID = this.getParameter('sysparm_item_id');
    var table = this.getTableName();
    var result = [];
    if (itemID != "" && table != null){
       var gr = new GlideRecord(table);
       gr.addQuery('sys_id', itemID);
       gr.query();
       if (gr.next()){
          var values = this.getNewValues(itemID, gr.state);
          if (values){
             result = this.getChangeMessages(gr, values);
          }
       }
    }
    return result.join("|");
 },

 getChangeMessages: function(){
    return [];
 },

 getNewValues: function(){
    return null;
 },

 getTableName: function(){
    return null;
 },
  
  /**
   * Prevent public access to this processor
   */
  isPublic: function() {
  	return false;
  }
});

Sys ID

31fdf1b037201000dadaa3549dbe5d7e

Offical Documentation

Official Docs: