Name

sn_grc.RelatedListEntityFilter

Description

Implements extension point global.RelatedListItemCandidateFilter

Script

var RelatedListEntityFilter = Class.create();
RelatedListEntityFilter.prototype = {
  initialize: function(tableName, parentFieldName, parentRecordSysId, referencedFieldName) {
      this.tableName = tableName;
      this.parentFieldName = parentFieldName;
      this.parentRecordSysId = parentRecordSysId;
      this.referencedFieldName = referencedFieldName;
  },
  getFilterQuery: function() {
      var m2m = new GlideRecord(this.tableName);
      m2m.addQuery(this.parentFieldName, this.parentRecordSysId);
      m2m.query();
      var existingEntities = [];
      while (m2m.next()) {
          existingEntities.push(m2m.getValue(this.referencedFieldName));
      }
      var query = "active=true^sys_idNOT IN" + existingEntities.join(",");
      return query;
  },

  handles: function(thing) {
      return thing == "ENTITY_FILTER";
  },

  type: 'RelatedListEntityFilter'
};

Sys ID

64cb14e153d020100b6fddeeff7b12fd

Offical Documentation

Official Docs: