CatCategory - Scoped

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 3 minutes de lecture
  • The CatCategory API provides methods that enable you to create and modify service catalog categories using scripts.

    This API runs in the sn_sc namespace.

    Important :
    This API is accessible; however, the recommended implementation is the Service Catalog REST API.

    CatCategory - availableForUserCriteria(String action, Array criteriaIDs)

    Adds the Available For user criteria to the current catalog category.

    Tableau 1. Parameters
    Name Type Description
    action String Action to perform.
    • add: Adds the user criteria to the Available For list.
    • delete: Deletes the user criteria from the Available For list.
    criteriaIDs Array Array of the user criteria sys_ids.
    Tableau 2. Returns
    Type Description
    void
    var item = new sn_sc.CatCategory("31bea3d53790200044e0bfc8bcbe5dec");
    item.availableForUserCriteria("add", ["0c441abbc6112275000025157c651c89"]);

    CatCategory - canView(Boolean isMobile, String userSysId)

    Determines whether a specified user can view a specified category on a mobile device or desktop.

    Tableau 3. Parameters
    Name Type Description
    isMobile Boolean Flag that indicates whether to verify the user for access on a mobile device or desktop.
    • true: Validate for mobile.
    • false: Validate for desktop.
    userSysId String Sys_id of the user to validate.
    Tableau 4. Returns
    Type Description
    Boolean Flag that indicates whether the user can view the associated category.
    • true: User can view the category.
    • false: User cannot view the category.
    var scopedCategoryObj = new sn_sc.CatCategory('7b1262b9530033007444ddeeff7b12ae');
    scopedCategoryObj.canView(false, '62826bf03710200044e0bfc8bcbe5df1');

    CatCategory - create(Boolean standardUpdate)

    Insert the defined category.

    Tableau 5. Parameters
    Name Type Description
    standardUpdate Boolean Flag that indicates whether to enable the running of engines and workflow.
    Valid values:
    • true: Enable engines and workflow.
    • false: Do not enable engines and workflow.
    Tableau 6. Returns
    Type Description
    String Sys_id of the inserted variable record.
    var categoryCreate = new sn_sc.CatCategory();
    categoryCreate.setAttributes({"title" : "test a scoped category", "sc_catalog" : "e0d08b13c3330100c8b837659bba8fb4"});
    var categorySysId = categoryCreate.create();
    var isValidSysId = categorySysId.match(/^[0-9a-fA-F]{32}$/) == null ? false : true;
    global.Assert.assertEquals(true, isValidSysId,"CategorySysId: ["+ categorySysId +"] is not valid", true, isValidSysId);

    CatCategory - deleteRecord(Boolean standardUpdate)

    Deletes the category record on which the CatCategory class was initially instantiated.

    Tableau 7. Parameters
    Name Type Description
    standardUpdate Boolean Flag that indicates whether to enable the running of engines and workflow.
    Valid values:
    • true: Enable engines and workflow.
    • false: Do not enable engines and workflow.
    Tableau 8. Returns
    Type Description
    void
    var categoryDelete = new sn_sc.CatCategory(categorySysId);
    categoryDelete.deleteRecord();
    var category = new sn_sc.CatCategory(categorySysId);
    values = category.read({"title" : "", "sc_catalog":""}, false);
    global.Assert.assertEquals("", values.title,"Category should title");

    CatCategory - getID()

    Returns the sys_id of the current category.

    Tableau 9. Parameters
    Name Type Description
    None
    Tableau 10. Returns
    Type Description
    String Sys_id of the current category.

    Example:

    var cart = new sn_sc.CatCategory("2809952237b1300054b6a3549dbe5dd4");
    var categoryID = cart.getID();
    gs.info(categoryID);

    Output:

    2809952237b1300054b6a3549dbe5dd4

    CatCategory - notAvailableForUserCriteria(String action, Array[] criteriaIDs)

    Adds the Not Available For user criteria to a catalog category.

    Tableau 11. Parameters
    Name Type Description
    action String Action to perform.
    • add: Adds the user criteria to the Not Available For list.
    • delete: Deletes the user criteria from the Not Available For list.
    Tableau 12. Returns
    Type Description
    void
    var item = new sn_sc.CatCategory("31bea3d53790200044e0bfc8bcbe5dec");
    item. notAvailableForUserCriteria("add", ["0c441abbc6112275000025157c651c89"]);

    CatCategory - read(Object columns, Boolean standardUpdate)

    Returns a mapping of the category.

    Tableau 13. Parameters
    Name Type Description
    columns Object Set of columns that you would like the values for.
    standardUpdate Boolean Flag that indicates whether to enable the running of engines and workflow.
    Valid values:
    • true: Enable engines and workflow.
    • false: Do not enable engines and workflow.
    Tableau 14. Returns
    Type Description
    Object Mapping of column names to values.
    var category = new sn_sc.CatCategory("a96277509f300200b407b89a442e704e");
    var values = category.read({"title" : ""}, true);
    gs.log(values.title);

    CatCategory - setAttributes(Object attributes)

    Defines the attribute values for this category.

    Tableau 15. Parameters
    Name Type Description
    attributes Object Attributes for the new field and value pairs.
    Tableau 16. Returns
    Type Description
    void
    var categoryCreate = new sn_sc.CatCategory();
    categoryCreate.setAttributes({"title" : "test a scoped category", "sc_catalog" : "e0d08b13c3330100c8b837659bba8fb4"});
    var categorySysId = categoryCreate.create();
    var isValidSysId = categorySysId.match(/^[0-9a-fA-F]{32}$/) == null ? false : true;
    global.Assert.assertEquals(true, isValidSysId,"CategorySysId: ["+ categorySysId +"] is not valid", true, isValidSysId);

    CatCategory - setTableName(String tableName)

    Defines the table name for this category.

    Tableau 17. Parameters
    Name Type Description
    tableName String Name of the table that extends sc_category.
    Tableau 18. Returns
    Type Description
    void
    var categoryRead = new sn_sc.CatCategory(categorySysId);
    categoryRead.setTableName("test_category");
    var values = categoryRead.read({"title" : "", "sc_catalog":"", "test": ""}, false);
    gs.info(categorySysId);
    gs.info(values.title);
    gs.info(values.test);
    global.Assert.assertEquals("testValue", values.test,"Category extends sc_category and stores its extended value");

    CatCategory - update(Object columnValues, Boolean standardUpdate)

    Updates the current category with the specified name-value pairs.

    Tableau 19. Parameters
    Name Type Description
    columnValues Object Mapping of column names to values.
    standardUpdate Boolean Flag that indicates whether to enable the running of engines and workflow.
    Valid values:
    • true: Enable engines and workflow.
    • false: Do not enable engines and workflow.
    Tableau 20. Returns
    Type Description
    void
    var categoryUpdate = new sn_sc.CatCategory(categorySysId);
    categoryUpdate.update({"title" : "test changed scoped category"}, true);
    values = categoryUpdate.read({"title" : "", "sc_catalog":""}, false);
    global.Assert.assertEquals("test changed scoped category", values.title,"Category should title");