Listen to Task and Appointment Events
After you obtain the UEF context for a Task or Appointment record in the
OnChildRecordOpen event, register record-level event listeners for that
child record by using the registerEventsForRecordLevelEvent global
function.
$modules.uiEventsFramework.registerEventsForRecordLevelEvent(['FieldValueChange','OnBeforeSave','OnAfterSave'],callGetRecordByContext.response);
The following example registers listeners for FieldValueChange,
OnBeforeSave, and OnAfterSave events on the opened
Task or Appointment record.
define([
'vb/action/actionChain',
'vb/action/actions',
'vb/action/actionUtils',
], (
ActionChain,
Actions,
ActionUtils
) => {
'use strict';
class recordLevelEventListener extends ActionChain {
/**
* @param {Object} context
* @param {Object} params
* @param {{data: any, eventName: string, recordType: string}} params.event
*/
async run(context, { event }) {
const { $variables, $modules } = context;
switch (event.eventName) {
case 'OnChildRecordOpen': {
const callGetRecordByContext =
await $modules.uiEventsFramework.getRecordByContext(
$variables.uefContext,
{
objectId: event.data.objectId,
objectType: event.data.objectType
}
);
$modules.uiEventsFramework.registerEventsForRecordLevelEvent(
[
'FieldValueChange',
'OnBeforeSave',
'OnAfterSave'
],
callGetRecordByContext.response
);
break;
}
}
}
}
return recordLevelEventListener;
});
| Parameters | Description |
|---|---|
| Event array | Lists the child-record events to listen for:
FieldValueChange,
OnBeforeSave, and
OnAfterSave. |
callGetRecordByContext.response |
The UEF context of the opened Task or Appointment record. |
registerEventsForRecordLevelEvent |
Registers record-level event listeners for the specified child-record context. |
After following these steps, on OnChildRecordOpen case, you can add
listeners for the events with the registerEventsForRecordLevelEvent
global function