# 文字列（複数行）の文字数をカウントし制限数を超えるとエラー

**URL:** <https://community.cybozu.dev/t/topic/8103>\
**Category:** kintone 開発相談\
**Created:** [2023 年 9 月 13 日午前 8:17 UTC](https://community.cybozu.dev/t/topic/8103 "2023-09-13T08:17:42Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![kashihara](https://avatars.discourse-cdn.com/v4/letter/k/3d9bf3/32.png) [@kashihara](https://community.cybozu.dev/u/kashihara)\
**Post date:** [2023 年 9 月 13 日午前 8:17 UTC](https://community.cybozu.dev/t/topic/8103/1 "2023-09-13T08:17:42Z")

</div>

文字列（複数行）が”内容1”  
カウントした数の表示先フィールドは、数値フィールドで”mojisu\_tokrikumikadai1”  
の設定です。新規で登録したときは、カウントしてくれますが、編集した場合は何の反応もなく、新規で取得した数でとまります。  
下記の内容を書いてみました。  
ご指摘お願いいたします。

kintone.events.on(‘app.record.detail.process.proceed’, function(event) {  
// 本文に入力された文字数を取得  
var rec = event.record;  
var st = rec.内容1.value;  
// 空白文字を削除  
var st2 = st.replace(/\s+/g, “”);  
var st3 = st2.replace(/[\x00-\x7e]/g, “”);  
// 文字数フィールドに文字数を代入  
rec.mojisu\_tokrikumikadai1.value = st2.length;  
if (st3.length \>= 300) {  
event.error = “取組課題1が300文字を超えています。300文字以内で入力してください。”;  
}  
return event;  
});

---

<div class="post-metadata">

**Author:** ![ko\_ji](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/ko_ji/32/31_2.png) [@ko\_ji](https://community.cybozu.dev/u/ko_ji)\
**Post date:** [2023 年 9 月 14 日午前 5:03 UTC](https://community.cybozu.dev/t/topic/8103/2 "2023-09-14T05:03:19Z")

</div>

こんにちは。

お知らせのコードで利用しているイベント（‘[app.record.detail.process.proceed](https://cybozu.dev/ja/kintone/docs/js-api/events/detail/detail-process-proceed-event/)’）は、  
プロセス管理でアクションを実行した際に発火するイベントとなり、  
レコードを新規で登録した時や編集した時には発火しません。

レコードの新規登録と編集を行った際に、処理を実行したい場合には、  
‘[app.record.create.submit](https://cybozu.dev/ja/kintone/docs/js-api/events/create/create-submit-event/)’ と ‘[app.record.edit.submit](https://cybozu.dev/ja/kintone/docs/js-api/events/edit/edit-submit-event/)’ のイベントを  
指定する必要がありますよー

イベント指定部分を以下のように指定して、動作確認してもらえればと思います。

```javascript
  const events =[
    'app.record.create.submit',
    'app.record.edit.submit'
  ];
  kintone.events.on(events, function (event) {

```

イベントの詳細については、以下のページが参考になるかと思います。

> **[イベント処理の記述方法](https://cybozu.dev/ja/kintone/docs/js-api/events/event-handling/)**
>
> イベント処理の記述方法を説明しています。

---

<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:** [2023 年 9 月 22 日午前 5:19 UTC](https://community.cybozu.dev/t/topic/8103/3 "2023-09-22T05:19:34Z")

</div>

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