フィールド編集不可後、サブテーブルに追加した行もフィールド編集不可にしたい

お世話になります。

 

ドロップダウンで「完了」とすればドロップダウン以外のフィールドをすべて編集不可にしたいと思っております。

現状、フィールド編集不可は実装できているのですが、サブテーブルがあり編集不可にした後、再度編集する際にサブテーブルの行をプラスボタンで追加すると新規に追加された行は編集できてしまう状態です。こちらもほかのフィールドと同じく編集不可にしたいです。

以下を参考に確認しましたがいまいち理解ができていません。

https://developer.cybozu.io/hc/ja/articles/202166270#step11

初心者で分かりづらい表記が多いかと思いますが、お教えいただければ助かります。

 

■構成

【項目】 【フィールド名】

ドロップダウン 状況(ドロップダウン:作業中 / 完了)

数値 利用ID

サブテーブル チェックリスト(サブテーブルに日付とチェックボックスのフィールドが入っています)

日付 日付

チェックボックス チェック

 

■ソースコード

(function() {

    “use strict”;

    kintone.events.on([‘app.record.edit.show’,‘app.record.create.change.状況’,‘app.record.edit.change.状況’], function(event) {

        var record = event[‘record’];

         //状況が「完了」になればフィールド編集不可

        if (record[‘状況’][‘value’] === “完了”) {

            record[‘利用ID’][‘disabled’] = true;

            for(var i in record[‘食事チェック’].value){

                record[‘食事チェック’][‘value’][i][‘value’][‘日付’][‘disabled’] = true;

                record[‘食事チェック’][‘value’][i][‘value’][‘チェック’][‘disabled’] = true;

                }

        //状況が「完了」以外ならフィールド編集可

        }else if (record[‘状況’][‘value’] !== “完了”) {

            record[‘利用ID’][‘disabled’] = false;

            for(var i in record[‘食事チェック’].value){

                record[‘食事チェック’][‘value’][i][‘value’][‘日付’][‘disabled’] = false;

                record[‘食事チェック’][‘value’][i][‘value’][‘チェック’][‘disabled’] = false;

            }

         }

        return event;

        });

    })();

daikonsan 様

 

こんにちは、イベントタイプにテーブルのフィールドコードを追加すればいいのではないでしょうか?

この場合だと『食事チェック』を追加することになるかと思いますので、

'app.record.edit.change.食事チェック'

とかになるかと思います。

ご確認をして頂けますと幸いでございます。

新屋 様

 

お世話になります。

ご教授いただいた方法で解決することができました!

ありがとうございました!

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。