# テーブルの行追加時の通知

**URL:** <https://community.cybozu.dev/t/topic/9040>\
**Category:** kintone 開発相談\
**Created:** [2024 年 5 月 17 日午前 8:12 UTC](https://community.cybozu.dev/t/topic/9040 "2024-05-17T08:12:36Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![dorobouhige](https://avatars.discourse-cdn.com/v4/letter/d/e9a140/32.png) [@dorobouhige](https://community.cybozu.dev/u/dorobouhige)\
**Post date:** [2024 年 5 月 17 日午前 8:12 UTC](https://community.cybozu.dev/t/topic/9040/1 "2024-05-17T08:12:36Z")

</div>

### 何を実現したいのかを書きましょう

レコードの条件通知で、条件にテーブル内のフィールドを設定すると、  
その条件で１回通知された後は行追加時に条件満たしても通知されないが、  
繰り返し通知されるようにしたい

### 発生した問題やエラーメッセージを具体的に書きましょう

以下ページを参考にテストしたが、１回しか通知されない

[テーブル追加時の通知設定 - kintone カスタマイズ - cybozu developer community](https://community.cybozu.dev/t/topic/6113/4)

「商談結果」のテーブルに、「社員番号（ルックアップ）」がある。行追加時は必ず社員番号を入力するため、レコードの通知条件は「社員番号がNULLと等しくない時に通知」に設定

### 実行したコードをコピー＆ペーストしましょう

```javascript
(function () {
  'use strict';

  // 編集中に通知設定を変更する処理
  let lookup = 'ルックアップ'; // 社員番号
  let subtable = 'テーブル'; // 商談結果

  kintone.events.on(['app.record.create.change.' + dropdown, 'app.record.edit.change.' + dropdown], (event) => {
    let record = event.record;

    if (record[subtable].value[record[subtable].value.length - 1].value[dropdown].value) {
      record['通知設定'].value = '通知する';
    }

    return event;
  });

  // 保存時に通知設定を戻す処理
  kintone.events.on(['app.record.create.submit.success', 'app.record.edit.submit.success'], (event) => {
    let record = event.record,
      appId = event.appId,
      recordId = event.recordId;

    let putRecord = {
      app: appId,
      id: recordId,
      record: {
        '通知設定': {
          value: '通知しない'
        }
      }
    };

    return kintone
      .api(kintone.api.url('/k/v1/record', true), 'PUT', putRecord)
      .then((resp) => {
        return event;
      })
      .catch((error) => {
        console.error(error);
        return event;
      });
  });

  // 追加のフィールドをテーブルに追加する処理
  kintone.events.on(['app.record.create.show', 'app.record.edit.show'], (event) => {
    let record = event.record;

    // 追加のフィールドをテーブルに追加
    record[subtable].value.forEach((row) => {
      row.value['社員番号'] = {
        value: '' // デフォルトの値を設定
      };
      // 必要に応じて追加のフィールドを増やしていく
    });

    return event;
  });
})();

```

---

<div class="post-metadata">

**Author:** ![jurippe](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/jurippe/32/27_2.png) [@jurippe](https://community.cybozu.dev/u/jurippe)\
**Post date:** [2024 年 5 月 29 日午前 6:21 UTC](https://community.cybozu.dev/t/topic/9040/2 "2024-05-29T06:21:13Z")

</div>

実際に試したりしたわけではないのですが、  
`dropdown`という変数が宣言されていないから・・・とかでしょうか？

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/1X/d5c841c3c5a6cb66eed514001c1b45147c9e1f4f.png) [@system](https://community.cybozu.dev/u/system)\
**Post date:** [2024 年 6 月 1 日午前 6:22 UTC](https://community.cybozu.dev/t/topic/9040/3 "2024-06-01T06:22:13Z")

</div>

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