Name

sn_risk_advanced.RiskEventAjax

Description

No description available

Script

var RiskEventAjax = Class.create();
RiskEventAjax.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {

  retrieveRiskEventInfo: function(table_name,sysid) {
      var result = {};
  	var sysId = sysid?sysid:this.getParameter('sysparm_sys_id');
  	var tableName = table_name?table_name:this.getParameter('sysparm_table_name');
  	
  	if(this.checkUniqueRiskEvent(result, sysId)) {
  		result.errorMessage = gs.getMessage('A Risk Event has already been created for this record.');
  		result.errorType = 'info_message';
  	} else {
  		var gr = new GlideRecordSecure(tableName);
  		gr.get(sysId);
  		if (gr.isValid()) {
  			result = new sn_risk_advanced.GRCRiskEvent().retrieveRiskEventInfo(gr);
  		} else {
  			result.errorMessage = gs.getMessage('Please save the record before creating the risk event.');
  		}
  	}
      return new global.JSON().encode(result);
  },

  checkUniqueRiskEvent: function(result, sysid) {
  	var sysId = sysid?sysid:this.getParameter('sysparm_sys_id');
  	var riskEvent = new GlideRecord('sn_risk_advanced_event');
  	riskEvent.addQuery("source_record", sysId);
  	riskEvent.query();
  	if(riskEvent.next()) {
  		result.existingRiskEventSysId = riskEvent.getUniqueValue();
  		return true;
  	}
  	return false;
  },

  createRiskEvent: function(risk_event_info_object) {
  	if(risk_event_info_object){
  		return new global.JSON().encode(new GRCRiskEvent().createRiskEvent(risk_event_info_object));
  	}
      var riskEventInfo = new global.JSON().decode(this.getParameter('sysparm_risk_event_info'));
      return new global.JSON().encode(new GRCRiskEvent().createRiskEvent(riskEventInfo));
  },

  type: 'RiskEventAjax'
});

Sys ID

7a11b7e00f7f3300bad14bb768767e98

Offical Documentation

Official Docs: