Fusionアプリケーションのsvc-interactionページをポップ
Fusionアプリケーションでは、svc-interactionページを使用して、担当者の詳細ビューまたは「新規担当者の作成」フォームを開くこともできます。
selectedViewという名前のページ・パラメータを使用して、svc-interactionページの「担当者の作成」または「担当者」詳細ビューをレンダリングします。 selectedViewページ・パラメータの値がcreateContactの場合、担当者の作成ビューがレンダリングされます。 既存の担当者の詳細ビューを開くには、selectedViewページ・パラメータの値をdefaultViewに設定し、SVCMCA_CONTACT_NUMBERページ・パラメータの値を、オープンする担当者のIDとして設定する必要があります。
FusionアプリケーションのPop svc-interactionページにアクセスするには、「Create contact」ビューを使用します。
「MSI」タブのPOPing svc-interactionページ(担当者の作成用)のJavascriptコードは次のとおりです:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
const globalContext = await frameworkProvider.getGlobalContext();
const payload = frameworkProvider.requestHelper.createPublishRequest('PopOperation');
payload.setFlow('sr');
payload.setPage('svc-interaction');
payload.setApplicationUIName('service');
payload.setInputParameters({"selectedView": "createContact"});
const popResponse = await globalContext.publish(payload);
const tabContext = popResponse.getResponseData();
const contactRecord = await tabContext.getActiveRecord();
var sfvPayload = frameworkProvider.requestHelper.createPublishRequest('cxEventBusSetFieldValueOperation');
sfvPayload.field().setValue("Contact.FirstName", "User123");
await contactRecord.publish(sfvPayload);
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
const globalContext: IGlobalContext = await frameworkProvider.getGlobalContext();
const payload: IPopFlowAppUIRequest = frameworkProvider.requestHelper.createPublishRequest('PopOperation') as IPopFlowAppUIRequest;
payload.setFlow('sr');
payload.setPage('svc-interaction');
payload.setApplicationUIName('service');
payload.setInputParameters({"selectedView": "createContact"});
const popResponse: IPopFlowResponse = await globalContext.publish(payload) as IPopFlowResponse;
const tabContext: ITabContext = popResponse.getResponseData() as ITabContext;
const contactRecord: IRecordContext = await tabContext.getActiveRecord() as IRecordContext;
var sfvPayload: ISetFieldValueOperationRequest = frameworkProvider.requestHelper.createPublishRequest('cxEventBusSetFieldValueOperation') as ISetFieldValueOperationRequest;
sfvPayload.field().setValue("Contact.FirstName", "User123");
await contactRecord.publish(sfvPayload);
サービス・センターまたはFusionアプリケーションのsvc-interactionページをポップ - 担当者詳細ビューを開く
「MSI」タブのsvc-interactionページ(既存の担当者)のJavascriptコードは次のとおりです:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
const globalContext = await frameworkProvider.getGlobalContext();
const payload = frameworkProvider.requestHelper.createPublishRequest('PopOperation');
payload.setFlow('sr');
payload.setPage('svc-interaction');
payload.setApplicationUIName('service');
payload.setInputParameters({"selectedView": "defaultView", "SVCMCA_CONTACT_NUMBER": "CDRM_948047"});
const popResponse = await globalContext.publish(payload);
const tabContext = popResponse.getResponseData();
const contactRecord = await tabContext.getActiveRecord();
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
const globalContext: IGlobalContext = await frameworkProvider.getGlobalContext();
const payload: IPopFlowAppUIRequest = frameworkProvider.requestHelper.createPublishRequest('PopOperation') as IPopFlowAppUIRequest;
payload.setFlow('sr');
payload.setPage('svc-interaction');
payload.setApplicationUIName('service');
payload.setInputParameters({"selectedView": "defaultView", "SVCMCA_CONTACT_NUMBER": "CDRM_948047"});
const popResponse: IPopFlowResponse = await globalContext.publish(payload) as IPopFlowResponse;
const tabContext: ITabContext = popResponse.getResponseData() as ITabContext;
const contactRecord: IRecordContext = await tabContext.getActiveRecord() as IRecordContext;
エンティティ・タイプを渡すことで、MSIタブ(MSIモード)のsvc-contactページをポップ
エンティティ・タイプを渡すことによって、MSIタブ(MSIモード)でsvc-contactページを開くためのTypescriptコードを次に示します:
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
const globalContext: IGlobalContext = await frameworkProvider.getGlobalContext();
const payload: IPopFlowInAppRequest = frameworkProvider.requestHelper.createPublishRequest('PopOperation') as IPopFlowInAppRequest;
payload.setRecordType('Contact');
payload.setRecordId('10026016');
const popResponse: IPopFlowResponse = await globalContext.publish(payload) as IPopFlowResponse;
const tabContext: ITabContext = popResponse.getResponseData() as ITabContext;
const contactRecord: IRecordContext = await tabContext.getActiveRecord() as IRecordContext;
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
const globalContext = await frameworkProvider.getGlobalContext();
const payload = uiEventsFrameworkInstance.requestHelper.createPublishRequest('PopOperation');
payload.setRecordType('Contact');
payload.setRecordId('10026016');
const popResponse = await globalContext.publish(payload);
const tabContext = popResponse.getResponseData();
const contactRecord = await tabContext.getActiveRecord();
サービス・センターのポップ・ナレッジ記事または「MSI」タブのFusionアプリケーション
アプリケーション・コンソールからページ・パラメータを渡すことによって、MSIタブで記事ページを開くためのTypescriptコードを次に示します:
const uefProvider = await UIEventsAPPFramework.UefClient.getUEFProvider();
const frameworkProvider: IUiEventsFrameworkProvider = await uefProvider.uiEventsFramework.initialize('FVC');
const tabContext: ITabContext = await frameworkProvider.getCurrentBrowserTabContext();
const payload: IPopFlowAppUIRequest = frameworkProvider.requestHelper.createPublishRequest('PopOperation') as IPopFlowAppUIRequest;
payload.setFlow('sr');
payload.setPage('view-article');
payload.setInputParameters({
stripeCode: 'ORA_SVC_CRM',
answerId: '10026016',
});
const response: IPopFlowResponse = await tabContext.publish(payload) as IPopFlowResponse;
const uefProvider = await UIEventsAPPFramework.UefClient.getUEFProvider();
const frameworkProvider = await uefProvider.uiEventsFramework.initialize('FVC');
const tabContext = await frameworkProvider.getCurrentBrowserTabContext();
const payload = frameworkProvider.requestHelper.createPublishRequest('PopOperation');
payload.setFlow('sr');
payload.setPage('view-article');
payload.setInputParameters({
stripeCode: 'ORA_SVC_CRM',
answerId: '10026016',
});
const response = await tabContext.publish(payload);
エンティティを渡すことによって、「MSI」タブの記事ページをポップ
エンティティを渡すことによって、MSIタブで記事ページを開くためのTypescriptコードは次のとおりです:
const uefProvider = await UIEventsAPPFramework.UefClient.getUEFProvider();
const frameworkProvider: IUiEventsFrameworkProvider = await uefProvider.uiEventsFramework.initialize('FVC');
const tabContext: ITabContext = await frameworkProvider.getCurrentBrowserTabContext();
const payload: IPopFlowInAppRequest = frameworkProvider.requestHelper.createPublishRequest('PopOperation') as IPopFlowInAppRequest;
payload.setRecordType('Article')
payload.setRecordId('10026016')
const response: IPopFlowResponse = await tabContext.publish(payload) as IPopFlowResponse;
const uefProvider = await UIEventsAPPFramework.UefClient.getUEFProvider();
const frameworkProvider = await uefProvider.uiEventsFramework.initialize('FVC');
const tabContext = await frameworkProvider.getCurrentBrowserTabContext();
const payload = frameworkProvider.requestHelper.createPublishRequest('PopOperation');
payload.setRecordType('Article')
payload.setRecordId('10026016')
const response = await tabContext.publish(payload);