機械翻訳について

IUIEventsFrameworkProvider

IUiEventsFrameworkProviderは、ui-events-frameworkのAPIを呼び出すことができるオブジェクトです。

また、これらのAPIのリクエスト・ペイロードの生成に使用できるrequestHelperも提供します。 この項では、IUiEventsFrameworkProviderオブジェクトによって提供されるメソッドについて説明します。 これらの関数は次のトピックを示しています:

getVersion

getVersionメソッドは、フレームワークが初期化されるバージョンを返します。

次のコード例は、getVersionメソッドの構文を示しています:
getVersion(): string;
Typescriptに示されている次のコード例では、getVersionメソッドがコールされています:
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const version : string = frameworkProvider.getVersion();
Javascriptの次のコード例は、getVersionメソッドが呼び出される場所を示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const version  = frameworkProvider.getVersion();

getApplicationName

getApplicationNameメソッドは、フレームワークの初期化に使用するアプリケーション名を返します。

次のコード例は、getApplicationName関数の構文を示しています:
getApplicationName(): string;
Typescriptに示されている次のコード例では、getApplicationName関数がコールされています:
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const appName : string = frameworkProvider.getApplicationName(); // appName = 'MyFirstExtensionID'
Javascriptに示されている次のコード例は、getApplicationName関数が呼び出されています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const appName  = frameworkProvider.getApplicationName(); // appName = 'MyFirstExtensionID'

getGlobalContext

GlobalContextは、アプリケーション・レベルのイベントをリスニングし、アプリケーション・レベルの操作を実行する機能を提供します。 たとえば、コンテキストのオープン、コンテキストのクローズなどをリスニングします。

getGlobalContext関数を使用して、GlobalContextへの参照を取得します。

次のコード例は、getGlobalContextメソッドの構文を示しています:
getGlobalContext(): Promise<IGlobalContext>;
Typescriptに示されている次のコード例では、getGlobalContextメソッドがコールされています:
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const globalContext: CX_SVC_UI_EVENTS_FRAMEWORK.IGlobalContext = await frameworkProvider.getGlobalContext();
次のJavascriptのコード例は、getGlobalContextメソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');const globalContext = await frameworkProvider.getGlobalContext();

getAvailableRecords

このメソッドは、アプリケーションに存在する有効なアクティブなオブジェクトをすべて返します。

次のコード例は、構文を示しています:
getAvailableRecords(tabId?: string): Promise<IRecordContext[]>;
ノート: browserTabIdが渡されない場合、メソッドはアクティブなブラウザのRecordContextsリストを返します。
Typescriptの次のコード例は、メソッドが呼び出されたことを示しています:
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const availableRecords: IRecordContext[] = await frameworkProvider.getAvailableRecords();
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const availableRecords = await frameworkProvider.getAvailableRecords();

getCurrentTabId

現在のブラウザ・タブのtabIdを返します。

次のコード例は、構文を示しています:
getCurrentTabId(): Promise<string>;
Typescriptの次のコード例は、メソッドが呼び出されたことを示しています:
/// <reference path="uiEventsFramework.d.ts"/>
    const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const currentTabId: string = await frameworkProvider.getCurrentTabId();
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const currentTabId = await frameworkProvider.getCurrentTabId();

getActiveTabId

アプリケーションのアクティブなタブを返します。

次のコード例は、構文を示しています:
getActiveTab(): Promise<ITabContext>;
Typescriptの次のコード例は、メソッドが呼び出されたことを示しています:
/// <reference path="uiEventsFramework.d.ts"/>
    const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const activeTab: ITabContext = await frameworkProvider.getActiveTab();
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const activeTab = await frameworkProvider.getActiveTab();

getAvailableTabs

アプリケーションがロードしたすべての使用可能なタブを返します。 MSIタブまたはブラウザ・タブのいずれかです。

次のコード例は、構文を示しています:
getAvailableTabs(): Promise<ITabContext[]>;
Typescriptの次のコード例は、メソッドが呼び出されたことを示しています:
/// <reference path="uiEventsFramework.d.ts"/>
    const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const availableTabs: ITabContext[] = await frameworkProvider.getAvailableTabs();
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const availableTabs = await frameworkProvider.getAvailableTabs();

getTabContext

オプションのパラメータが渡されない場合、アプリケーションでアクティブなtabContextを返します。

次のコード例は、構文を示しています:
getTabContext(browserTabId?: string): Promise<ITabContext>;
ノート: browserTabIdが渡されない場合、メソッドはアクティブなTabContextを返します。

browserTabIdパラメータ

パラメータ名 必須 説明
browserTabId No アプリケーションがロードしたブラウザ・タブのTabId。
Typescriptの次のコード例は、メソッドが呼び出されたことを示しています:
/// <reference path="uiEventsFramework.d.ts"/>
    const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const tabContext: ITabContext = await frameworkProvider.getTabContext();
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const tabContext = await frameworkProvider.getTabContext();

処分

このAPIは、プロバイダ・オブジェクトに追加されたすべてのサブスクリプションを処分または登録解除できます。 このメソッドは、基本的に、frameworkProviderオブジェクトから作成されたglobalContextオブジェクトおよびrecordContextオブジェクトに追加されたすべてのサブスクリプションを削除します。

dispose:() => void;
次のコード・サンプルは、frameworkProviderからすべてのサブスクリプションを廃棄するtypescriptの例を示しています。
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
frameworkProvider.dispose();
次のコードは、frameworkProviderからすべてのサブスクリプションを処分する方法のJavascriptの例を示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
 frameworkProvider.dispose();

getActiveTabId

アプリケーション・インスタンスで現在アクティブなタブのコンテキストを返します。

次のコード例は、構文を示しています:
getActiveTab(): Promise<ITabContext>;
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const uiEventsFrameworkInstance: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('appname', 'v1'); 
const activeTabContext:ITabContext = await uiEventsFrameworkInstance.getActiveTab();  

getCurrentBrowserTabContext

コードが実行されるブラウザ・タブ・コンテキストを返します。 このAPIのレスポンスは、常にブラウザtabContextです。
ノート: MCAツールバー・ウィンドウからこのAPIをコールすると、親ブラウザ・タブのコンテキストが返されます。
次のコード例は、構文を示しています:
getCurrentBrowserTabContext(browserTabId?: string): Promise<ITabContext>;
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const uiEventsFrameworkInstance: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('appname', 'v1'); 
const browserTabContext:ITabContext = await getCurrentBrowserTabContext();  

getModalWindowContext

FusionアプリケーションのModalWindowに対するアクションの実行に使用されるUEFプロバイダ・オブジェクトの一部。 ModalWindowContextを取得するには、UEFプロバイダ・オブジェクトで提供されているgetModalWindowContext APIをコールします。

次のコード例は、構文を示しています:
getModalWindowContext(): Promise<IModalWindowContext>; 
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const uiEventsFrameworkInstance: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('appname', 'v1'); 
const modalWindowContext:IModalWindowContext = await getModalWindowContext();   

getSidePaneContext

SidePane Open Closeイベントをリスニングし、SidePane展開縮小、更新(アイコン更新およびセクション更新)アクションを実行するために、UEFサブスクライブおよび公開APIのコールの最上位のsidePaneContextオブジェクトを取得する場合に使用します。

次のコード例は、構文を示しています:
getSidePaneContext(sidePaneId: string): Promise<ISidePaneContext>;
Javascriptの次のコード例は、メソッドが呼び出されたことを示しています:
const uiEventsFrameworkInstance: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('appname', 'v1'); 
const sidePaneContext:ISidePaneContext = await getSidePaneContext('sidePane-id');   

GetRecordContext

RecordContextでは、オブジェクトに関連するすべてのイベントおよび操作をリスニングできます。 たとえば、レコード・イベントの保存前、レコード・イベントの保存後など、レコードのフィールド値のリスニングが変更された場合などです。

getRecordContext関数を使用して、RecordContextへの参照を取得します。

次のコード例は、getRecordContext関数の構文を示しています:

getRecordContext(recordType?: string, recordId?: string): Promise<IRecordContext>;
次の表に、この関数のパラメータを示します:
パラメータ 必須かどうか 説明
recordType No オブジェクト・タイプ たとえば、サービス・リクエスト、アカウントなどです。
recordId No オブジェクトの一意の識別子。
ノート: recordTypeおよびrecordId値が指定されていない場合、アクティブなRecordsコンテキストがフェッチされます。
次のコード・サンプルは、getRecordContextを取得するためのtypescriptの例を示しています。
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const recordContext: CX_SVC_UI_EVENTS_FRAMEWORK.IGlobalContext = await frameworkProvider.getRecordContext('SeviceRequest','SeviceRequestNumber');
次のJavascriptのコード例は、getRecordContextメソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');const recordContext = await frameworkProvider.getRecordContext('SeviceRequest','SeviceRequestNumber');

getActiveRecord

このメソッドは、アクティブなオブジェクト・タイプと一意の識別子を返します。

次のコード・サンプルは、getActiveRecordメソッドの構文を示しています:
getActiveRecord(): IExtensionContext;
次のコード・サンプルは、getActiveRecordメソッドを取得するtypescriptの例を示しています。
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const activeRecord: CX_SVC_UI_EVENTS_FRAMEWORK.IExtensionContext = frameworkProvider.getActiveRecord();
次のJavascriptのコード例は、getActiveRecordメソッドが呼び出されたことを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');const activeRecord = frameworkProvider.getActiveRecord();

getAvailableRecords

このメソッドは、アプリケーションに存在する有効なアクティブなオブジェクトをすべて返します。

次のコードでは、getAvailableRecordsメソッドの構文のサンプルを示します。
getAvailableRecords(): IExtensionContext[];
次のコード・サンプルは、getAvailableRecordsメソッドを取得するtypescriptの例を示しています。
/// <reference path="uiEventsFramework.d.ts"/>
const frameworkProvider: CX_SVC_UI_EVENTS_FRAMEWORK.IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const availableRecords: CX_SVC_UI_EVENTS_FRAMEWORK.IExtensionContext[] = frameworkProvider.getAvailableRecords();
Javascriptの次のコード例は、getAvailableRecordsメソッドを示しています:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID''v1');
const availableRecords = frameworkProvider.getAvailableRecords();

requestHelperオブジェクト

このオブジェクトを使用して、イベントおよび操作のリクエスト・オブジェクトを生成します。 このリクエスト・オブジェクトは、イベントのサブスクライブまたは操作の実行に使用されるAPIに備える必要があります。

構文は次のとおりです:
requestHelper: IRequestHelper;
    IRequestHelper {
         createSubscriptionRequest(eventName: string): IEventRequest;
         createPublishRequest(operationName: string): IOperationRequest;
    }

createSubscriptionRequestファンクション

このファンクションを使用して、イベント・サブスクリプションのrequestObjectを作成します。

browserTabIdパラメータ

パラメータ名 必須 説明
eventName Yes サブスクライブされたイベント名。
Typescriptのコード・サンプルを次に示します:
/// <reference path="uiEventsFramework.d.ts"/> 
    const frameworkProvider: IUiEventsFrameworkProvider =
    await  CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID''v1');    
    const globalContext: IGlobalContext = await  frameworkProvider.getGlobalContext();   
    const requestObject: IEventRequest = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusTabOpenEvent');
      
    globalContext.subscribe(requestObject,(response: IEventResponse) => {
        // custom code
    });
Javascriptのコード例を次に示します:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');    
    const globalContext = await  frameworkProvider.getGlobalContext();   
    const requestObject = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusTabOpenEvent');
      
    globalContext.subscribe(requestObject,(response) => {
        // custom code
    });

createPublishRequestファンクション

イベント・サブスクリプションのrequestObjectを作成するために使用します。

createPublishRequestパラメータ

パラメータ名 必須 説明
operationName Yes サブスクライブする操作名。
Typescriptのコード・サンプルを次に示します:
/// <reference path="uiEventsFramework.d.ts"/>  
    const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const globalContext: IGlobalContext = await frameworkProvider.getGlobalContext();
    
    const restCallRequest: IServiceConnectionRequest = (frameworkProvider.requestHelper.createPublishRequest('InvokeServiceConnection') as IServiceConnectionRequest);
    restCallRequest.setServiceConnectionId('interactions/update_interactions');
    restCallRequest.setParameters({ "interactions_Id": "12345" });
    restCallRequest.setBody({ "StatusCd": "ORA_SVC_CLOSED" });
    
    globalContext.publish(restCallRequest).then((message: IOperationResponse) => {
            // custom code
            const response = (message as IServiceConnectionResponse).getResponseData();
            console.log(response.getStatus());
            console.log(response.getBody());
    }).catch((error: IErrorData) => {
            // custom code
    });
Javascriptのコード例を次に示します:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
    const globalContext = await frameworkProvider.getGlobalContext();
    
    const restCallRequest = (frameworkProvider.requestHelper.createPublishRequest('InvokeServiceConnection'));
    restCallRequest.setServiceConnectionId('interactions/update_interactions');
    restCallRequest.setParameters({ "interactions_Id": "12345" });
    restCallRequest.setBody({ "StatusCd": "ORA_SVC_CLOSED" });
    
    globalContext.publish(restCallRequest).then((message) => {
        // custom code
        const response = message.getResponseData();
        console.log(response.getStatus());
        console.log(response.getBody());
    }).catch((error) => {
        // custom code
    });