テーブルに行追加してルックアップ自動取得したい

こんにちは。
新規レコード画面で、サブテーブルに5行追加して初期値を登録したい。テーブルの「物品ID」フィールドがルックアップとなっており、自動取得まで行いたいです。

チュートリアル、コミュニティの情報から下記コードで値をセットするところまでは出来ていますが、「物品ID」のルックアップが自動取得出来ません。ちなみに、テーブル外に「倉庫」のルックアップもありますが、こちらはどなたかのコードをコピペして取得出来ています。

アプリは物品管理で故障交換時などに登録をしますが、新規出荷の場合は付属品含み、常に5つの物品が1セットで出荷しています。拠点にもよりますが基準は7台、稀に地方や研修センターなどで台数が増減します。

エラーにはならず、最後の処理が動いていないように思います。テーブルのルックアップ自動取得は、行の追加・削除時に動くという情報も見たのですが、どのようにすれば良いか分からず困っています。
フォーム画面とコードをアップしますので、どなたかご教授いただけますと大変助かります。

 

 

 

  1. (function() {
  2. ‘use strict’;
  3. kintone.events.on(‘app.record.create.show’, function(event) {
  4. var pccount = prompt(“台数を入力してください。(初期値:7)”,7); //新規出店時の台数を入力(初期値:7)
  5. var record = event.record;
  6. record[‘倉庫ID’].value = ‘W-0001’; // ルックアップフィールド「倉庫ID」セット
  7. record[‘倉庫ID’].lookup = true; // ルックアップ「倉庫ID」「倉庫名」取得
  8. // 行の作成
  9. var newRow1 = createValue_(“P-0001”,‘アクティブペン’,pccount);
  10. var newRow2 = createValue_(“P-0002”,‘ドッキングステーション’,pccount);
  11. var newRow3 = createValue_(“P-0003”,‘モニター’,pccount);
  12. var newRow4 = createValue_(“P-0004”,‘キーボード&マウス’,pccount);
  13. var newRow5 = createValue_(“P-0005”,‘タブレットPC’,pccount);
  14.  
  15. // テーブルに初期値を定義する
  16. event.record.テーブル.value = [
  17. newRow1,
  18. newRow2,
  19. newRow3,
  20. newRow4,
  21. newRow5,
  22. ];
  23. return event;
  24. });
  25. function createValue_(idtext,text,number) {
  26. return {
  27. ‘value’: {
  28. “物品ID”:{
  29. “type”: “SINGLE_LINE_TEXT”,
  30. “value”: idtext
  31. },
  32. ‘数量’: {
  33. ‘type’: ‘NUMBER’,
  34. ‘value’: number
  35. },
  36. ‘物品名’: {
  37. ‘type’: ‘SINGLE_LINE_TEXT’,
  38. ‘value’: text
  39. }
  40. }
  41. };
  42. }
  43.  
  44. kintone.event.on(‘app.record.create.change.テーブル’,“app.record.edit.change.テーブル”),function (event) {
  45. var record = event.record;
  46. var subtable = record[‘テーブル’].value;
  47. var buppin = record[‘物品ID’].value;
  48.  
  49. for (var i = 0; i < subtable.length; i++) {
  50. subtable[i].value[‘物品名’].value = buppin;
  51. subtable[i].value[‘物品名’].lookup = true;
  52. }
  53. return event;
  54. }
  55. })();

大変、失礼しました。コンソール画面のソースにエラー表示がありました。

44行目 Uncaught TypeError: Cannot read property ‘on’ of undefined

event部分が間違っているのか、それとも根本的に違うのか良く理解出来ておりませんが、
よろしくお願いいたします。

こんにちは。プロジェクト・アスノートの松田です。

パット見で気がついた点としては、

kintone.events.on のタイプミスがあります。

 

松田様、コメントありがとうございました。
ご指摘いただきました通り、sが抜けておりましたので、訂正後、
実行したものの自動取得されませんでした。

実行後の画面で手動でテーブル内の「取得」をクリックするとルックアップが反映されます。
デバッグもまだ疎くて、何を見ていいのか分かっておりませんが、どのような情報をご提示すれば宜しいでしょうか。

松田様、解決いたしました。
昨夜、コメントいただいた後、デバッグの見方とTipsを調べてみました。
先ほど、Tips内のフィードバックにある以下のコメントを試してみたところ、サブテーブル5行分が
ルックアップ反映されました。

createValue_関数内で以下のように追記したらばできました。

<ルックアップフィールド>: {
‘type’: ‘SINGLE_LINE_TEXT’,
‘value’: ‘テスト’,
‘lookup’:true
}

業務でユーザからの要望に応えたいあまり、飛び飛びで進めていましたが
基本から学んでいこうと思います。
ありがとうございました。

 

解決法が見つかったようでよかったです。

チュートリアルを実際に手を動かしてやりながら、

ドキュメントをひと通り確認しておくことをオススメします。

 

後半の kintone.events.on~ は不要ですね。

松田様、ご親切にありがとうございました!
本当に感謝いたします。