"text_input": { "title": "テキスト入力", "inputType": "textinput", "value": "フリーテキスト値", "info": "フリーテキストフィールド" }
"textarea_input": { "title": "テキストエリア", "inputType": "textarea", "value": "チェックしてください", "info": "エッセイのスペースが20%増えました。
maxValue
。"multiple_text_input": { "title": "複数のテキスト入力", "inputType": "multiple-text-input", "value": [ { "element": "Hello" }, { "element": "World" } ], "maxValue": 4, "info": "最大 4 つの値が許可されます" }
elements
特定の属性として使用して、ドロップダウン・オプションを表す匿名のJSO要素として目的の値を追加します。各要素には、名前と値が含まれている必要があります。"bluetooth_connect_mode": { "title": "接続モード", "inputType": "dropdown-input", "value": "search", "elements": [ { "name": "検索と検索", "value": "search" }, { "name": "スキャンコード", "value": "scan" } ], "showIfComputed": true, "info": "『検索と検索』は、使用可能なすべてのデバイスを検出し、タイプに応じてフィルタリングします。「コードスキャン」を使用すると、デバイスのMACアドレスまたは名前をスキャンできます。
maxValue
を選択して、選択できる値の最大数を定義しますelements
: ドロップダウン オプションを表す匿名の JSON 要素を追加します (各要素には名前と値が含まれている必要があります)。"multiple_dropdown_input": { "title": "複数のドロップダウン入力", "inputType": "multiple-dropdown-input", "value": [ { "name": "表示値" }, { "name": "表示値 2" }, ], "elements": [ { "name": "表示値" }, { "name": "表示値 2" }, { "name": "表示値 3" } ], "maxValue": 2 }
"checkbox_input": { "title": "チェックボックス入力", "inputType": "チェックボックス入力", "value": "true" }
"range": { "title": "読み取り範囲", "inputType": "range", "rangeMin": "1", "rangeMax": "20", "value": 15 }
"sensor_type": { "inputType": "file-upload", "title": "アイコン", "accept": "image/png", "multiple": false, "showIf": "root.Value_1.sensor_shown.value"、 "value": "xai:/ wf-editor / 2c639f9c-a3d5-4830-9e55-092fe98d92a4 / component_sensor_1563203048508_image001.png?version = 1"、 "showIfComputed":true }
"color": { "inputType": "color-input", "title": "カラーピッカー", "list": [ "#fcba03", "#1d6280" ], "showIfComputed": true, "value": "#fcba03" }
"headers": { "title": "HTTP ヘッダー", "inputType": "map-input", "placeholder": { "key": "ヘッダー名", "value": "ヘッダー値" }, "value": [{ "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ] }
マップ入力データを実際の Javascript マップに保存するには、次の方法に従います。
<setvar id="save_headers"> <context_of>workflow</context_of> <context_update>< param name="headers" type="object"><![CDATA[?{ var headers = { §{#each configuration.headers.value}§'§{key}§': '§{value}§',§{/each}§ }; headers }?]]></param> </context_update> </setvar です>
"datasource": { "noOptionsInfo": "データソースが見つかりません!", "title": "データソース", "inputType": "datasource-selection", "revisionSelection": true, "required": true, "info": "使用するデータソースを選択してください。", "value": null }
この構成は、通常、データ ソース アクションと組み合わせて使用されます。たとえば、現在のデータ ソース タスクの最初の行をコンテキストに保存し、必要に応じて行を操作し (データの抽出または変更)、変更した行をデータ ソース タスクに保存し直すことができます。
最初の行 ([0]
インデックス変数に置き換えることができます) をコンテキストに保存します。行の文字列バージョンを含む追加の変数はデバッグに便利ですが、省略できます。
<setvar id="row_to_context"> <context_of>root</context_of> <context_update> <param name="current_row" type="object">?{ context.ds_§{ replace validation.datasource.value.id '-' '' }§[0] }?</param> <param name="current_row_to_string" type="string"><![CDATA[?{JSON.stringify(context.current_row)}?]]></param>< /context_update> </setvar です>
データの抽出 (UI に表示するなど):
<setvar id="get_row_data"><context_of> workflow</context_of> <context_update>< param name="material" type="string"><![CDATA[ ?{ context.current_row.payload["材料名"].value }? ]]></param>< /context_update>< /setvar です>
データソースに存在するデータ列の変更:
<setvar id="set_counts"> <context_of>root</context_of> <context_update> <param name="current_row" type="object"><![CDATA[ ?{ context.current_row.payload["結果"].value = context.outcome; context.current_row.payload["ユーザーに割り当て"].value = appcontext.client.user.id; context.current_row.payload["割り当て名"].value = appcontext.task.name; context.current_row.payload["完了日"].value = new Date(Date.now()).toUTCString(); context.current_row.status = '完了'; context.current_row; }?]]></param> <param name="current_row_to_string" type="string"><![CDATA[?{JSON.stringify(context.current_row)}?]]></param> </context_update> </setvar です>
変更された行をデータ・ソース・タスクに反映する:
<update_datasource_task id="update_ds_with_row"> <param name="datasource_task_id" type="string">?{context.ds_§{ replace validation.datasource.value.id '-' '' }§_task.id}?</param> <param name="rows">#{current_row}</param> <param name="payload_variable_name">ds_§{ replace validation.datasource.value.id '-' '' }§</param>< /update_datasource_task>