期間ロック

指定した期間・対象者に該当するレコードを、編集も削除もできないようにする機能です。給与計算後の勤怠データや、経理締め後の伝票など、「確定した過去データを誰にも触らせたくない」場面で使います。 「アプリ設定」→「期間ロック」から設定します。

動作イメージ

ロックルールの一覧

期間 / 対象種別

2026/07/01 〜 2026/07/31

対象日 / アプリ全体

手動

2026/08/01 〜 2026/08/31

対象日 / 従業員: 山田 太郎

連動

ロックされた期間・対象に該当するレコードは、編集フォームを開いたり削除しようとしたりするとエラーになり保存できません。一覧表示や詳細の閲覧は制限されません(見るだけなら誰でもいつでも可能です)。

ロックルールの内容

1件のルールは、以下の内容で構成されます。

項目
対象の日付フィールド
内容
このアプリの「日付」型フィールド、または基準タイプが日付の範囲型フィールドから選びます。年のみ・年月のみの入力方式のフィールドは、期間の絞り込みが成立しないため選択できません
項目
期間(開始日・終了日)
内容
ロックする期間です。開始日・終了日の当日も含まれます(境界を含む)。対象の日付フィールドが空のレコードはロック対象になりません
項目
対象者(任意)
内容
ユーザー選択/組織選択/グループ選択のいずれかのフィールドと値を指定すると、その値に一致するレコードだけが対象になります。指定しなければ、期間に該当するアプリ全体のレコードが対象です
  • 1つのアプリに登録できるルールは最大50件です
  • 期間・対象者の異なるルールを複数登録すれば、複数の締め期間を並行して管理できます
  • 対象の日付フィールドに範囲型フィールドを指定した場合、判定は値の一致ではなく重なりで行われます。レコードの範囲(開始〜終了)がロック期間と少しでも重なればロック対象になります(境界を含む)。終了未定(開区間)の範囲は、開始日以降ずっとロック対象になります

境界日の扱い

開始日・終了日はどちらもロック期間に含まれます。たとえば「2026/07/01 〜 2026/07/31」のルールでは、7月1日と7月31日のレコードもロック対象です。

アプリ管理者を含め、誰も編集・削除できません

ロック対象レコードを開いたときの表示(イメージ)

この期間はロックされています。解除するにはアプリ管理者に連絡してください

レコードのアクセス権(権限設定)は、アプリ管理者であれば通常バイパスできますが、期間ロックは異なります。アプリ管理者・テナント管理者を含め、誰であってもロック対象のレコードを編集・削除することはできません。ロックを外すには、後述のルール自体を削除する必要があります。

ルールの追加・削除はアプリ管理者のみ

ロックルールの追加・削除ができるのは、そのアプリの管理者(作成者、または管理者権限を付与されたメンバー)だけです。一般メンバーはルールの一覧を閲覧できますが、追加・削除はできません。

連動ロック(後述)によって自動生成されたルールも、手動で追加したルールと同じ画面から削除できます。生成元のワークフローのレコードが削除されている場合(連動元が不明になった「孤児」ロック)でも、一覧には残るためアプリ管理者が削除できます。

ワークフローの締め連動

ワークフロー設定「連動ロック」(イメージ)

ステータス「締め済み」に到達したら
「日次勤怠」の「対象日」をロック
対象月・対象者は「対象月」「従業員」フィールドの値から自動決定

ワークフローのステータス設定では、「このステータスに到達したら、別のアプリの指定期間を自動でロックする」という連動ルールを定義できます(1ステータスにつき最大3件)。手動でルールを作らなくても、月次サマリの「締め」操作だけで、対象月の日次データを一括ロックできます。

  • ロックする期間は、遷移したレコード自身の日付・月・期間フィールドの値から自動的に決まります(「対象月」1フィールドから期間を算出する方式、単一の日付フィールドを使う方式、開始日・終了日の2フィールドを使う方式の3種類)
  • 「対象月」1フィールド方式の場合、算出される期間はロック対象アプリの休日カレンダーの「月の区切り日」に従います。既定(末日)のままなら従来どおり月初〜月末です
  • 対象者を絞り込む場合は、遷移したレコードのユーザー選択などのフィールド値がそのまま対象アプリ側の対象者条件になります
  • 差し戻しで自動的に解除されます。連動ロックを生成したステータスから離れる遷移が起きると、その遷移が作ったロックだけが対称的に削除されます(手動で作ったルールや、他の遷移が作ったロックには影響しません)
  • ロックを生成する設定を持つステータスに締め後に新しく作られたレコード(転記アクションや打刻の追加分など)も、期間・対象者の条件に該当すれば同じくロック対象になります
  • 連動ロックが生成できなかった場合(期間や対象者の値が導出できない等)は、ロックを作らずスキップします。全社のデータが意図せず凍結されることを避けるための挙動です

設定方法の詳細は「ワークフロー」マニュアルの「連動ロック」の節を参照してください。

締め日が月末でない場合は「月の区切り日」を設定してください

「対象月」1フィールド方式の連動ロックは、既定では暦月(1日〜末日)をロックします。しかし給与でも請求でも、締め日が月末でない運用(20日締め・15日締めなど)は一般的です。 この場合、月の区切り日を設定しないと、締めたときにロックされる期間が実際に確定した期間と逆転します。

たとえば20日締めで「2026年8月分」を締めた場合、実際に確定した期間は2026-07-21〜2026-08-20です。月の区切り日を設定していないと、以下のように本来と逆の範囲がロック・開放されてしまいます。

期間
2026-07-21 〜 07-31
実際の状態
支払済み(確定済み)
月の区切り日を設定していない場合
ロックされない(書き換え可能なまま残る)
期間
2026-08-01 〜 08-20
実際の状態
支払済み(確定済み)
月の区切り日を設定していない場合
ロックされる(正しい)
期間
2026-08-21 〜 08-31
実際の状態
未確定(翌月分)
月の区切り日を設定していない場合
ロックされる(まだ直せるはずが編集できなくなる)

これを避けるには、ロック対象アプリ休日カレンダー(「設定 > 休日カレンダー」の「月の区切り日」)に実際の締め日を設定してください。設定すると、「対象月」方式の連動ロックが算出する期間は月次集計の月バケットと同じ区切りで動くようになります(既定の末日のままであれば、これまでどおり暦月のままで何も変わりません)。

連動ロックは「集計元アプリ=ロック対象アプリ」という構成を前提にしています。集計に使ったアプリと異なるアプリをロックする構成を使う場合は、両アプリの「月の区切り日」が一致していることを利用者側で確認してください(一致していない場合の食い違いは自動検出されません)。

一括ステータス付替では発動しません

ワークフロー設定の「既存レコードの移行」(ドロップダウン/ラジオボタンのフィールドとワークフローを相互移行する機能)でステータスを一括付替した場合、連動ロックの生成・解除は行われません。この移行は既存データの一括変換であり、通常の遷移操作(承認・差し戻し等)とは別の扱いです。移行後に締めが必要な場合は、対象レコードで通常のワークフロー遷移を行うか、手動でロックルールを追加してください。

すべての書き込み経路に適用されます

期間ロックは、レコードの編集画面からの保存だけでなく、以下を含むすべての更新・削除経路で判定されます。ロック対象のレコードに対しては、いずれの経路でも書き込みが拒否されます。

  • レコードの新規作成・編集・削除(通常の画面、一覧のインライン編集)
  • 一括更新・一括削除、CSVインポート
  • APIトークン経由のREST API
  • データパイプラインによる自動書き込み(対象レコードはスキップされ、スキップ件数が実行結果に表示されます)
  • アクション(転記アクション・アクションウィジェットの打刻等)、公開フォームからの登録、バーコード/QRコードのスキャン、ゴミ箱からの復元

一方で、閲覧は制限されません。一覧・詳細・検索・エクスポートなど、データを読み取るだけの操作はロックの影響を受けません。また、集計値の自動再計算(サブテーブル集計・ルックアップの参照コピー更新など、システムが整合性維持のために行う派生値の書き換え)は、元となる編集操作そのものが既にロックで拒否されるため、ロックの対象外です。

使用例

例1: 給与計算後の勤怠データを固定する(手動)

  • 対象の日付フィールド: 「日付」
  • 期間: 給与計算対象月の初日〜末日
  • 対象者: 指定なし(アプリ全体)

例2: 月次サマリの締めと連動して日次勤怠を自動ロック(連動)

  • ワークフローのステータス「締め済み」に連動ロックを設定
  • 対象アプリ: 「日次勤怠」、対象の日付フィールド: 「日付」
  • 期間: 月次サマリの「対象月」フィールドから自動算出
  • 対象者: 月次サマリの「従業員」フィールドの値と一致する行のみ

例3: 特定の担当者の退職月だけをロックする(手動)

  • 対象の日付フィールド: 「対応日」
  • 期間: 退職月の初日〜末日
  • 対象者: 「担当者」フィールド = 該当メンバー

ヒント

  • ロックを一時的に外して修正したい場合は、ルールを削除してから編集し、必要であれば同じ内容でルールを作り直してください(部分的な解除はできません)
  • 対象者条件を使う場合、フィールドと値は必ずセットで指定します。値を指定しないと保存できません
  • 連動ロックの一覧には「連動」バッジが表示され、生成元のアプリ名・レコード番号をカーソルオーバーで確認できます(生成元が削除済みの場合は由来不明として表示されます)
  • ロックがかかっているのに編集できてしまう/逆に想定外にロックされる場合は、対象の日付フィールドの入力方式(年のみ・年月のみではないか)と、対象者フィールドの型を確認してください