質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
kintone

kintone(キントーン)とは、サイボウズ社が提供する業務改善プラットフォームです。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

1回答

2851閲覧

kintoneでgoogle app scriptで100件以上取得する方法がわからない

YUKI_B

総合スコア77

kintone

kintone(キントーン)とは、サイボウズ社が提供する業務改善プラットフォームです。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2022/03/22 02:19

こんにちは
今現在kintoneというシステムからgoogle app scriptでレコード取得したいと考えております。

googleappscript

1function get100ver5() { 2 // サイボウズのURL 3 var urlGetRecords = "https://~~~~.com/k/v1/records.json"; 4 //サイボウズアプリのID 5 var appId = 82; 6 //アプリのAPI 7 var apiToken = '~~~~'; 8 9 var kintone = KintoneLib.Kintone('~~~~', appId, 'apiToken'); 10 11 // kintoneからデータを取得 12 var paramFields = "&fields=$id" + 13 encodeURIComponent("レコード番号"); 14 var url = urlGetRecords + "?app=" + appId + paramFields; 15 var res = JSON.parse(UrlFetchApp.fetch(url, { "method": "get", "headers": { "X-Cybozu-API-Token": apiToken, }, })); 16 17 Logger.log(res.records[0]) 18} 19

上記のスクリプトで100件の取得はできました。
しかしレコード元は1000件以上のデータがあります。

kintone公式の下記ページ先によれば
https://developer.cybozu.io/hc/ja/articles/202331474-%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E5%8F%96%E5%BE%97-GET-

引用テキスト

「query」パラメータで使用できるオプション
オプション 例 説明
order by
order by 更新日時 asc レコードの出力される順番が、本オプションに続けて指定したフィールドコードの値でソートされます。
フィールドコードの後に「asc」を指定すると昇順、「desc」を指定すると降順でソートされます。
複数の項目でソートする場合、「フィールドコード 並び順」をカンマ区切りで指定します。
例:「order by フィールドコード1 desc, フィールドコード2 asc」
省略した場合は、レコードIDの降順で返されます。
また、order by で指定できるフィールドには制限があります。詳しくは「ソートで選択できるフィールド」を参照ください。
limit limit 20
本オプションの後に指定した数だけ、レコードが出力されます。
左の例では、レコード先頭から20レコードだけ出力されます。
省略時の初期値は100、上限値は500です。

offset
offset 30 本オプションの後に指定した数だけ、出力するレコードをスキップして、レコードが抽出されます。
左の例では、レコード先頭から30レコードは出力されず、31番目のレコードから出力されます。
上限値は10000です。
上記演算子、オプションは組み合わせて使用できます。


とあるのですがこれをgasでどういう風に記述すればいいのかがわかりません。

googleappscript

1//試行1 2 // kintoneからデータを取得 3 var paramFields = "&fields=$id" + 4 encodeURIComponent("レコード番号"); 5 var url = urlGetRecords + "?app=" + appId + paramFields + "$limit=200"; 6 var res = JSON.parse(UrlFetchApp.fetch(url, { "method": "get", "headers": { "X-Cybozu-API-Token": apiToken, }, })); 7

googleappscript

1//試行2 2var query = "%200limit" 3 // kintoneからデータを取得 4 var paramFields = "&fields=$id" + 5 encodeURIComponent("レコード番号"); 6 var url = urlGetRecords + "?app=" + appId + paramFields + query; 7 var res = JSON.parse(UrlFetchApp.fetch(url, { "method": "get", "headers": { "X-Cybozu-API-Token": apiToken, }, })); 8

こんな感じで書いてみましたけどもなしのつぶてです。
どうか最大レコード取得の記述方法を教えていただけますでしょうか。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

queryに追加することできました。
お騒がせしました。

投稿2022/03/22 04:22

YUKI_B

総合スコア77

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KOKI0528

2023/03/13 06:08

僕に教えてほしいです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問