新規投稿
フォローする

REST APIで取得したデータが詳細画面に表示されない

お世話になっております。

REST APIを利用し、別アプリにフィールド値を受け渡して表示させたいです。

 

具体的には、Aアプリ(商品マスター)のフィールド「品目」をキーに、

「発注数量」、「発注重量」の2つのフィールド値をBアプリに受け渡したいです。(フィールドコードは同名にしています。)

以下のように自分で書いて実行しましたが、このようなエラーが表示されます。

Uncaught TypeError: Cannot read property 'value' of undefined

-----

すみませんが、どうしてタイプエラーとなってしまうのかご教授頂けないでしょうか。

(function() {
   "use strict";    
kintone.events.on([
        'app.record.detail.show',
        'mobile.app.record.detail.show',
        'app.record.edit.show',
        'mobile.app.record.edit.show'
    ],
        function (event) {
            var params = {
                "app": 5,
                "query": "品目 = \"" + event.record['品目'].value + "\"",
                "fields": ["発注数量", "発注重量"]
            };

            kintone.api(kintone.api.url('/k/v1/records', true), 'GET', params, function (resp) {
                // success
                var record = event.record;
                record['発注数量'].value = resp['records'][0]['発注数量']['value'];
                record['発注重量'].value = resp['records'][0]['発注重量']['value'];
                return event;

            }, function (error) {
                // error
                reject(error);
            });
        });
})();

 

0

1件のコメント

Avatar
村濱一樹

Uncaught TypeError: Cannot read property 'value' of undefined

未定義(undefined)なプロパティに'value'はない

というこのエラーが示すとおり,  resp['records']['発注数量']['value']; の指定のどこかがおかしそうです。

 

おそらくですが、レコード取得時、結果がゼロ件だったりしませんか?結果がゼロな場合はif文で条件分岐を書く必要がありそうです。

もしくは、'発注数量'というキー名が間違っているなどが考えられます。

※提示されている画像とコードの内容が少々違うのもきになりました

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