IM-FormaDesigner for Accel Platform プログラミングガイド 第16版 2023-10-01

13.2. JavaEE開発モデル

ここでは、ファイルアップロードアイテムAPI(JavaEE開発モデル)の基本的な利用方法を説明します。
APIのインタフェース情報については「 IM-FormaDesigner for Accel Platform APIドキュメント(JavaEE開発モデル) 」を参照してください。

注意

この章では、IM-FormaDesigner の API を利用した場合のサンプルコードを掲載しています。

13.2.1. コンストラクタ

  • コンストラクタ

    • FormaFileUploadItemManager(String applicationId)

    • パラメータ

      applicationId アプリケーションID

13.2.2. ファイル登録処理の実装

注意

アプリケーションデータの登録、更新、削除などデータの操作が完了した時点で、ファイル登録が確定します。
データ操作完了までは、一時保存の状態です。

13.2.2.1. パラメータ

ファイル登録処理APIを実行するには、ファイル情報、ユーザデータID、およびプロセスキーの3つのパラメータが必要です。
  • パラメータ(ファイル情報)

    登録するファイルの情報です。下記は必須項目です。
    パラメータ(ファイル情報)
    パラメータ 説明
    ファイル 登録するファイルの実体を、InputStreamで指定します。
    ファイル名 登録するファイル名を指定します。
    アイテム識別ID
    登録する画面アイテム「ファイルアップロード」の
    アイテム識別IDを指定します。
    // パラメータ(ファイル情報)の作成
    final List<FormaFileUpload> fileUploadItems = new ArrayList<FormaFileUpload>();
    final FormaFileUpload fileUploadItem = new FormaFileUpload();
    final PublicStorage ps = new PublicStorage("sample/sampleFile.txt");
    fileUploadItem.setFile(ps.open());
    fileUploadItem.setFileName("sampleFile.txt");
    fileUploadItem.setUploadItemId("attach_fileupload_item1");
    fileUploadItems.add(fileUploadItem);
    

  • パラメータ(ユーザデータID)

    作成したアプリケーションデータを一意に識別できるID情報です。
    この項目は、必須項目です。

  • パラメータ(プロセスキー)

    プロセスキーです。
    この項目は、必須項目です。

13.2.2.2. ファイル登録処理を実装する

例として、後処理プログラム内でファイル登録処理に必要なパラメータを作成します。
アプリケーションIDを指定して、ファイルアップロードアイテムAPIのインスタンスを作成します。
作成したファイルアップロードアイテムAPIのファイル登録処理メソッドにパラメータを指定して、実行します。
public void regist(final PostProcessParameter formaParam, final Map<String, Object> sendParam) throws Exception {
    final FormaFileUploadItemManager manager = new FormaFileUploadItemManager(formaParam.getApplicationId());

    // パラメータ(ファイル情報)の作成
    final List<FormaFileUpload> fileUploadItems = new ArrayList<FormaFileUpload>();
    final FormaFileUpload fileUploadItem = new FormaFileUpload();
    final PublicStorage ps = new PublicStorage("sample/sampleFile.txt");
    fileUploadItem.setFile(ps.open());
    fileUploadItem.setFileName("sampleFile.txt");
    fileUploadItem.setUploadItemId("attach_fileupload_item1");
    fileUploadItems.add(fileUploadItem);

    // 登録処理の実行
    manager.registerFileTemp(fileUploadItems, formaParam.getInsertId(), formaParam.getProcessKey());
}

13.2.2.3. 戻り値

戻り値はありません。
  • エラー時は jp.co.intra_mart.foundation.forma.exception.FormaSystemException クラス、または jp.co.intra_mart.foundation.forma.exception.FormaApplicationException クラスがスローされます。

13.2.3. ファイル削除処理の実装

注意

アプリケーションデータの登録、更新、削除などデータの操作が完了した時点で、ファイル削除が確定します。
データ操作完了までは、一時保存の状態です。

13.2.3.1. パラメータ

ファイル削除処理を実行するには、ユーザデータID、アイテム識別ID、ファイルID、およびプロセスキーの4つのパラメータが必要です。
  • パラメータ(ユーザデータID)

    作成したアプリケーションデータを一意に識別できるID情報です。
    この項目は、必須項目です。

  • パラメータ(アイテム識別ID)

    アップロードしたファイルを画面アイテムと関連付けるためのIDです。
    この項目は、必須項目です。

  • パラメータ(ファイルID)

    登録したファイルを一意に識別できるID情報です。
    この項目は、必須項目です。

  • パラメータ(プロセスキー)

    プロセスキーです。
    この項目は、必須項目です。

13.2.3.2. ファイル削除処理を実装する

例として、後処理プログラム内でファイル削除処理に必要なパラメータを作成します。
アプリケーションIDを指定して、ファイルアップロードアイテムAPIのインスタンスを作成します。
作成したファイルアップロードアイテムAPIのファイル削除処理メソッドにパラメータを指定して、実行します。
public void regist(final PostProcessParameter formaParam, final Map<String, Object> sendParam) throws Exception {
    final FormaFileUploadItemManager manager = new FormaFileUploadItemManager(formaParam.getApplicationId());
    boolean resultFlg = manager.deleteFile(formaParam.getInsertId(), "attach_fileupload_item1", "fileId", formaParam.getProcessKey());
}

注意

ファイルIDは、ファイル情報取得処理の実装から取得することが可能です。

13.2.3.3. 戻り値

boolean 型のファイル削除結果が、戻り値として返却されます。以下の情報が取得できます。
戻り値
パラメータ 説明
ファイル削除結果 正しく削除された場合はtrue、そうでない場合はfalseが返却されます。
  • エラー時は jp.co.intra_mart.foundation.forma.exception.FormaSystemException クラスがスローされます。

13.2.4. ファイル情報取得処理の実装

13.2.4.1. パラメータ

ファイル情報取得処理を実行するには、ユーザデータIDが必要です。
プロセスキーを指定した場合、登録済みのファイル情報とセッションに保存されている一時保存状態のファイル情報を取得できます。
プロセスキーを指定していない場合、登録済みのファイル情報以外は取得できません。
  • パラメータ(ユーザデータID)

    作成したアプリケーションデータを一意に識別できるID情報です。
    この項目は、必須項目です。

  • パラメータ(プロセスキー)

    プロセスキーです。

13.2.4.2. ファイル情報取得処理を実装する

例として、後処理プログラム内でファイル情報取得処理に必要なパラメータを作成します。
アプリケーションIDを指定して、ファイルアップロードアイテムAPIのインスタンスを作成します。
作成したファイルアップロードアイテムAPIのファイル情報取得処理メソッドにパラメータを指定して、実行します。
public void regist(final PostProcessParameter formaParam, final Map<String, Object> sendParam) throws Exception {
    final FormaFileUploadItemManager manager = new FormaFileUploadItemManager(formaParam.getApplicationId());
    Map<String, List<FileUploadFileInfoModel>> result = manager.getFilesInfo(formaParam.getInsertId(), formaParam.getProcessKey());
}

13.2.4.3. 戻り値

ファイル情報マップ が、戻り値として返却されます。
以下の情報が取得できます。
ファイルの実体を取得する場合は、ファイル取得処理の実装を利用してください。
ファイル情報マップ
 
フィールド識別ID
(String)
ファイル情報リスト(List<FileUploadFileInfoModel>)
fileId
(String)
ファイルID
fileName
(String)
ファイル名
notes
(String)
備考
uploadItemId
(String)
アイテム識別ID
recordDate
(Date)
最終更新日
recordUserCd
(String)
更新ユーザコード
createDate
(Date)
作成日
createUserCd
(String)
登録ユーザコード
status
(String)
ステータス

13.2.5. ファイル取得処理の実装

13.2.5.1. パラメータ

ファイル取得処理を実行するには、ユーザデータID、ファイルIDの2つのパラメータが必要です。
プロセスキーを指定した場合、登録済みのファイル情報とセッションに保存されている一時保存状態のファイル情報を取得できます。
プロセスキーを指定していない場合は、登録済みのファイル情報以外は取得できません。
  • パラメータ(ユーザデータID)

    作成したアプリケーションデータを一意に識別できるID情報です。
    この項目は、必須項目です。

  • パラメータ(ファイルID)

    登録したファイルを一意に識別できるID情報です。
    この項目は、必須項目です。

  • パラメータ(プロセスキー)

    プロセスキーです。

13.2.5.2. ファイル情報取得処理を実装する

例として、後処理プログラム内でファイル情報取得処理に必要なパラメータを作成します。
アプリケーションIDを指定して、ファイルアップロードアイテムAPIのインスタンスを作成します。
作成したファイルアップロードアイテムAPIのファイル情報取得処理メソッドにパラメータを指定して、実行します。
public void regist(final PostProcessParameter formaParam, final Map<String, Object> sendParam) throws Exception {
    final FormaFileUploadItemManager manager = new FormaFileUploadItemManager(formaParam.getApplicationId());
    FileUploadFileInfoModel result = manager.getFile(formaParam.getInsertId(), "fileId", formaParam.getProcessKey());
}

注意

ファイルIDは、ファイル情報取得処理の実装から取得することが可能です。

注意

プロセスキーは「 前処理 」、「 後処理 」、「 入力チェックプログラム 」のパラメータからのみ
取得することが可能です。

13.2.5.3. 戻り値

ファイル情報マップ が、戻り値として返却されます。以下の情報が取得できます。
ファイル情報マップ(FileUploadFileInfoModel)
file
(InputStream)
ファイルデータ
fileId
(String)
ファイルID
fileName
(String)
ファイル名
notes
(String)
備考
uploadItemId
(String)
アイテム識別ID
recordDate
(Date)
最終更新日
recordUserCd
(String)
更新ユーザコード
createDate
(Date)
作成日
createUserCd
(String)
登録ユーザコード
status
(String)
ステータス