The topic " Database Events" is not available in Version 3.1.
The topic " Database Events" is not available in Version 3.0.
Anthology Student Database Events
In Workflow Composer 4.0 and later, the Service Module Host raises two new database events for Anthology Student:
-
The Database Row Deleted Event occurs after a row in a database is deleted.
-
The Database Row Saved Event occurs after a row in a database is updated or inserted.
Previously, for some entities in the Anthology data model, the events raised from Anthology Student (standard interface) were insufficient to notify external systems of changes to a given entity. With the introduction of the new database events, additional data changes can be captured via raised events to support various integrations between Anthology Student and other systems.
Several Anthology Student contract entities are updated to serialize/deserialize the payload for the new database events. The first tables and entities that will support the new database event types are listed below. Other tables/entities will be added in the future.
Table | Entity | Event Added in Workflow 4.0 |
---|---|---|
AdClassSched | Class Section Entity | Database Row Deleted Event Database Row Saved Event |
AdConcentrationByEnrollment | Student Area Of Study Entity | Database Row Deleted Event Database Row Saved Event |
SyStatChange | Student School Status History Entity | Database Row Saved Event |
The new database events can be selected in Workflow Composer to create workflows for these entities.
Class Section Entity (Cmc.Nexus.Academics.Contracts > Cmc.Nexus.Academics.Entities)
Student Area Of Study Entity (Cmc.Nexus.Academics.Contracts > Cmc.Nexus.Academics.Entities)
Student School Status History Entity (Cmc.Nexus.Common.Contracts > Cmc.Nexus.Common.Entities)
Event Details
Multiple Triggers
Database Row Saved/Deleted events trigger workflows multiple times due to other processes, triggers, and stored procedures that affect the database record. If a user had included an email notification in these workflows, multiple notifications would be received for each Database Row Saved/Deleted event.
Database Row Saved Events:
- On the Class Section entity, the workflow is triggered 8 times.
- On the Student Area Of Study entity, the workflow is triggered 8 times.
- On the Student School Status History entity, the workflow is triggered 4 times.
Database Row Deleted Events:
- On the Class Section entity, the workflow is triggered 4 times.
- On the Student Area Of Study entity, the workflow is triggered 0 times. The event fires if the record is deleted manually in the database. The workflow just sets the record to inactive (Active=0) as shown below.
Logging
Workflow logs for database row events will not include values for date created and date modified. The DateTime values will only appear in the database after the event is fired. The workflow just logs the event object.
2021-01-14 14:40:18.6921 67 Error Cmc.Core.Workflow.Activities.LogLine Student AOS SAVED 2021-01-14 14:40:18.6921 67 Error Cmc.Core.Workflow.Activities.LogObject { "IsExcludedCrmIntegration": false, "Id": 3524, "AreaOfStudyId": 43, "CreatedByUserId": 2, "CreatedDateTime": "0001-01-01T00:00:00", "DropByUserId": 0, "DropDate": null, "Gpa": null, "IsActive": true, "LastModifiedDateTime": "0001-01-01T00:00:00", "LastModifiedUserId": 2, "ProgramVersionAreaOfStudyId": 428, "RowVersion": null, "StudentAreaOfStudyParentId": 0, "StudentEnrollmentPeriodId": 15627, "OriginalState": "H4sIAAAAAAAEALWUTWuEMBBA/8rivcbt3sQV7HYP0l0UbJdegxndQD5kMtZNf31dC6UXeyjklJDJvJcJk2QFIvdV9wL+wtUIVecIpem58a9+gM1NK+P20ZVoSBlz7RU0d7GWLVpnO4pbq9ljkuzYNmENoORKfnKS1rAF7KJvQip/GNM0xdMuttjfE7fs/XxqFuyDNI64aSHKs5XjLIG8FBm7j9myZSNTI9U+IhwhYvkSWs1dhxYIvOoaGoUPwj/MfALx5N8cYBDDM9ohIL50RUvyA4Kgj7dWjQLEAXVpCHpceiiA6sQdna2QnQQR7KpqtHMF+gLo5ipCd9adDIZ+aWqO80JI2dGgVUrPs3p+9Fb818X+/n7yL2iiMkifBAAA", "SecureState": "H4sIAAAAAAAEAD3MQQrCMBAAwK9I7mZTeysqeFbpoSJel5C0C01Ssisxvl6s4ANm9qecsfb+7Ood56frPUumOGKst7q4zSvMkQ9qElk6ALaTC8g6kM2JkxdtU4CdMS00BgaXCWd6o1CKsMasfkNH/6OUokurUx6/sIHH9TKs7ZYiC0brFBw/juQnSpcAAAA=", "ExtendedProperties": [], "EntityState": 0 }