IFieldValueChangeEventRequest
This object is passed as the request object for field value change event subscription.
Functions
setFields
Use this function to set fields of FieldValueChange event request object. See the
Field Name Mapping section for the valid field names to be passed.
Note: Currently, complex field aren't supported
The following block shows the syntax for
setFields.
setFields: (fields: string[]) => void
Here are the parameters:
Parameter | Required? | Description |
---|---|---|
fields | Yes | Field values on top of which subscription needs to be added to. |
The following code sample shows an example in Typescript for subscribing to FieldValueChange event where setFields method is used:
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID''v1');
const tabContext: ITabContext = await frameworkProvider.getTabContext();
const recordContext: IRecordContext = await tabContext.getActiveRecord();
const requestObject: IFieldValueChangeEventRequest = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusFieldValueChangeEvent') as IFieldValueChangeEventRequest;
requestObject.setFields(['ServiceRequest.Title','ServiceRequest.ProblemDescription']);
recordContext.subscribe(requestObject, (message: IEventResponse) => {
const response = message as IFieldValueChangeEventResponse;
// custom code
});
The following code sample shows an example in Javascript for subscribing to FieldValueChange event event where setFields method is used.
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID''v1');
const tabContext = await frameworkProvider.getTabContext();
const recordContext = await tabContext.getActiveRecord();
const requestObject = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusFieldValueChangeEvent')
requestObject.setFields(['ServiceRequest.Title','ServiceRequest.ProblemDescription']);
recordContext.subscribe(requestObject, (response) => {
// custom code
});
getEventName
This function gets the event name from an event request object created.
The following code sample shows the syntax for
getEventName:
getEventName(): string;
The following code sample shows an example in typescript for subscribing to
FieldValueChange event where getEventName method is
used:
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID''v1');
const tabContext: ITabContext = await frameworkProvider.getTabContext();
const recordContext: IRecordContext = await tabContext.getActiveRecord();
const requestObject: IFieldValueChangeEventRequest = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusFieldValueChangeEvent') as IFieldValueChangeEventRequest;
requestObject.setFields(['ServiceRequest.Title','ServiceRequest.ProblemDescription']);
recordContext.subscribe(requestObject, (message: IEventResponse) => {
const response = message as IFieldValueChangeEventResponse;
// custom code
});
const eventName: string = requestObject.getEventName(); // 'cxEventBusFieldValueChangeEvent'
The following code snippet shows an example in Javascript for subscribing to
FieldValueChange event where getEventName method is
used:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID''v1');
const tabContext = await frameworkProvider.getTabContext();
const recordContext = await tabContext.getActiveRecord();
const requestObject = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusFieldValueChangeEvent');
requestObject.setFields(['ServiceRequest.Title','ServiceRequest.ProblemDescription']);
recordContext.subscribe(requestObject, (response) => {
// custom code
});
const eventName = requestObject.getEventName(); // 'cxEventBusFieldValueChangeEvent'