業務ロジック業務ロジックをデバッグする業務ロジック実行時のエラーを確認するExcelファイルの内容をフォームに取り込むPDF出力ローコード開発Tips業務ロジックExcelファイルの内容をフォームに取り込む目次Excelファイルの内容をフォームに取り込むこのページでは、Excelファイルをアップロードし、その内容をフォーム上の項目に取り込む方法を紹介します。析し、その内容をフォーム上の対応する項目の入力データとして利用できます。以下の流れで設定を行います。アプリケーション管理者」ロールを持つユーザで実施してください。以下の完成サンプルをダウンロードしてご活用ください。「Webデータベース一覧」からアプリケーション一覧画面を表示します。インポート画面を表示します。インポート画面からインポートします。URLへアクセスし、アプリ実行画面を表示します。excel.xlsxのファイルをダウンロードし、ダウンロードしたファイルを「ファイルアップロード」アイテムからアップロードします。「Excel取り込み」ボタンをクリックすることでExcelファイルの内容をフォーム上に取り込むことが可能です。フォームを作成する​アクション設定「業務ロジック」を利用して「ボタン(イベント)」のクリックイベントに対してロジックフローを呼び出すフォームを作成します。「ファイルアップロード」アイテムと「ボタン(イベント)」アイテムをフォームに配置します。1つのExcelファイルのアップロードを想定するため、「ファイルアップロード」アイテムのプロパティに以下を設定します。xlsxフォームのツールバーから「アクション設定」をクリックし、イベント設定ダイアログを表示します。「アイテムイベント」タブから「ボタン(イベント)」のクリックイベントに対する設定を追加します。追加したイベントの「設定」アイコンをクリックし、アクション設定ダイアログを表示します。アクション「業務ロジック」を追加し、追加したアクションの「設定」アイコンをクリックします。ロジックフローのひな形が生成され、ロジックフローの編集画面が表示されます。続いて、「ボタン(イベント)」のクリックイベントから呼び出されるロジックフローの処理内容を作成します。ロジックフローの処理内容の大まかな流れは以下のとおりです。「ファイルアップロード」アイテムにアップロードされたExcelファイルのデータを取得します。取得したExcelファイルのデータをストレージへ書き出します。ストレージ上のExcelファイルに対してExcel入力定義タスクを実行し、Excelファイルの内容を解析して各セルに入力された値を取得します。取得したセルの入力値を返却します。図:作成する業務ロジック以下のタスクを使用します。以下のユーザ定義タスクを使用します。「ファイルアップロード」アイテムにアップロードされたExcelファイルのデータを取得する処理を作成します。複雑ですが、2つの「ファイルアップロード情報取得」タスクを呼び出してファイルのデータを取得する必要があります。1つ目の「ファイルアップロード情報取得」タスクでは、対象の「ファイルアップロード」アイテムにアップロードされたファイルのID情報(fileId)を取得します。2つ目の「ファイルアップロード情報取得」タスクでは1つ目のタスクで取得したファイルのID情報(fileId)をもとにファイルのデータを取得します。以下のようにタスクを配置します。「ファイルアップロード情報取得」タスクは、パレットのカテゴリ「IM-BIS」から配置します。「分岐」タスクは、パレットのカテゴリ「基本」から配置します。1つ目の「ファイルアップロード情報取得」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。表示中のフォームとフォーム上の「ファイルアップロード」アイテムの情報を指定し、「ファイルアップロード」アイテムにアップロードされたファイルのメタデータを取得します。「アイテム識別ID」を指定します。「分岐」タスクをクリックし、タスク固有設定のパネルを表示します。条件式に${sizeOf(im_bisFileUpload1)==1}を設定します。アップロード済みのファイルがあるかどうかをチェックし、ファイルがあれば、後続の処理に遷移させます。ファイルがなければ終了タスクに遷移させます。2つ目の「ファイルアップロード情報取得」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。1つ目のタスクで取得したファイルのメタデータ(fileId)を指定してファイルのデータを取得します。「ファイルアップロード情報取得」タスクを利用して取得したExcelファイルのデータをストレージに書き出す処理を作成します。「セッションストレージ取得」タスクを利用してファイルを書き出すセッションスコープストレージを取得します。取得したセッションスコープストレージに対して「ストレージ出力(バイナリ)」タスクを利用してExcelファイルのデータを書き出します。以下のようにタスクを配置します。「セッションストレージ取得」タスクと「ストレージ出力(バイナリ)」タスクのどちらもパレットのカテゴリ「ストレージ操作」から配置します。「セッションストレージ取得」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。「identifier」関数を利用して一意なIDを生成し、こちらのIDのパスを指定してセッションスコープストレージを取得します。im_sessionStorage1<string>「ストレージ出力(バイナリ)」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。取得したセッションスコープストレージを書き出し先のストレージとして指定します。取得済みのExcelファイルのデータを書き出し対象のバイナリデータとして指定します。storage<storage>ストレージ上のExcelファイルの解析​ユーザ定義「Excel入力定義」を利用してExcelファイルから指定したセルの入力値を取得する処理を作成します。パレット「ユーザ定義追加」から「Excel入力定義」を追加し、Excel入力定義編集画面を表示します。Excel入力定義編集画面にて解析対象のExcelファイルに対して入力値の取得対象のセルの情報を設定し、ユーザ定義を登録します。単項目のセルについては、セル入力定義にて対象のセルの位置を指定します。対象のセルの範囲を指定します。登録したユーザ定義タスクをパレットから配置し、配置されたユーザ定義タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。取得済みのセッションスコープストレージを解析対象のExcelファイルとして指定します。取得したセルの入力値の返却​ユーザ定義「Excel入力定義」を利用して取得した各セルの入力値を出力し、フォームへ返却します。Excelのセルから取得した入力値が存在するかをチェックし、存在すればフォームへの返却を行う終了タスクに遷移させます。入力値が存在しなければエラーメッセージを返却する終了タスクに遷移させます。以下のようにタスクを配置します。「ファイルおよびディレクトリの削除」タスクは、パレットのカテゴリ「ストレージ操作」から配置します。「分岐」タスクは、パレットのカテゴリ「基本」から配置します。「終了」タスクは、パレットのカテゴリ「基本」から配置します。「ファイルおよびディレクトリの削除」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。不要になったセッションスコープストレージ上のファイルを削除します。im_removeStorage1<storage>「分岐」タスクをクリックし、タスク固有設定のパネルを表示します。条件式に${parse_excel_file1.address!=null&&sizeOf(parse_excel_file1.route)!=0}を設定します。Excelのセルから取得した入力値が存在するかをチェックし、存在すればフォームへの返却を行う終了タスクに遷移させます。入力値が存在しなければエラーメッセージを返却する終了タスクに遷移させます。parse_excel_file1はユーザ定義「Excel入力定義」から作成したユーザ定義タスクのIDになります。1つ目の「終了」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。Excelのセルから取得した入力値をフォーム上の項目に返却します。通知設定に成功メッセージを表示するように設定します。t1<object[]>2つ目の「終了」タスクをダブルクリックし、マッピング画面を表示します。以下のようにマッピングを行います。通知設定にエラーメッセージを表示するように設定します。imfrMessage<string>これで作成手順は全て完了です。作成したフォームの操作方法は「完成サンプル」を参照してください。CORPORATION。