Jsonobjectのfor each処理について

いつもお世話になっております。よろしくお願いします。

お聞きしたいこと
jsonobjectのループ処理に回数上限があるのかどうか
着目する点が間違っているとしたら次にどこを疑ったらよいか です。

“JSON を逆シリアル化” アクティビティでjsonobject型にしたものを、
for eachアクティビティのループ処理でデータテーブル化を行っているのですが、
jsonobjectのカウントでは435件とあるのに(json_obj.GetValue(“totalCount”).ToString で435と出ます)
for eachを行うと決まって100でループ処理を抜けてしまいます。

上限は無いと思うのですが、どうでしょうか。
jsonはいまいち理解が乏しいのですが、どうチェックしたら良いかご教授頂けたらと。
よろしくお願いします。

こんにちは

具体的にどのようなデータで、何を対象にイテレートしていますでしょうか?
可能でしたらサンプルや実際のワークフローを共有いただけるとよいと思います。(事象が再現できるならダミーでも結構です)

Yoichi様

いつもありがとうございます
text_json.txt (64.1 KB)

具体的なデータですが、kintoneのアプリから"http要求"アクティビティでレコードを落としてきています。出力結果で得たstring(添付致しましたテキストファイルがそれです。実際のものはもっと項目があります)を"JSON を逆シリアル化"アクティビティでjobjectに、これをFor Eachに代入しております。

上記ですとデシリアライズしたJObjectをjoとすると

jo.GetValue("totalCount").Value(Of String) は108です。

これはjsonファイル中に埋め込まれた値ですので、
この値の出所・意味はAPI仕様を確認する必要があります。

jo(“records”) でイテレートした件数は100件です。
実際に元データも100件あります。

Yoichi様

ありがとうございます。
totalcountなるものは

上記kintoneの仕様で最大レコード数が取得できるといったものでして。
これが100超えであるため、それをデシリアライズしたらjoも同様の108あるものと思っていたのですが、、
つまりは最大レコード数108という数値のみを出力しているだけで、テキストファイル内(kintoneからは)には100レコードしか取得できていない、ということでしたか。

はい、実際にJSON parserあるいはテキストエディタで確認すると良いかと思います。

ありがとうございました。いつも。助かりました!

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.