6.5.2 アクションのスクリプト(UIバージョン1.1)
ScriptのYAMLファイル内のラベル"file"で指定するスクリプトをあらかじめ作成する必要があります。スクリプトはJavaScriptで記述してください。以下に各コンポーネントでアクションが実行されるタイミングおよび呼び出される関数名の一覧を示します。お客様はスクリプト内に該当する関数名を定義し、アクションの内容を記述してください。
(表)各コンポーネントでの実行タイミングおよび関数名一覧(UIバージョン1.1)
| コンポーネント | アクションが実行される タイミング |
スクリプト内で 呼び出される関数名 |
関数の引数 | ||
|---|---|---|---|---|---|
| データ形式 | 変数名 | 設定する値 | |||
| Grid | 画面の表示時 | handleLoad | - | - | - |
| Button | ボタンのクリック時 | handleClick※1 | string | name | クリックしたボタンの名前 |
| ボタンクリック直後 | handleBeforeAction※2 | - | - | - | |
| データ保存前 | handleBeforeSave※2 | - | - | - | |
| データ保存後 | handleAfterSave※2 | - | - | - | |
| ワークフローを次のステップにすすめる処理の前 | handleBeforeRequestWorkflow※2 | - | - | - | |
| handleBeforeResumeStep※2 | - | - | - | ||
| Form | 画面の表示時 | handleLoad | - | - | - |
| Form初期フィールド取得時 | handleAfterLoadData | - | - | - | |
| Formフィールドの変更時 | handleChange | string | fieldName | 変更されたフィールドの名前 | |
| any | fieldValue | 変更されたフィールドの値 | |||
| Object | fieldExtension | 変更されたフィールドの値 | |||
| boolean | fieldExtension.checked | チェックボックスのチェック状態(properties.checkbox: true時) | |||
| string | fieldExtension.operator | 演算子 (properties.operator: true時) | |||
| any | fieldExtension.firstOperand | 第1オペランド(properties.operator: true時, 演算子によってはなし) | |||
| any | fieldExtension.secondOperand | 第2オペランド(properties.operator: true時, 演算子によってはなし) | |||
| フォーカスを外した時 | handleBlur | string | fieldName | 変更されたフィールドの名前 | |
| any | fieldValue | 変更されたフィールドの値 | |||
| Object | fieldExtension | 変更されたフィールドの値 | |||
| boolean | fieldExtension.checked | チェックボックスのチェック状態(properties.checkbox: true時) | |||
| string | fieldExtension.operator | 演算子 (properties.operator: true時) | |||
| any | fieldExtension.firstOperand | 第1オペランド(properties.operator: true時, 演算子によってはなし) | |||
| any | fieldExtension.secondOperand | 第2オペランド(properties.operator: true時, 演算子によってはなし) | |||
| Table | Tableの行選択変更 | handleSelectionModelChange | GridRowId[]またはGridRowId | selectModel | Tableコンポーネントのproperties.selection:が"checkbox" の場合は選択行のIDの配列、"radio" の場合は選択行のID |
| セルクリック時 | handleCellClick | string | field | クリックされた列の列名 | |
| object | row | クリックされた行の行データ | |||
| セル値の変更時 | handleCellValueChange | any | value | 入力された値 | |
| セルのアイコンクリック時 | handleIconClick | Object | row | クリックされた行の行データ | |
| Tabs | タブ選択の変更時 | handleChange | string | name | 選択されたタブの名前 |
| object | activeTab | 選択されたタブの情報 | |||
| タブ活性時 | handleActivate | string | name | 活性になったタブの名前 | |
| object | activeTab | 活性になったタブの情報 | |||
| タブ非活性時 | handleDeactivate | string | name | 非活性になったタブの名前 | |
| object | activeTab | 非活性になったタブの情報 | |||
| タブの追加ボタンクリック時 | handleAddButtonClick | Array.<object> | - | 表示しているタブ情報の一覧 | |
| Card | Cardのクリック時 | handleClick※3 | string | name | クリックしたCardの名前 |
| 画面の表示時 | handleLoad | - | - | - | |
| Label | 画面の表示時 | handleLoad | - | - | - |
以下に、アクションの内容を記述する際に使用可能なクラス名と関数名の一覧を示します。
【インスタンスを作成せずに使用できるクラス】
- OIWindow
- OIData
- OIWorkflow
- OIApi
- OICommon
- OIUi
【インスタンスを作成して使用するクラス】
- OIActionButton(アクションボタンの内部名)
- OIButton(Buttonコンポーネントの内部名)
- OITableDataSource(データソースのユーザー定義名)
- OIForm(Formコンポーネントの内部名)
- OITable(Tableコンポーネントの内部名)
- OITabs(Tabsコンポーネントの内部名)
- OITab(Tabコンポーネントの内部名)
- OIArticle(Articleコンポーネントの内部名)
- OIAttachment(Attachmentコンポーネントの内部名)
- OICard(Cardコンポーネントの内部名)
- OIPaper(Paperコンポーネントの内部名)
- OILabel(Labelコンポーネントの内部名)
- OIStore(options)
アクションボタンの内部名はbuttonsのname、コンポーネントの内部名はcomponentsのname、データソースのユーザー定義名はdataSource.tablesのnameに設定する値です。内部名、ユーザー定義名の詳細は「(表)UI定義(UIバージョン1.1)」を参照してください。
OIStoreはブラウザーにデータを保存する際に使用します。保存されたデータは、ブラウザーのタブやウィンドウを閉じても削除されませんが、ブラウザーのサイトデータやキャッシュをクリアすると削除されます。
OIStoreの引数「options」は以下の2つのプロパティを持ちます。
- namespace :データを保存する名前空間(string型)を指定
名前空間ごとのデータ管理ができます。同じ名前空間でkeyが重複するとデータは上書きされます。異なる名前空間ではkeyが重複しても異なるデータとして保存されます。省略するとデフォルトの名前空間にデータが保存されます。 - scope:データにアクセスできるユーザーとしてallまたはuserを指定
- all:すべてのユーザーがアクセス可能
- user:ログインユーザー固有のデータのみアクセス可能。allで保存されたデータにはアクセス不可
(表)アクションの内容を記述する際に使用可能である関数名一覧(UIバージョン1.1)
| クラス名 | 関数名 | 関数の引数 | アクションの内容 | |||
|---|---|---|---|---|---|---|
| データ形式 | 変数名 | 設定する値 | ||||
| OIWindow | open | string | - | type | "move"、"new_window"、"new_tab"のいずれかを指定する。
|
ページ、またはUIを開く。 |
| Object | options | - | ||||
| string | url | urlに表示するページのURLを指定する。 例){url:'/sys_task'} |
||||
| OIWindow | showMessage | string | - | type | メッセージをスナックバーで表示する場合は"snackbar"、ダイアログで表示する場合は"modal"を指定する。 | スナックバー、またはメッセージダイアログを表示する。Typeに"modal"を指定した場合、第1ボタンがクリックされたときは"ok"、最終ボタンがクリックされたときは"cancel"を戻り値にPromise<string>型で設定する。 |
| Object | options | - | ||||
| string | typeMess | typeが"snackbar"の場合、"error"、"warning"、"info"、"success"のいずれかを指定する。typeが"modal"の場合は、任意の数のボタンを表示でき、クリックされたボタンを戻り値で受け取ることができる。 | ||||
| string | content | 表示するメッセージを指定する。 | ||||
| string | title | typeが"modal"の場合、タイトルを指定する。 | ||||
| [Array<Object>] | buttons | typeが"modal"の場合、ボタンのラベルと値(クリック時に返却される)を以下のように設定する。
- [Array<Object>] buttons - {string} name - {string} value |
||||
| Object | btnOk | typeが"modal"の場合、第1ボタンのラベルに表示する内容を設定する。 | ||||
| string | btnCancel | typeが"modal"の場合、最終ボタンのラベルに表示する内容を設定する。 btnOk、btnCancelをどちらも省略した場合は[OK]ボタンが表示される。 |
||||
| string | subContent | typeが"modal"の場合、contentのメッセージの下に表示される追加のメッセージを設定する。省略可能。 | ||||
| boolean | useConfirm | typeが"modal"の場合、"true"を指定すると、[OK]ボタンをクリックするための確認用チェックボックスが追加される。省略した場合は"false"となる。 | ||||
| OIWindow | resetScroll | - | - | - | - | コンテンツ領域のスクロール位置をリセットする。 |
| OIWindow | openDialog | string | - | ui | ダイアログのコンテンツ部分に表示するUIマニフェストを指定する。 | ダイアログを開く。closeDialogによってダイアログが閉じられるまで待機する。Promiseが解決されると、closeDialogのresultにPromise<any>型で渡した値を返却する。 |
| Object | options | ダイアログに関するオプションを指定する。 | ||||
| string | title | ダイアログの中身に表示するUIのYAMLファイルを指定する。省略可能。 | ||||
| string | titleIcon | ダイアログのタイトルの先頭に表示するアイコン Material UIで用意されているアイコンを指定する。詳細はhttps://v5.mui.com/material-ui/material-icons/を参照する。省略可能。 |
||||
| object | dialogSx | ダイアログの外枠全体のスタイルをMaterial-UIのsxプロパティに基づいて指定する。詳細はhttps://v5.mui.com/system/getting-started/the-sx-prop/を参照する。省略可能。 | ||||
| object | contentSx | ダイアログの中身のスタイルをMaterial-UIのsxプロパティに基づいて指定する。詳細はhttps://v5.mui.com/system/getting-started/the-sx-prop/を参照する。省略可能。 | ||||
| OIWindow | closeDialog | any | - | result | openDialogの戻り値とする値を指定する。 | ダイアログを閉じる。完了するまで待機するPromise<undefined>を返却する。 |
| OIData | insertCurrentRecord | Object | currentRecord | - | Ops I REST API graphqlを使用して、データベースの任意のテーブルにレコードを挿入する。戻り値にResponse BodyをPromise<Object>型で設定する。 | |
| string | table | レコードを挿入するテーブル名を指定する。 | ||||
| Object | 挿入レコードのフィールド名 | 挿入レコードのフィールドに設定する値を指定する。任意の数を指定できるが、挿入先テーブルのフィールド名と対応している必要がある。フィールドが文字列型の場合はstring、数値型の場合はnumberなど、設定する値はフィールドの型に合わせる。 | ||||
| string | - | ctxId | 挿入するレコードと関連付けるコンテキストIDを指定する。 | |||
| OIData | getRecords | string | - | tableName | 取得するレコードのテーブル名を指定する。 | Ops I REST API graphqlを使用して、データベースの任意のテーブルのレコードを取得し、戻り値にResponse BodyをPromise<Object>型で設定する。 |
| string | - | obj | レコード取得条件のGraphQLクエリを指定する。 例1)取得するフィールドを指定する場合:'{field1 field2}' 例2)指定したレコードIDと同じレコードのfield1, field2を取得する場合:'( where: { id: {_eq: "レコードID" } }){field1 field2}' |
|||
| OIData | updateCurrentRecord | Object | currentRecord | - | Ops I REST API graphqlを使用してデータベースのテーブルの任意のレコードを更新し、戻り値にResponse BodyをPromise<Object>型で設定する。 | |
| string | table | 必須。更新するレコードのテーブル名を指定する。 | ||||
| string | id | 必須。更新するレコードのIDを指定する。 | ||||
| Object | 更新レコードのフィールド名 | 更新するレコードのフィールドに設定する値を指定する。任意の数を指定できるが、更新先テーブルのフィールド名と対応している必要がある。フィールドが文字列型の場合はstring、数値型の場合はnumberなど、設定する値をフィールドの型に合わせる。 | ||||
| OIData | deleteCurrentRecord | string | - | tableName | 削除するレコードのテーブル名を指定する。 | Ops I REST API graphqlを使用して、データベースのテーブルの任意のレコードを削除し、戻り値にResponse BodyをPromise<Object>型で設定する。 |
| string | - | currentId | 削除するレコードのIDを指定する。 | |||
| OIData | query | Object | query | - | Ops I REST API graphqlを使用して任意のGraphQLクエリを実行し、戻り値にResponse BodyをPromise<Object>型で設定する。 | |
| string | query | 実行するGraphQLクエリを文字列で指定する。 | ||||
| Object | variables | GraphQLクエリに埋め込まれる変数を指定する。 | ||||
| OIWorkflow | respond | string | - | contextID | コンテキストID | ワークフローに応答し、実行結果をPromise<Object>型で戻り値に設定する。 |
| string | - | activityName | 返答するactivityName(ワークフロー定義中のtasksで指定されているタスク名) | |||
| Object | - | params | 返答するアクションの内容として、"accept"、"reject"、"pull_back"、"cancel"のいずれかを指定する。 例) { "oi_response": "accept" } |
|||
| OIWorkflow | start | string | - | contextID | コンテキストID | 指定されたコンテキストIDに関連するワークフローを実行し、実行結果をPromise<Object>型で戻り値に設定する。 |
| Object | - | body | ワークフローに設定するパラメータの内容を指定する。 例) { "params": { "param1": "string", "param2": "string", "param3": "string" } } |
|||
| OIWorkflow | save | boolean | - | options | 以下を指定する。
|
ワークフローを保存する。指定されたデータソースの保存処理が完了するまで待機するPromiseを返却する。保存時にエラーが発生した場合、エラーメッセージが表示される。 |
| OIWorkflow | getActivity | - | - | - | - | 現在表示されているワークフローのアクティビティのオブジェクト(StackStormのステップオブジェクト)をPromise<Object>型で取得する。取得まで待機するPromiseを返却する。 |
| OIApi | call | string | - | url | 実行するREST APIのURLを指定する。指定するREST APIはResponse Bodyがjson形式である必要がある。 | REST APIを実行し、戻り値にResponse BodyをPromise<Object>型で設定する。 |
| Object | - | option | パラメータを指定する。省略時は波括弧({})が設定される。 例){method: 'GET', headers: {'Content-Type': 'application/json'}} |
|||
| boolean | - | showError | REST APIでエラーが発生した場合、エラー内容を画面に表示するか否かを指定する。省略した場合、"true"が設定される。 | |||
| OICommon | getUserProfile | - | - | - | - | ログインユーザーのプロファイルを取得し、戻り値にPromise<UserPrincipalDTO>型で設定する。UserPrincipalDTOには以下の情報が含まれる。
|
| OICommon | getUserTimezone | - | - | - | - | ログインユーザーのタイムゾーンを取得し、戻り値にstring型で設定する。 例)UTC+09:00 |
| OICommon | getDateWithUserTimezone | - | - | - | - | 現在日時(YYYY-MM-DDTHH:mm:ssZ)をログインユーザーのタイムゾーンで取得し、戻り値にstring型で設定する。 例)2022-09-21T15:36:20+09:00 |
| OICommon | formatWithUserTimeZone | string | - | val | 日付 例)2022-09-21T06:36:20 |
指定した日付をログインユーザーのタイムゾーンで表示し、戻り値にstring型で設定する。 例)変更後日付 2022-09-21T15:36:20+09:00 |
| format | 書式 例)YYYY-MM-DDTHH:mm:ssZ |
|||||
| OICommon | getUTCOffset | - | - | - | - | ブラウザーのタイムゾーンを取得し、戻り値にstring型で設定する。 例)UTC+09:00 |
| OICommon | translate | Object | - | dictionary | 言語ごとの文字列を定義する。 | ユーザーの言語設定に合わせた文字列を返却する。 |
| string | - | key | dictionaryから取得するkeyを指定する。 | |||
| OICommon | showLoadingScreen | - | - | - | - | ロックスクリーンを表示する。 実行回数分だけカウンターがインクリメントされる。 ボタンなどのユーザーによる操作の処理でOIWorkflow.respond、OIWorkflow.startなどワークフローの処理を行う場合は、showLoadingScreenを実行して多重実行を防ぐ必要がある。 |
| OICommon | hideLoadingScreen | - | - | - | - | ロックスクリーンの表示を解除する。 実行回数分だけカウンターがデクリメントされ、カウンターが0で表示解除となる。 ロックスクリーンのまま画面操作ができなくなることを避けるため、try-finally節など使用して、エラー時でもhideLoadingScreenが必ず呼ばれる設定にする。 このメソッドを呼び出した際ロックスクリーンが表示されていない場合、このメソッドは画面に影響を与えず正常に終了する。 |
| OICommon | copyClipboard | string | - | data | クリップボードに貼り付ける文字列を指定する。 | クリップボードに指定した文字列を貼り付ける。 |
| OICommon | getLocation | - | - | - | - | 現在の文書の現在位置情報をWindow.location(ブラウザー組み込みのWeb API)で取得し、戻り値に以下をPromise<Object>型で設定する。
|
| OIStore | get | string | - | key | keyを指定する。 | keyに対応する値をPromise<any>で取得する。 値が設定されていない場合は Promise<undefined>を返却する。 keyがstring型ではない場合、TypeErrorになる。 |
| OIStore | set | string | - | key | keyを指定する。 | keyに対応する値を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 既に値が設定されている場合は上書きする。 keyがstring型ではない場合、TypeErrorになる。 |
| any | - | value | 設定する値を指定する。 | |||
| OIStore | delete | string | - | key | keyを指定する。 | keyに対応する値を削除する。 値が設定されていない場合はなにもしない。値が削除された場合はtrueを、削除されなかった場合はfalseをPromise<boolean>型で返却する。 削除が完了するまで待機するPromiseを返却する。 keyがstring型ではない場合、TypeErrorになる。 |
| OIStore | has | string | - | key | keyを指定する。 | keyに対応する値の有無を取得する。 値が設定されていればtrueを、設定されていなければfalseをPromise<boolean>型で返却する。 値の有無の取得が完了するまで待機するPromiseを返却する。 keyがstring型ではない場合、TypeErrorになる。 |
| OIUi | getContext | - | - | - | - | コンテキストの情報を取得し、戻り値に以下をPromise<Object>型で設定する。
|
| OIUi | getName | - | - | - | - | UI名を取得する。Promiseが解決されると、Promise<string>型でUI名を返却する。 |
| OIActionButton | setVisible | boolean | - | isVisible | "true"(表示)または"false"(非表示)を指定する。 | ボタンの表示、非表示を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| OIActionButton | setEnable | boolean | - | isEnable | "true"(活性)または"false"(非活性)を指定する。 | ボタンの活性、非活性を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| OIButton | setVisible | string | - | buttonName | ボタン一覧内の対象のボタン名 | ボタンの表示、非表示を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| boolean | - | isVisible | "true"(表示)または"false"(非表示)を指定する。 | |||
| OIButton | setEnable | string | - | buttonName | ボタン一覧内の対象のボタン名 | ボタンの活性、非活性を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| boolean | - | isEnable | "true"(活性)または"false"(非活性)を指定する。 | |||
| OITableDataSource | refresh | boolean | - | loading | ローディングアイコンの表示有無(省略時:表示なし) | データの再取得、およびデータソース使用箇所への取得データを反映する。完了するまで待機するPromise<undefined>を返却する。 |
| OITableDataSource | setAutorefreshSeconds | number | - | secondsValue | 自動リフレッシュ間隔(秒)を整数で指定する。 | 自動リフレッシュ間隔を設定する。完了するまで待機するPromise<undefined>を返却する。 |
| OITableDataSource | getParameter | string | - | paramName | 指定されたデータソース名のパラメータ名を指定する。 | 指定されたデータソース名のパラメータの設定をPromise<TableDataSourceParameter>型またはPromise<undefined>で取得する。指定されたparamNameに一致しない場合はPromise<undefined>を返却する。 |
| OITableDataSource | setParameter | string | - | paramName | 指定されたデータソース名のパラメータ名を指定する。 | 指定されたデータソース名のパラメータを設定する(指定されたパラメータが存在する場合は上書き、しない場合は作成する)。完了するまで待機するPromise<undefined>を返却する。 |
| TableDataSourceParameter | - | parameter | 更新するパラメータオブジェクトを指定する。 例: { type: ' fixed' , value: ' true' , } typeは' fixed' 、' query' 、' uipath' から指定、valueは文字列を指定する。またnull、undefinedも指定できる。 |
|||
| OITableDataSource | deleteParameter | string | - | paramName | 指定されたデータソース名のパラメータ名を指定する。 | 指定されたデータソース名のパラメータの構成を削除する。完了するまで待機するPromise<undefined>を返却する。 |
| OITableDataSource | update | boolean | - | options | 以下を指定する。
|
Tableデータソースによって参照されるリソースの更新を実行する。完了するまで待機するPromiseを返却する。 |
| OITableDataSource | create | Tableデータソースによって参照されるリソースの作成を実行する。完了するまで待機するPromiseを返却する。 | ||||
| OITableDataSource | delete | Tableデータソースによって参照されるリソースの削除を実行する。完了するまで待機するPromiseを返却する。 | ||||
| OIForm | setStatus | string | - | field | ステータスを設定する対象のフィールド名を指定する。 | フォームにあるフィールドのステータスを設定する。バリデーションエラーを出す機能があるフィールドタイプのみ対応。対象のフィールドに引数statusの値が反映されるまで待機するPromise<undefined>を返却する。 |
| string | - | status | ステータスを設定する。"error"を設定するとエラー状態となり、それ以外はエラー状態が解除される。 | |||
| OIForm | setHelperText | string | - | field | ヘルパーテキストを設定する対象のフィールド名を指定する。 | フォームのフィールドのヘルパーテキストを設定する。バリデーションエラーメッセージを出す機能があるフィールドタイプのみ対応。対象のフィールドに引数helperTextの値が反映されるまで待機するPromise<undefined>を返却する。 |
| string | - | helperText | ヘルパーテキストを設定する。 | |||
| OIForm | removeHelperText | string | - | field | ヘルパーテキストを削除するフィールドの名前を指定する。 | フォームのフィールドのヘルパーテキストを削除する。バリデーションエラーメッセージを出す機能があるフィールドタイプのみ対応。対象のフィールドからhelperTextの値が削除されるまで待機するPromise<undefined>を返却する。 |
| OIForm | getFieldValue | string | - | fieldName | フィールドの名前を指定する。 | フィールドの値を取得する。Promise<object>型で返却する。 |
| OIForm | getFieldValues | - | - | - | - | すべてのフィールドの値をPromise<object>型で返却する。 |
| OIForm | getFieldExtension | string | - | fieldName | フィールドの名前を指定する。 | フィールドの各種情報を取得する。Promise<object>型で返却する。 |
| OIForm | getFieldExtensions | - | - | - | - | すべてのフィールドの各種情報をPromise<object>型で返却する。 |
| OIForm | setFieldValue | string | - | fieldName | フィールドの名前を指定する。 | フィールドの値を設定する。対象のフィールドに引数 fieldValueの値が反映されるまで待機するPromise<undefined>を返却する。 |
| any | - | fieldValue | フィールドの値を指定する。 | |||
| OIForm | setFieldExtensions | string | - | fieldName | フィールドの名前を指定する。 | フィールドの各種情報を設定する。対象のフィールドに引数 extensions の値が反映されるまで待機するPromise<undefined>を返却する。 |
| object | - | extensions | フィールドの各種情報を指定する。 | |||
| OIForm | setFieldVisible | string | - | fieldName | フィールドの名前を指定する。 | フィールドの表示または非表示を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| boolean | - | visibility | フィールドの表示または非表示を指定する。 | |||
| OIForm | validate | - | - | - | - | Formのバリデーション結果をPromise<boolean>型で返却する。
|
| OIForm | setLookupLabelQuery | string | - | fieldName | 対象のフィールドの名前を指定する。 | 対象のlookupフィールドのlabelQueryを設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| string | - | value | lookupフィールドのlabelQueryの値を指定する。 | |||
| OIForm | getLookupLabelQuery | string | - | fieldName | 対象のフィールドの名前を指定する。 | 対象フィールドに設定されたlabelQueryを取得する。対象のフィールドがlookupフィールドではない場合、またはlabelQueryプロパティが省略されている場合はPromise<undefined>を返却する。 |
| OIForm | setEnable | boolean | - | isEnable | "true"(活性)または"false"(非活性)を指定する。 | 対象のフォームが活性または非活性を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| OIForm | setFieldEnable | string | - | fieldName | 対象のフィールドの名前を指定する。 | 対象のフィールドが活性または非活性を設定する。設定が完了するまで待機するPromise<undefined>を返却する。 |
| boolean | - | isEnable | "true"(活性)または"false"(非活性)を指定する。 | |||
| OIForm | getEnumValues | string | - | fieldName | 対象のフィールドの名前を指定する。 | Enum型のフィールドに設定されている選択肢を取得する。Enum型のフィールドが保持するオプションをPromise<EnumValue[]>型で返却する。 EnumValue型:string | { name: string, label?: string } フィールドがEnum型ではない場合は、Promise |
| OIForm | setEnumValues | string | - | fieldName | 対象のフィールドの名前を指定する。 | 対象のEnumフィールドにオプションが設定されるまで待機するPromise<undefined>型を返却する。 EnumValue型:string | { name: string, label?: string } フィールドがEnum型ではない場合は、何も設定されない。 |
| EnumValue[] | - | values | Enum型のフィールドに対し、任意の選択肢を設定する。 | |||
| OITable | setRows | object[] | - | rows | 行データを指定する。 | 設定が完了するまで待機するPromise<undefined>を返却する。 |
| OITable | addRows | object[] | - | rows | 末尾に追加する行データを指定する。 | 追加が完了するまで待機するPromise<undefined>を返却する。 |
| OITable | deleteRows | string[]|number[] | - | rowIds | 削除する行のIDの配列を指定する。 | 削除された行のデータをPromise<object[]>型の配列で返却する。1件削除された場合は要素数1の配列、0件の場合は空配列を返却する。 |
| OITable | getRows | - | - | - | - | 行データを取得する。テーブルの行データをPromise<object[]>型を返却する。 |
| OITable | getSelectedIds | - | - | - | - | 選択されている行のIDをPromise<(string|number)[]>型で返却する。 |
| OITable | setSelectedIds | string[]|number[] | - | rowIds | 選択行のIDを配列で指定する。 | 設定が完了するまでPromise<undefined>を返却する。指定されなかった行はすべて非選択状態になる。空配列が指定されたときはすべて選択を解除する。Tableコンポーネントのproperties.selection:が"radio"の場合は、配列の先頭のIDのみ反映する。 |
| OITable | getSelectedRows | - | - | - | - | テーブルの選択した行の全データを取得しPromise<object>型で返却する。 |
| OITabs | getTabs | - | - | - | - | インスタンスに属する全タブ情報の配列を取得する。UIのYAMLファイルの"type: tab"コンポーネントでvisibleプロパティがfalseのタブは配列に含まれない。戻り値はaddTab関数の引数と同じ型になる。 |
| OITabs | addTab | object | - | params | 追加するタブのパラメータを指定します。 | 指定したタブを追加する。追加が完了するまで待機するPromise<undefined>を返却する。 以下の場合TypeErrorとなる。
|
| string | - | params.name | 追加するタブの名前を指定します。この名前はUIのYAMLファイルのTabコンポーネントの名前を指定します。 | |||
| string | - | params.id | タブの内部IDを指定します。タブ内で一意の必要がある。省略すると自動的にIDが割り当てられる。 | |||
| string | - | params.label | タブのラベルを指定します。省略すると自動的にラベルが割り当てられる。 | |||
| boolean | - | params.visible | "true"(表示)または"false"(非表示)を指定する。デフォルトはtrue。 | |||
| string | - | params.queryParameter | タブがアクティブになったときに現在のURLに追加するクエリパラメータを"key=value"の形式で指定する。 | |||
| object | - | params.state | タブの状態を設定する。 | |||
| OITabs | activateTab | number | - | index | アクティブにするタブのインデックスを指定する。デフォルト値は0。 | 指定したタブをアクティブにします。indexが整数ではない場合、TypeErrorとなる。指定されたインデックスのタブのアクティブ設定が完了するまで待機するPromise<undefined>を返却する。 |
| OITabs | getActiveTab | - | - | - | - | アクティブなタブを取得する。アクティブなタブが0の場合Promise<undefined>を返却する。 |
| OITab | getForm | string | - | name | タブ上のフォームの名前を指定する。 | タブに対応するコンテンツに含まれるOIFormのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getTable | string | - | name | タブ上のテーブルの名前を指定する。 | タブに対応するコンテンツに含まれるOITableのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getTabs | string | - | name | タブ上のタブの名前を指定する。 | タブに対応するコンテンツに含まれOITabsのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getArticle | string | - | name | タブ上のアーティクルの名前を指定する。 | タブに対応するコンテンツに含まれるOIArticleのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getButton | string | - | name | タブ上のボタンの名前を指定する。 | タブに対応するコンテンツに含まれるOIButtonのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getAttachment | string | - | name | タブ上の添付ファイルの名前を指定する。 | タブに対応するコンテンツに含まれるOIAttachmentのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getCard | string | - | name | タブ上のCardの名前を指定する。 | タブに対応するコンテンツに含まれるOICardのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getTableDataSource | string | - | name | タブ上のデータソースの名前を指定する。 | タブに対応するコンテンツに含まれるOITableDataSourceのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OITab | getLabel | string | - | name | タブ上のラベルの名前を指定する。 | タブに対応するコンテンツに含まれるOILabelのインスタンスを取得する。nameが存在しない場合、TypeErrorになる。 |
| OIArticle | setAutorefreshSeconds | number | - | secondsValue | 自動リフレッシュ間隔(秒) | 自動リフレッシュ間隔を設定する。設定が完了するまで待機するPromise<undefined>を返却する。secondsValueが整数でない場合、TypeErrorになる。 |
| OIAttachment | saveFiles | - | - | - | - | 添付ファイルを保存する。保存が完了するまで待機するPromise<undefined>を返却する。secondsValueが整数でない場合、TypeErrorになる。 |
| OICard | setContent | string | - | content | 表示内容を指定する。 | 表示内容を設定する。設定が完了するまで待機するPromise<undefined>を返却する。secondsValueが整数でない場合、TypeErrorになる。nameが存在しない場合も、TypeErrorになる。 |
| OICard | setLink | string | - | link | リンク先を指定する。 | リンク先を設定する。設定が完了するまで待機するPromise<undefined>を返却する。secondsValueが整数でない場合、TypeErrorになる。nameが存在しない場合も、TypeErrorになる。 |
| OIPaper | setVisible | boolean | - | visibility | "true"(表示)または"false"(非表示)を指定する。 | Paperの表示または非表示を指定する。 |
| OILabel | setContent | string | - | content | ラベルの値を設定する。 | 設定が完了するまで待機するPromise<undefined>を返却する。 |
| OILabel | getContent | - | - | - | - | ラベルの値を取得しPromise<string>型で返却する。 |
<定義例>
async function handleCellClick(_, row) {
const ticketID = row.id;
const tabs = new OITabs('ticket_tabs');
const tabDetails = await tabs.getTabs();
const existingTicketTabIndex = tabDetails.findIndex(
(detail) => detail.id === ticketID,
);
if (existingTicketTabIndex !== -1) {
tabs.activateTab(existingTicketTabIndex);
} else {
tabs.addTab({
name: 'ticket_detail_tab',
id: ticketID,
label: row.number,
queryParameter: 'id=${ticketID}',
});
}
}