こんにちは。
kintone初心者です。深みにハマってしまったようでなかなか抜け出せません。
kintoneのアプリでスクリプトで自動採番している処理があるので、自動採番するフィールドを編集無効にしたいと思っているのですが、何が干渉しているのかうまくいきません。
最初は、tis社の条件分岐プラグインで、該当のフィールドに対して、編集無効 としていましたが、何かイベントを動かさないと効かないようなので、スクリプトで強制的に行うことにしました。
スクリプトの最後に、以下のコードを置いてみました。
kintone.events.on(['app.record.create.show', 'app.record.edit.show'], (event) => {
event.record['依頼No'].disabled = true;
return event;
});
実行したところ、
show.js:198 Uncaught TypeError: Cannot set properties of undefined (setting 'disabled')
どうもこのフィールドが認識されないようなので、タイムアウトした状態で実行してみましたが、結果は同じでした。
kintone.events.on(['app.record.edit.show'], (event) => {
setTimeout(() => {
if (event.record['依頼No']) {
event.record['依頼No'].disabled = true;
}
}, 700);
return event;
});
一部、別のプラグインも使っているのでその影響でしょうか?
自動採番のスクリプトは、保存時に走るイベントなので、影響は受けないと思います。
何かヒントがありましたら教えて頂けると助かります。
ミュートしたユーザーの投稿です。
投稿を表示お疲れ様です。
ここでは、カスタマイズの話は非推奨ですので、詳細は控えますが、現状の質問内容ではcybozu developer networkでも答えてくれる可能性が低そうな気がしますので、一般的なkintoneの話にからめてということで。
kintoneのアプリやプラグインに出てくるエラーは、基本的には何か理由があって出ているので、まずはそのエラー文を検索すると結構ヒントが見つかります。
そのうえで、今回の質問の場合、「フィールドが認識されない」とおっしゃっているので、原因は正しく特定されてると思います。
まず、kintoneのフィールドには「フィールド名」と「フィールドコード」の2つが存在します。今回必要なのは、「フィールドコード」ですので、フィールドコードが正しく記載されているかを確認(Noと№、No.とNo_なんかは間違えやすいので、これらも併せてチェック)してみてください。
これが正確な場合、フィールドコードがテーブル内にあることも考えられます。
テーブル内のデータの取り扱いは、プラグインでもよく出てくる間違えやすい部分で、もしテーブル内のデータであった場合、通常のフィールドよりも少し取り扱いが難しくなります。この場合、CSVエクスポート等を試してみて、kintoneの中でデータがどう管理されているかを調べてみると、理解が深まると思います。
これらを検討したうえで、やはりうまくいかない場合は、(機密情報に抵触しない範囲内で)アプリーのフィールドコードの一覧等のもう少し詳しい説明やこれまでに何を試したかを整理したうえでcybozu developer networkに質問してみると良いと思います。
ここで、これ以上の回答をすることや追加の質問等にはお答えすることはできませんので、頑張ってみてうまくいきますように。
現行のプラグインの使い方を変えてみることや別のプラグインを試してみるのも一つの方法かも知れません。
最後になりますが、このスレッドについては、削除せず、残しておいていただけると、今後同様の質問を考えている方が事前に目にすることができると思うので、助かります。
ご協力お願いします。
ミュートしたユーザーの投稿です。
投稿を表示これ👆の可能性が高いと思います
①一度、他のPluginを「無効」にして
条件分岐処理プラグイン❶だけで「編集無効」にすれば動くんじゃないないかな~
ことはないです 【自分は動作条件なしで動作させていますヨ】
②動いたら、Pluginを 1づつ「有効」にしていき、❷干渉しているPluginの特定動いたら(=今回の 動作 とは フィールドが グレーアウト状態になる)
②-1 他のPluginを1つ 「有効」にする
(= 2つのPluginが有効になっている状態)
②-2 その状態でアプリの動作(= ⊕釦の押下げ)させる
②-3 「動作しない」時(= グレーアウトにならない)は
その時「有効」にしたPluginが干渉❷している
②-※ 「動作した」時(= グレーアウトになった)は
②-1~-3を n回 繰り返し「動作しない」状態まで行い
干渉しているPlugin❷の特定する
(2回目は、3つの Pluginが有効になっている)
(n回目は、(n+1) つの Pluginが有効になっている)
補足_2025/07/15 09:05 の投稿の場合は「動作」が
自動で「採番する」「採番しない」で判断することになります
③❶➡❷の順でPluginの動作をするように設定し直す
👆の中「プラグインの実行順序について【1つのアプリに、複数の Plugin が インストール されている場合、Plugin実行順序の確認と変更方法】」のリンク🔗を参照してください
ご参考まで!
ちなみに、条件分岐処理プラグインの設定TABが他にもある場合は
こちらも並べ替えの対象になることがあります!
---追記------------------
動作しない原因が干渉だった場合には
Ⓐ JSで「編集無効」カスタマイズ
と
Ⓑ ❷Plugin の 両立はしないと思います
理由=ⒶⒷの動作順を入替する方法がない
なので、ⒶⒷ共に「Pluginで動作」「カスタマイズで動作」の
どちらかに統一するしかないかな~
ミュートしたユーザーの投稿です。
投稿を表示JSコードについては以下同文ですので、触れないでおきますが、
編集時に編集無効にするということは、
(編集⇨保存という動きですので)保存時には編集可能にしないと、保存時も編集無効のままになりますね。
自動採番を一番最初(「レコードを作成」するタイミング)に持ってくるか、プラグインの関係で難しいのであれば、編集時のみ非表示(※)にするか、グループに入れてワンアクション起こさないと(グループを開かないと)見れないようにすれば事故は起こりづらいかもしれません。
※スクリプトで書いてるなら「非表示」なら行けたような気がしますが、試してないのでダメな場合はご容赦ください。
余談ですが、私も絶賛(別件で)JSコードにつまづき中です☆彡
延々つまづいてる時は大体正気じゃない(疲れてる)ので、一旦そっと閉じて明日もう一度見直してみましょう!
(チャットAIがヒントだけでもちゃんと答えてくれればいいんですけどね。笑)
ミュートしたユーザーの投稿です。
投稿を表示こんにちは、キンコミ運営事務局の松井です。
いつもキンコミへの投稿をありがとうございます。
プラグインやJavaScriptで更なる効率化に取り組まれているのだと思います。
以前kintoneのようなITツールは始めてと書かれていましたが、チャンレンジをされていてすばらしいです!
そのような中で恐縮ですが、キンコミでは具体的な開発方法やコードの話題をお控えいただいております。
具体的なカスタマイズなどの話題・相談は、「cybozu developer network」をご活用いただければと思います。
こちらにもコミュニティのページがあり、知識・経験を持った方がより多く集まる場所になっています。
▶︎cybozu developer network
https://cybozu.dev/ja/
ご利用の際は、「よくある質問」のページもご一読ください。
▶︎cybozu developer network でよくある質問
https://cybozu.dev/ja/getting-started/site-faq/#community
キンコミで開発方法やコードの話題をお控えいただくようお願いしているのは、「kintoneが初めてのシステム管理だ」という方も多く集まる場所のため、具体的な開発に関する情報が公開されることへのリスクに備えた対応となります。
ガイドラインに詳細の理由を記述しておりますので、よろしければご一読くださいませ。
▶️コミュニティガイドライン
https://kincom.cybozu.co.jp/announcements/usqgdm8qhozt0oau
何とぞご理解いただけますと幸いです。
運用を進めていくなかで、新しい気づきやお悩みなどがあれば、今後もぜひキンコミにてシェアいただけますと嬉しいです!