サービス・センター・アプリケーション・ウィンドウでのUEFクライアント・オブジェクトの使用
enableUefClientは、サービス・センターで公開できるアプリケーション・レベルの変数です。
この変数は、アプリケーション・ウィンドウがUEF機能を使用できるようにするために使用されます。
次のスクリーンショットに示すように、VB Studioの「変数」タブからアプリケーション変数を有効または無効にします。<iINCLUDE SCREENSHOT>
変数を有効にすると、アプリケーション・ウィンドウで外部アプリケーションからUEF機能に直接アクセスするのと同じステップを使用できます。 Service Center内の任意のカスタムJavaScriptコードを使用してアクセスできます。 この機能は、外部アプリケーション内で使用されるUEFオブジェクトと共存します。
UEFを使用してTabOpenイベントをサブスクライブするために、サービス・センター・コンテナ・ページに追加されたJavaScriptサンプルを次に示します:
UIEventsAPPFramework.UefClient.getUEFProvider().then((CX_SVC_UI_EVENTS_FRAMEWORK) => {
CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID').then((uefProvider) => {
uefProvider.getGlobalContext().then((globalContext) => {
const requestObject = uefProvider.requestHelper.createSubscriptionRequest('cxEventBusTabOpenEvent');
globalContext.subscribe(requestObject, (response) => {
console.log('Response from UEF API used in APP Window___', response);
});
});
});
});
次に、UEFを使用したVBアプリケーション・ウィンドウでの「Subscribe Field Value Change」の例を示します:
async listenFieldValueChange() {
const uefProvider = await UIEventsAPPFramework.UefClient.getUEFProvider();
const frameworkProvider = await uefProvider.uiEventsFramework.initialize('FVC');
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) => {
const fieldName = response.getResponseData().getFieldName();
const newValue = response.getResponseData().getNewValue();
const oldValue = response.getResponseData().getOldValue();
console.log(`Field Name: ${fieldName}, oldValue: ${oldValue}, newValue: ${newValue}`);
});
}