新規投稿
フォローする

クエリの書き方について

関連レコード一覧から、複数条件にあった件数を取得したいのですがうまくいきません。

条件は、部品記号と同じで、重複チェックボックスにチェックが無く、対応ドロップダウンで対応が選択されているものの件数を取得したいです。

kintone.events.on(events, function(event) {
const appId = kintone.app.getRelatedRecordsTargetAppId('関連レコード一覧');
const query = '部品記号="' + event.record['部品記号'].value +'" and 対応ドロップダウン in ("対応")'+'" and 重複チェックボックス not in ("重複")';
const paramGET = {
'app' : appId,
'query' : query,
'totalCount' : true
};
kintone.api(kintone.api.url('/k/v1/records', true), 'GET', paramGET, (resp)=> {
event.record['対応件数'].value = resp.totalCount;
kintone.app.record.set(event);

0

2件のコメント

Avatar
mls-hashimoto

クエリの対応ドロップダウンと重複チェックボックスの間にダブルクォーテーションが余分にあるようです。

またeventsがどのイベントを宣言しているか不明なので間違っているかもしれませんが、API実行後にフィールドへ反映させるにはkintone.app.record.getとkintone.app.record.setで可能と思われます。

  kintone.events.on(events, function(event) {
const appId = kintone.app.getRelatedRecordsTargetAppId('関連レコード一覧');
const query = '部品記号="' + event.record['部品記号'].value + '" and 対応ドロップダウン in ("対応") and 重複チェックボックス not in ("重複")';
const paramGET = {
'app' : appId,
'query' : query,
'totalCount' : true
};

kintone.api(kintone.api.url('/k/v1/records', true), 'GET', paramGET, (resp)=> {
var recordData = kintone.app.record.get(), rec = recordData.record;

rec['対応件数'].value = resp.totalCount;
kintone.app.record.set(recordData);
1
Avatar
mika

mls-hashimoto さん

ありがとうございます。件数取得できました。
以下のように、修正しました。

(function() {
  'use strict';
  const events = [
    'app.record.edit.show',
    'app.record.create.show',
    'app.record.detail.show'
    ];
  kintone.events.on(events, function(event) {
    const appId = kintone.app.getRelatedRecordsTargetAppId('関連レコード一覧');
    const query = '部品記号="' + event.record['部品記号'].value +'" and 対応区分 in ("対応")'+'" and 重複 not in ("重複")';
    const paramGET = {
      'app' : appId,
      'query' : query,
      'totalCount' : true
    };
    kintone.api(kintone.api.url('/k/v1/records', true), 'GET', paramGET, (resp)=> {
      event.record['対応件数'].value = resp.totalCount;
      kintone.app.record.set(event);
    });
    return event;
  });
})();

 

0
サインインしてコメントを残してください。