https://developer.cybozu.io/hc/ja/community/posts/204260736-%E3%83%AB%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E3%83%95%E3%82%A3%E3%83%BC%E3%83%AB%E3%83%89%E3%82%92%E7%B7%A8%E9%9B%86%E5%8F%AF%E8%83%BD%E3%81%AB%E3%81%97%E3%81%A6-%E8%87%AA%E5%8B%95%E8%A8%88%E7%AE%97%E5%BC%8F%E3%81%AE%E5%80%A4%E3%82%92%E5%85%A5%E3%82%8C%E3%81%9F%E3%81%84-
初めまして、困っているので助けてください。
上記にあったscriptを見て、テーブル内のルックアップ項目を全て編集できるようにしていました。
出来た当時ですが、初め2月15日Windows7の環境で行っており、2月18日Windows10の環境でもできることは確認していました。ですが、2月19日に私用でWindows7の環境に戻し、2月20日に確認したところ、Scriptが動作せず、テーブル内ルックアップ項目が編集不可になってしまいました。
上記のサイトのScriptを何度編集しても、コードがUTF-8になっていることを確認しても、テーブル内のルックアップは編集できないままです。
これは環境が変わったからでしょうか?
環境が変わっても出来るScriptがあるなら是非教えてください。
下記私が編集させて頂いたScriptです。
(function(){
‘use strict’;
kintone.events.on([‘app.record.edit.show’, ‘app.record.create.show’], function(event){
event.record[“購入依頼”].disabled = false;
return event;
});
})();
こんにちは。
記載されているコードだと、テーブル内のフィールドは編集可能にできません。
2/15に動作していたとおっしゃっていますが、おそらくフィールドがテーブルの外にあったのでは?と思います。
OSや端末によって、この動作が変わることもありません。
テーブル内のフィールドを編集不可にするには、テーブルのフィールドコードと何行目かを示したうえで、
テーブル内のフィールドコードを指定する必要があります。
record['テーブルのフィールドコード'].value[行番号].value['フィールドコード'].disabled = true;
実際のコードはこんな感じでしょうか。
record['Table'].value[0].value['購入依頼'].disabled = true;
テーブルの全行でやりたいならループが必要ですね。
var tableVal = event.record['Table'].value;
tableVal.forEach(function(column) {
column.value['購入依頼'].disabled = false;
});
レコード追加、編集イベントだけで↑の処理を入れると、
テーブルの行追加したときに、追加した行のフィールドが編集できないままになります。
追加した行も同じようにしたければ、フィールド値変更イベントでテーブルの値変更時にも実行が必要です。
(function(){
'use strict';
var ev = [
'app.record.create.show',
'app.record.edit.show',
'app.record.create.change.Table',
'app.record.edit.change.Table'
];
kintone.events.on(ev, function(event){
var tableVal = event.record['Table'].value;
tableVal.forEach(function(column) {
column.value['購入依頼'].disabled = false;
});
return event;
});
})();
たまごさん
ご丁寧にありがとうございます!
Script初心者だったので、説明もわかりやすくとても助かりました。
頂いたScriptで無事に動くことも確認できました。
勉強になりました。
素早く丁寧なご対応、本当にありがとうございました。
上記のカスタマイズを調べてこちらに行きついたのですが、
追加した行も同じようにしたければ、フィールド値変更イベントでテーブルの値変更時にも実行が必要です。
と記載して頂いておりますが、追加した行も同じようにする為の記述をご教示頂けないでしょうか?
system
(system)
クローズされました:
5
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。