Business rules installed with catalog item designer

The catalog item designer adds multiple business rules.

The following business rules perform the action described.
Name Table When Description
Validate Category Item [sc_ic_item_staging] BEFORE Abort action if category is invalid.
Set Question for non-preconfigured types Question Type [sc_ic_question_type] BEFORE For non-preconfigured question types, set the label using the class name.
Prevent multiple non-preconfigured Question Type [sc_ic_question_type] BEFORE Abort the insert/update action and display an error message to the user if a non-preconfigured question type already exists.
Set Name field Section [sc_ic_section] BEFORE Set name field to label field and add additional message detail.
Set value if nil Question Choice [sc_ic_question_choice] BEFORE Set text field to empty string if value is null.
Check for duplicate Section [sc_ic_section] BEFORE Abort the insert/update action and display an error message to the user if a section already exists.
Check for Questions before deleting Section [sc_ic_section] BEFORE Prevent deletion of columns by aborting the delete action and display an error message to the user if the column contains questions.
Position must be between 0 or 1 Column [sc_ic_column] BEFORE Show message to user.
Check for Questions before deleting Column [sc_ic_column] BEFORE Show message to user.
Group/user required for user specified Task [sc_ic_task_defn_staging] BEFORE Show message to user.

The following business rules do not contain independent logic, but simply call methods in script includes, as indicated below. To find out which business rules call which script includes, refer to the default class registrations within the sc_ic_BaseFactory script include.

Name Table When
sc_ic: Copy Approval Definitions Requested Item [sc_req_item] AFTER
sc_ic: Copy Task Definitions Requested Item [sc_req_item] AFTER
Approval definition changed Approval [sc_ic_aprvl_defn_staging] AFTER
Update detail field Approval [sc_ic_aprvl_defn_staging] BEFORE
Set the item to draft Approval Type [sc_ic_aprvl_type_defn_staging] BEFORE
Check and update manager/editor roles Item Designer Category Request [sc_ic_category_request] AFTER
Copy changes to real Category Item Designer Category Request [sc_ic_category_request] AFTER
Add Item Designer role on insert Item Designer Category Request [sc_ic_category_request] AFTER
Column changed Column [sc_ic_column] AFTER
Set layout changed on delete Column [sc_ic_column] AFTER
Create default Section Item [sc_ic_item_staging] AFTER
Set draft if changed Item [sc_ic_item_staging] BEFORE
Check for Valid Name Question [sc_ic_question] BEFORE
Question definition changed Question [sc_ic_question] AFTER
Question meta changed Question [sc_ic_question] AFTER
Set definition changed on delete Question [sc_ic_question] AFTER
Set Question Type and Base Type Question [sc_ic_question] BEFORE
Set question name Question [sc_ic_question] BEFORE
Question Choice changed Question Choice [sc_ic_question_choice] AFTER
Set Order number Question Choice [sc_ic_question_choice] BEFORE
Set layout changed on delete Section [sc_ic_section] AFTER
Create default Columns Section [sc_ic_section] AFTER
Section changed Section [sc_ic_section] AFTER
Set Draft Task Assignment [sc_ic_task_assign_defn_staging] BEFORE
Set assignment details Task Assignment [sc_ic_task_assign_defn_staging] BEFORE
Set assignment details Task [sc_ic_task_defn_staging] BEFORE
Set task definition changed on item Task [sc_ic_task_defn_staging] AFTER