# 編集時について

**URL:** <https://community.cybozu.dev/t/topic/2186>\
**Category:** kintone 開発相談\
**Created:** [2015 年 9 月 4 日午前 1:57 UTC](https://community.cybozu.dev/t/topic/2186 "2015-09-04T01:57:31Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Legacy\_Account2974](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@Legacy\_Account2974](https://community.cybozu.dev/u/Legacy_Account2974)\
**Post date:** [2015 年 9 月 4 日午前 1:57 UTC](https://community.cybozu.dev/t/topic/2186/1 "2015-09-04T01:57:31Z")

</div>

前回重複チェックについて質問した者です。  
完成したかに思われたのですが重要なことを見逃していました。  
結論から言いますと重複チェックをしているときに編集中のレコードも検索してしまい、  
変更後は１つしかないレコードも、編集前が重複していたら重複しているとエラーが出てしまいます。  
省略していますがコードは↓になります。  
var query = ‘(\<フィールドコードA\>="’ + \<入力されたレコードを入れた変数\> + ‘“) and (\<フィールドコードB\>=”’ + \<入力されたレコードを入れた変数\> + ‘")’;  
return new kintone.Promise(function(resolve, reject) {  
var params = {app: masterAppId, query: query};  
kintone.api(‘/k/v1/records’, ‘GET’, params, function(resp) {  
resolve(resp);  
console.log(resp.records.length);  
});  
}).then(function(resp) {  
if (resp.records.length) {  
record[‘\<フィールドコードA\>’].error = ‘重複しています’;  
}  
return event;  
});  
レコード追加画面の保存実行前イベントを参考にしました。  
Arrayがレコードの件数だと思い1の時にエラーを出すようにしましたが  
レコードを編集中と格納されているもので２件重複するようにしたところ  
Arrayが１になり保存されてしまいます。  
解決する方法があればぜひご教授ください。  
よろしくお願いします。

---

<div class="post-metadata">

**Author:** ![Legacy\_Account2974](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@Legacy\_Account2974](https://community.cybozu.dev/u/Legacy_Account2974)\
**Post date:** [2015 年 9 月 4 日午前 6:03 UTC](https://community.cybozu.dev/t/topic/2186/2 "2015-09-04T06:03:27Z")

</div>

解決の方向に向かっています。  
respの中にレコードIDが入っていますが、それを  
kintone.app.record.getId()で取得したIDと  
比較をしたいのですが方法がありましたらよろしくお願いします。

---

<div class="post-metadata">

**Author:** ![Legacy\_Account2002](https://avatars.discourse-cdn.com/v4/letter/l/f04885/32.png) [@Legacy\_Account2002](https://community.cybozu.dev/u/Legacy_Account2002)\
**Post date:** [2015 年 9 月 13 日午前 7:40 UTC](https://community.cybozu.dev/t/topic/2186/3 "2015-09-13T07:40:56Z")

</div>

T\_jimaさん

はじめまして、たまと申します。

resp内のidと現在開いてるレコードのidは、  
それぞれ、以下で取得できます。

var respId = resp.records[0].id.value;  
var recordId = kintone.app.record.getId();

respIdとrecordIdが一致しない場合に重複エラーとすることで、  
解決できそうですが、いかがでしょうか。

if(respId != recordId){  
record[‘XXX’].error = ‘重複しています’;  
}

なお、他のレコードで重複したデータが無いことを想定しております。

---

<div class="post-metadata">

**Author:** ![Legacy\_Account2974](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@Legacy\_Account2974](https://community.cybozu.dev/u/Legacy_Account2974)\
**Post date:** [2015 年 9 月 17 日午前 2:10 UTC](https://community.cybozu.dev/t/topic/2186/4 "2015-09-17T02:10:34Z")

</div>

たま様  
回答ありがとうございました。  
書き込め無い環境にいたため返信が遅れてしまい  
誠に申し訳ございません。  
ご教授いただいた方法で試したところ無事にできましたので  
これで完成が見えてきました。  
本当に有難うございました。
