レコード表示イベント

フォローする

Index

イベント

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

その他

イベント


レコード詳細画面が表示された時のイベント

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

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

関数(PC用)

app.record.detail.show

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

  • レコード詳細が表示された時
    • 通知を開いて表示されるレコード詳細も対象です。
  • レコード詳細画面でページ送りをした時
  • レコード編集画面で保存またはキャンセルした後

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

mobile.app.record.detail.show

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

  • レコード詳細画面が表示された時
  • レコード編集画面で保存またはキャンセルした後

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

プロパティ名 説明
appId 数値 アプリID
record オブジェクト レコードオブジェクト
recordId 数値 レコードID

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

レコード詳細画面の削除前イベント

レコード詳細画面で削除ボタンをクリックしてポップアップの「削除する」をクリックしたあとに発生するイベントです。

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

関数

app.record.detail.delete.submit

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

プロパティ名 説明
appId 数値 アプリID
record オブジェクト レコードオブジェクト
recordId 数値 レコードID

サンプル

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

kintone.Promise を利用しない場合

kintone.Promise を利用する場合

プロセス管理のアクションイベント

プロセス管理機能を有効にしたアプリで、アクションを実行したときに発生するイベントです。 ステータスの変更に複数の作業者によるアクションの実行を必要とする場合など、アクションの実行によってレコードのステータスが変わらない場合でも、このイベントが発生します。

  • PC用のみで利用できるイベントです。
  • eventオブジェクトをreturnすることでレコード情報を更新できます。(詳細は後述)
    ※レコード編集権限が必要です。
  • false を return した場合アクションがキャンセルされます。
  • eventオブジェクトに error プロパティを設定して return した場合、error に設定した文字列でアラートが表示され、アクションがキャンセルされます。
  • 不正な値を return した場合エラーが表示されてアクションがキャンセルされます。
  • 何も return しない場合ステータスのみが更新されます。
  • kintone.Promiseオブジェクトを return すると、非同期処理の実行を待ってイベントの処理を開始します。

非同期処理の実行を待ってプロセス管理のアクションを実行する

kintone.Promiseオブジェクトをreturnすることにより、非同期処理の実行を待ってからプロセス管理のアクションを実行します。
記述方法はレコード追加画面の保存実行前イベントを参考にしてください。

関数

app.record.detail.process.proceed

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

プロパティ名 説明
action オブジェクト 実行したアクション
// オブジェクトのキー 
{value:"<アクション名(ユーザーの言語設定に従う)>"}
status オブジェクト 変更前のステータス
// オブジェクトのキー 
{value:"<ステータス名(ユーザーの言語設定に従う)>"}
nextStatus オブジェクト 変更後のステータス
// オブジェクトのキー 
{value:"<ステータス名(ユーザーの言語設定に従う)>"}
※アクションを実行した結果、ステータスが変化しない場合でも、変更後のステータス名を取得できます。
record オブジェクト レコードオブジェクト

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

フィールドの表示/非表示を切り替える

  • PC用とスマートフォン用で利用できます。

関数

環境 関数 説明
PC用 kintone.app.record.setFieldShown("フィールドコード","true/false")
  • フィールドの表示/非表示を切り替えます。関数の第一引数にフィールドコード,第二引数にtrue/falseを指定します。
    trueを指定すると表示、falseを指定すると非表示になります。

スマートフォン用

kintone.mobile.app.record.setFieldShown("フィールドコード","true/false")
  • フィールドの表示/非表示を切り替えます。関数の第一引数にフィールドコード,第二引数にtrue/falseを指定します。
    trueを指定すると表示、falseを指定すると非表示になります。

サンプル

レコード詳細画面の表示時に、フィールドコード「文字列__1行」を非表示にする例:

以下のフィールドは非表示にできません。

  • ラベル
  • 罫線
  • スペース
  • テーブル内のフィールド

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

プロセス管理のアクションイベントで、ハンドラーが record オブジェクトのフィールドの値を書き換えて event オブジェクトを return した場合、その値でフィールドの値を更新します。

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

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

以下のフィールドは、プロセス管理のアクションイベントのハンドラーでフィールドの値を書き換えて return しても、フォームには反映されません。

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

その他


関連Tips

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

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

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