レコード一覧イベント

フォローする

Index

イベント

イベント発生時に実行できる操作

その他

イベント


レコード一覧画面の表示後イベント

レコード一覧画面を表示するときに発生するイベントです。

  • PC用とスマートフォン用で利用できます。
  • スペースに貼りつけたアプリには利用できません。

関数(PC用)

app.record.index.show

発生するタイミング(PC用)

  • レコード一覧画面の表示時
  • レコード一覧画面でページ送りした時
  • レコード一覧画面でソートの並び替えをした時
  • レコード一覧画面の絞り込み条件を適用した時

eventオブジェクトのプロパティ(PC用)

プロパティ名 説明
appId 数値 アプリID
viewType 文字列 'list' または 'calendar' または 'custom'
viewId 数値 ビューID
viewName 文字列 ビュー名
records 配列
または
オブジェクト
viewType が list の場合はレコードオブジェクトの配列。 viewType が calendar の場合はキーを日付文字列、値をレコードオブジェクトの配列としたオブジェクト。例)
{
    "2013-12-01": [record1, record2],
    "2013-12-20": [record1]
}
offset 数値 一覧のオフセット数(viewTypeが'calendar'の場合は null)
size 数値 一覧のレコード数(viewTypeが'calendar'の場合は null)
date 文字列 カレンダービューの表示月。2013年 6月なら "2013-06" (viewTypeが'calendar'以外の場合は  null )

関数(スマートフォン用)

mobile.app.record.index.show

発生するタイミング(スマートフォン用)

  • レコード一覧画面の表示時

eventオブジェクトのプロパティ(スマートフォン用)

プロパティ名 説明
appId 数値 アプリID
viewId 数値 ビューID
viewName 文字列 ビュー名

レコード一覧画面のインライン編集の保存実行前イベント

レコード一覧画面でインライン編集の保存ボタンをクリックしたあとに発生するイベントです。

  • PC用のみで利用できるイベントです。
  • スペースに貼りつけたアプリでは発生しません。
  • kintone.Promiseオブジェクトをreturnすると、非同期処理の実行を待ってイベントの処理を開始します。

関数

app.record.index.edit.submit

eventオブジェクトのプロパティ

プロパティ名 説明
appId 数値 アプリID
recordId 数値 レコードID
record オブジェクト ユーザー入力のデータを保持したレコードオブジェクト

フィールドの値に応じた制御

非同期処理の実行を待ってフィールドの値に応じた制御を行う

kintone.Promiseオブジェクトをreturnすることにより、非同期処理の実行を待ってからフィールドの値に応じた制御を実行することができます。
記述方法はレコード追加画面の保存実行前イベントを参考にしてください。

レコード一覧画面のインライン編集の保存成功後イベント

レコード一覧画面のインライン編集の保存がサーバー側で成功した後に発生します。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリでは利用できません。
  • kintone.Promiseオブジェクトをreturnすると、非同期処理の実行を待つことができます。
  • 保存が失敗した場合にはイベントが実行されません。

関数

app.record.index.edit.submit.success

eventオブジェクトのプロパティ

プロパティ名 説明
appId 数値 アプリID
recordId 数値 レコードID
record オブジェクト ユーザー入力のデータを保持したレコードオブジェクト

フィールドの値に応じた制御

ありません。

サンプル

レコード一覧画面のインライン編集開始時イベント

レコード一覧画面のインライン編集で、任意のレコードのインライン編集が開始された時に発生します。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリでは利用できません。

関数

app.record.index.edit.show

eventオブジェクトのプロパティ

プロパティ名 説明
appId 数値 アプリID
record オブジェクト インライン編集開始時のデータを保持したレコードオブジェクト
recordId 数値 レコードID

フィールドの値に応じた制御

レコード一覧画面のフィールド値変更時イベント

レコード一覧画面のインライン編集で指定フィールドの値が変更された時、フォームの値の書き換え時に発生するイベントです。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリでは利用できません。
  • トリガーとなった値の変更はキャンセルされません。

関数

app.record.index.edit.change.<フィールドコード>

フィールドコードに指定可能なフィールド

app.record.create.change.<フィールドコード> と同様になります。

eventオブジェクトのプロパティ

プロパティ名 説明
appId 数値 アプリID
record オブジェクト イベント発生時点のユーザー入力のデータを保持したレコードオブジェクト
recordId 数値 レコードID
changes オブジェクト 変更されたオブジェクト
changes.field オブジェクト 変更されたフィールドのオブジェクト

フィールドの値に応じた制御

レコード一覧画面のレコード削除前イベント

レコード一覧画面で削除ボタンをクリックしてポップアップの「削除する」をクリックしたあと発生します。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリでは利用できません。
  • false を return すると削除処理をキャンセルできます
  • kintone.Promiseオブジェクトをreturnすると、非同期処理の実行を待ってイベントの処理を開始します。

関数

app.record.index.delete.submit

eventオブジェクトのプロパティ

プロパティ名 説明
appId 数値 アプリID
record オブジェクト 削除対象のレコードデータを保持したレコードオブジェクト
recordId 数値 レコードID

サンプル

kintone.Promiseオブジェクトをreturnすることで、非同期処理の実行を待ってからレコードの削除を実行できます。
次のサンプルはkintone.Promiseを利用しないケース、利用するケースです。記述方法はレコード追加画面の保存実行前イベントも参考にしてください。

kintone.Promise を利用しない場合

kintone.Promise を利用する場合

イベント発生時に実行できる操作


フィールドの値を書き換える

ハンドラーが record オブジェクトのフィールドの値を書き換えて event オブジェクトを return した場合、その値でフィールドの値を更新します。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリには利用できません。
  • ラジオボタンフィールドで空文字列を指定した場合、初期値の選択肢となります。
  • フィールドの編集を不可にしても、値を書き換えることができます。
  • テーブルの行追加、削除はできません。
  • 追加権限のないフィールドの値を書き換えた場合はフォームには反映されません。
  • 最後のハンドラーが return しない場合、フィールドの値を更新しません。
  • 複数のハンドラーが登録されている場合、最後のハンドラーが return した戻り値を基準に反映されます。

サンプル

レコード一覧画面の「ドロップダウン_0」フィールドの値変更時に、「文字列_0」 フィールド、テーブル「Table」の1行目の「文字列_1」フィールドに初期値をセットします。

書き換えできないフィールド

以下のフィールドは、保存実行前イベントのハンドラーでフィールドの値を書き換えて return しても、フォームには反映されません。

  • レコード番号
  • 作成者
  • 作成日時
  • 更新者
  • 更新日時
  • ステータス
  • 作業者
  • 計算
  • 自動計算にした文字列1行
  • 添付ファイル
  • ルックアップ
  • ルックアップコピー先フィールド

フィールドの編集可/不可を設定する

ハンドラーが record オブジェクトのフィールドの disabled に true/falseを代入して event オブジェクトを return した場合は、そのフィールドは編集不可/可になります。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリには利用できません。
  • 編集権限のないフィールドを編集可能(disabled を false)にしても反映されません。

サンプル

「ドロップダウン_0」フィールドの値が変更になった時に、「文字列_0」 フィールドを編集不可にします。

編集可/不可にできないフィールド

以下のフィールドの値を編集可/不可を設定して return しても、フォームには反映されません。

  • 計算
  • ルックアップコピー先フィールド

フィールドにエラーを表示する

ハンドラーが record オブジェクトのフィールドの error にエラーメッセージを代入して event オブジェクトを return した場合、 フォームの値の書き換えと編集可/不可の設定はキャンセルされ、フィールドにエラーメッセージが表示されます。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリには利用できません。

サンプル

「文字列_0」フィールドにエラーを表示します。

以下のフィールドは、エラー値を設定してもエラーは発生しません。

  • レコード番号
  • 作成者
  • 作成日時
  • 更新者
  • 更新日時
  • ステータス
  • 作業者

レコードにエラーを表示する

ハンドラーが event オブジェクトの error にエラーメッセージを代入して event オブジェクトを return した場合、フィールドの値の書き換えと編集可/不可の設定はキャンセルされ、画面の上部にエラーメッセージが表示されます。

  • PC用のみで利用できます。
  • スペースに貼りつけたアプリには利用できません。

サンプル

レコード一覧画面の「保存ボタン」クリック時イベントでレコードにエラーを表示します。

変更されたフィールドやテーブル内の行オブジェクトを取得する

変更のあったフィールドを取得できます。

記事に関するフィードバック

直接的に記事と関連がないご質問はcybozu developer コミュニティをご活用ください。

Avatar
三分一雅博

レコード一覧画面のレコード削除後のイベントはありませんでしょうか。例えば、一覧画面でレコード削除後に、画面をリロードさせたい場合はどうすれば良いでしょうか。

Avatar
もずく

三分一雅博さん

残念ですが、現状ではレコード削除後イベントは用意されていません。
現状ムリにでもやるというのであれば、「削除する?」ダイアログの「削除する」ボタンを押した時点から○秒経ったら発火する。というようなプログラムになるかと思います。

Avatar
三分一雅博

もずくさん

ご回答ありがとうございます。並び替えした時のように、表示イベントでも呼んでくれればと思ったんですが、ないものは仕方ないですね。ありがとうございます。

ログインしてコメントを残してください。
Powered by Zendesk