Domain-specific business rules are not triggered on custom tables when deleting a record from the list view. However, the business rule behaves normally when updating or inserting a record. When deleting the record from the form view, the business rule works normally.

Steps to Reproduce

  1. Log in to the instance as admin.

  2. Create a custom table named Test Table (u_test_table).

    For more information, see the product documentation topic Create a table.

  3. Configure the new table's list layout: add sys_domain column (type = Domain ID), a description (u_description) column (type=string, length 40).

  4. Switch to the TOP/ACME domain.

  5. Open u_test_table.do and create a new record with the Description "Test 1".

    The domain will automatically be set to TOP/ACME.

  6. Right-click in the form header and choose Configure > Business Rules.

  7. Click New and create a business rule called Domain Record Delete Test.

  8. Check the Advanced, Insert, Update, and Delete checkboxes.

  9. Check the Advanced checkbox and add the following code to the Advanced tab's Script section:
    gs.log("Operation = " + current.operation());

  10. Click Submit.

  11. From the list view, change the description of the only record in u_test_table to "Test 2".

    An information message appears at the top of the page saying "Operation = update".

  12. Delete the record from the list view.

    A message should appear in the log that says "Operation = delete" but the business rule does not get triggered.




Choose one of the following workarounds:

  • Create the business rule first in the global domain and then override it in the ACME domain as needed.

  • Create the business rule only in the global domain and have your domain-specific logic hard-coded within the script. 

Related Problem: PRB1102464

Seen In

There is no data to report.

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2020-11-15 12:12:48