拡張機能オプションは、拡張機能の開発者が定義する設定可能な項目です。これらのオプションは、ワークスペースごとに拡張機能の動作をカスタマイズします。たとえば、開発者はユーザーが SQL の長さ制限を制御できるオプションを定義でき、同じ拡張機能で異なるワークスペースに異なる制限を適用できます。
背景
拡張機能オプションは、拡張機能の登録時に開発者が定義します。その後、ユーザーは特定のワークスペース内でこれらのオプションを設定できます。
開発者が拡張機能を登録する方法の詳細については、「拡張機能の開発とデプロイ:セルフマネージドサービス方式」をご参照ください。
ワークスペースで拡張機能を使用する際、有効化する前にそのオプションを設定できます。[ワークスペース設定] > [拡張機能] ページでは、拡張ポイント、適用可能なモジュール、ステータスなどの詳細を含む登録済み拡張機能のリストを表示できます。[拡張機能スコープ] ドロップダウンリストから [グローバル] などのスコープを選択し、[操作] 列の [設定] をクリックして登録済みの拡張機能を設定します。
拡張機能の開発者は、GetOptionValueForProject API を呼び出して、特定のワークスペースの拡張機能に対してユーザー (ワークスペース管理者など) が設定した設定値を取得できます。
注意事項
拡張機能オプションの設定情報および関連テキストは、拡張機能の開発者が提供します。プラットフォームは、その内容に関連するいかなるリスクについても責任を負いません。
サポートされているコンポーネント
オプション設定は現在、7 種類のフォームコンポーネントをサポートしています:[テキスト] (静的テキスト表示用)、[単一行入力ボックス]、[複数行入力ボックス]、[単一選択ドロップダウンリスト]、[複数選択ドロップダウンリスト]、[チェックボックス] (opt1、opt2、opt3 などの複数オプションをサポート)、および [ラジオボタン] (複数オプションをサポートし、一部を無効にできます)。
オプション設定
拡張機能を登録する際、拡張機能開発者は [オプション設定] フィールドに、オプションを JSON 文字列として定義する必要があります。
{
"type": "object",
"properties": {
"コンポーネント名 (一意である必要があります)": {
"type": "string",
"title": "以下の表をご参照ください",
"x-decorator": "詳細については、「パラメーター」セクションをご参照ください",
"x-component": "詳細については、「パラメーター」セクションをご参照ください",
"x-decorator-props": {
"tooltip": "説明"
},
"x-component-props": {
"dataSource": "詳細については、「パラメーター」セクションをご参照ください",
"mode": "multiple"
}
}
}
}設定については、以下のリソースをご参照ください:
コンポーネントパラメーターの詳細については、「パラメーター」をご参照ください。
コンポーネントの設定例については、「例:SQL タスクの CU リソースしきい値の設定」および「例:7 つのコンポーネントタイプの使用」をご参照ください。
拡張機能の登録と管理の詳細については、「拡張機能の開発とデプロイ:セルフマネージドサービス方式」をご参照ください。
パラメーター
パラメーター | コンポーネントタイプ | 値 |
title | テキスト | コンポーネントのタイトル。 |
単一行入力ボックス | コンポーネントのタイトル。 | |
複数行入力ボックス | コンポーネントのタイトル。 | |
単一選択ドロップダウンリスト | コンポーネントのタイトル。 | |
複数選択ドロップダウンリスト | コンポーネントのタイトル。 | |
チェックボックス | コンポーネントのタイトル。 | |
ラジオボタン | コンポーネントのタイトル。 | |
x-decorator | テキスト | FormItem |
単一行入力ボックス | FormItem | |
複数行入力ボックス | FormItem | |
単一選択ドロップダウンリスト | FormItem | |
複数選択ドロップダウンリスト | FormItem | |
チェックボックス | FormItem | |
ラジオボタン | FormItem | |
x-component | テキスト | PreviewText.Input |
単一行入力ボックス | Input | |
複数行入力ボックス | Input.TextArea | |
単一選択ドロップダウンリスト | Select | |
複数選択ドロップダウンリスト | Select | |
チェックボックス | Checkbox.Group | |
ラジオボタン | Radio.Group | |
dataSource | テキスト | 任意 |
単一行入力ボックス | 任意 | |
複数行入力ボックス | 任意 | |
単一選択ドロップダウンリスト | データソースは、一意のオブジェクトの配列です。各オブジェクトには、 | |
複数選択ドロップダウンリスト | データソースは、一意のオブジェクトの配列です。各オブジェクトには、 | |
チェックボックス | データソースは、一意のオブジェクトの配列です。各オブジェクトには、 | |
ラジオボタン | データソースは、一意のオブジェクトの配列です。各オブジェクトには、 |
例:SQL タスクの CU しきい値の設定
次の例では、SQL タスクの CU リソースしきい値を設定する方法を示します。
[拡張機能の登録] フォームの [オプション設定] テキストエリアに JSON スキーマを入力すると、システムは [CU しきい値] 入力ボックスなど、対応するフォームコントロールを表示する [拡張機能オプション] ダイアログボックスを自動的に生成します。
次の JSON は、この設定を定義します:
{
"type": "object",
"properties": {
"cuNumber": {
"type": "string",
"title": "CU しきい値",
"x-decorator": "FormItem",
"x-component": "Input",
"x-decorator-props": {
"tooltip": "SQL タスクの CU 消費量のしきい値を入力します。"
}
}
}
}例:7 つのコンポーネントタイプの使用
次の例では、7 種類のコンポーネントタイプを設定して使用する方法を示します。
[拡張機能の登録] ダイアログボックスの [オプション設定] フィールドに JSON 設定を入力すると、[拡張機能オプション] ダイアログボックスに対応する 7 つのフォームコンポーネントがレンダリングされます。
次の JSON は、この設定を定義します:
7 つのコンポーネントすべてを一度に使用する場合は、次の JSON をコピーし、必要に応じてデータを変更できます。
{
"type":"object",
"properties":{
"text":{
"type":"string",
"title":"テキスト",
"x-decorator":"FormItem",
"x-component":"PreviewText.Input",
"x-decorator-props":{
"tooltip":"説明"
},
"default":"これはテキスト情報です"
},
"input":{
"type":"string",
"title":"単一行入力ボックス",
"x-decorator":"FormItem",
"x-component":"Input",
"x-decorator-props":{
"tooltip":"説明"
},
"x-component-props":{
},
"default":"これはデフォルト値です"
},
"textarea":{
"type":"string",
"title":"複数行入力ボックス",
"x-decorator":"FormItem",
"x-component":"Input.TextArea",
"x-decorator-props":{
"tooltip":"説明"
},
"x-component-props":{
},
"default":"これはデフォルト値です"
},
"select":{
"type":"string",
"title":"単一選択ドロップダウンリスト",
"x-decorator":"FormItem",
"x-component":"Select",
"x-decorator-props":{
"tooltip":"説明"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":"10002",
"label":"opt2"
},
{
"value":"10003",
"label":"opt3",
"disabled":true
}
]
},
"default":"10001"
},
"selectmore":{
"type":"array",
"title":"複数選択ドロップダウンリスト",
"x-decorator":"FormItem",
"x-component":"Select",
"x-decorator-props":{
"tooltip":"説明"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":"10002",
"label":"opt2"
},
{
"value":"10003",
"label":"opt3",
"disabled":true
}
],
"mode":"multiple"
},
"default":["10001","10002"]
},
"checkbox":{
"type":"array",
"title":"チェックボックス",
"x-decorator":"FormItem",
"x-component":"Checkbox.Group",
"x-decorator-props":{
"tooltip":"説明"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":"10002",
"label":"opt2"
},
{
"value":"10003",
"label":"opt3",
"disabled":true
}
],
"mode":"multiple"
},
"default":["10001","10002"]
},
"radio":{
"type":"number",
"title":"ラジオボタン",
"x-decorator":"FormItem",
"x-component":"Radio.Group",
"x-decorator-props":{
"tooltip":"説明"
},
"x-component-props":{
"dataSource":[
{
"value":10001,
"label":"opt1"
},
{
"value":10002,
"label":"opt2"
},
{
"value":10003,
"label":"opt3",
"disabled":true
}
]
},
"default":10001
}
}
}詳細については、「ベストプラクティス:MAX_PT 関数の使用禁止」をご参照ください。