添付ファイルフィールドにセットされているすべてのファイルを1つのzipファイルにまとめて、ユーザーのブラウザーでダウンロードします。
この「やること」を実行すると、「添付ファイルをダウンロード中…」というダイアログが表示されて、ダウンロードが始まります。ダウンロードが完了すると「添付ファイルをダウンロード中…」ダイアログは閉じられて、ブラウザー標準のダウンロードでダウンロードされます。
ダウンロードされるzipファイルは無圧縮状態となります。
zipファイル内のフォルダー階層は「zipファイル内の階層」で設定可能ですが、初期設定の場合は以下のようなフォルダー階層になります。
同じフォルダー内でファイル名が重複した場合、ファイル名の末尾に(2)(3)…といった連番がつけられます。
どのレコードにも添付ファイルが1つも添付されていなかった場合、「添付ファイルがひとつもありませんのでzipファイルはダウンロードされませんでした。」というエラーになり、ダウンロードは行われません。
「レコード」「添付ファイルフィールド」「zipファイル名」「zipファイル内の階層」を設定します。
ダウンロードしたい添付ファイルを持っているレコードを取得したアクションを選択します。
このパラメーターは省略可能です。省略した場合は現在の画面のレコードが対象になります。例えば詳細画面ならばその画面で表示しているレコード、一覧画面ならば一覧に表示されているすべてのレコードが対象になります。
実行時にレコードが1行もなかった場合はエラーになります。
zipファイルに含める添付ファイルフィールドを「レコード」のアプリから選びます。複数選択可能ですが、順序は指定できません。
添付ファイルフィールドのみ選択可能です。
テーブル内のフィールドも選択可能です。テーブル内のフィールドを指定した場合、そのテーブル内のすべての行の添付ファイルがzipファイルに入ります。
ダウンロードするときのファイル名です。
初期値は「添付ファイル_${format(now(), ‘YYYYMMDDHHmmss’)}.zip」となっています。この後半の部分にある ${format…} はアクション実行時の日時をファイル名につける、という意味になります。日時をファイル名につけたくない場合は、この部分を削っても構いません。
標準では「使い方」で説明した通りのフォルダー階層となりますが、異なる階層構造にしたい場合に、このパラメーターを設定します。
このパラメーターでは式が使えますが、通常の式と異なります。式中のフィールドコード記述は、現在の画面のレコードではなく「レコード」パラメーターで指定したレコードのフィールドを参照します。
例)
${申請月}/${申請者.code}
上記例では、添付ファイルの入っていたレコードの「申請月」フィールドと「申請者」フィールドの code 値をもとにフォルダーを作成します。
例えば 2026年10月の suzuki さんの添付ファイルは 202610/suzuki に格納されます。
この式では、以下の特殊な値が使えます。
$id … 保存対象の添付ファイルが入っているレコードのID$field … 保存対象の添付ファイルが入っているフィールドのフィールドコード$tableRow … 保存対象の添付ファイルが入っているフィールドがテーブル内フィールドだった場合、その行番号
$tableRow は空文字列になります。式を使用せずに固定値にもできますが、その場合はすべての添付ファイルがその固定フォルダー内に配置されます。
このパラメーターを空にした場合は「使い方」で説明した階層構造になります。設定方法がよくわからない場合は、初期状態のままにするか、空にしておくことを推奨します。
レコード追加画面、レコード編集画面では使用できません。
「添付ファイルをダウンロード中…」は画面操作を行うことができません。
ダウンロードできるファイルサイズや数の上限は、ユーザーのPC・スマートフォンの処理能力に依存します。処理能力を超えた場合に出るエラーの内容は、ブラウザーに依存します。エラーが出る場合、ダウンロードするサイズや数を減らしてください。