Name

sn_grc.RelatedListEntityTypeFilter

Description

Implements extension point global.RelatedListItemCandidateFilter

Script

var RelatedListEntityTypeFilter = Class.create();
RelatedListEntityTypeFilter.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 existingEntityTypes = [];
      while (m2m.next()) {
          existingEntityTypes.push(m2m.getValue(this.referencedFieldName));
      }
      var query = "active=true^processing_profiles=false^sys_idNOT IN" + existingEntityTypes.join(",");
      return query;
  },

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

  type: 'RelatedListEntityTypeFilter'
};

Sys ID

ee1c65d453002010cdacddeeff7b1227

Offical Documentation

Official Docs: