# Aアプリのフィールドに格納された番号でゲストアプリからのデータを取得し表示させたい

**URL:** <https://community.cybozu.dev/t/topic/2024>\
**Category:** kintone 開発相談\
**Created:** [2015 年 3 月 30 日午前 5:37 UTC](https://community.cybozu.dev/t/topic/2024 "2015-03-30T05:37:54Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Legacy\_Account1481](https://avatars.discourse-cdn.com/v4/letter/l/a9adbd/32.png) [@Legacy\_Account1481](https://community.cybozu.dev/u/Legacy_Account1481)\
**Post date:** [2015 年 3 月 30 日午前 5:37 UTC](https://community.cybozu.dev/t/topic/2024/1 "2015-03-30T05:37:54Z")

</div>

お世話になります。  
タイトルの様に、Aアプリのフィールドに格納された番号を使用して、ゲストアプリからのデータを取得Aアプリに結果を表示させたいと思っております。

ajaxを使用して（GET）でプログラムを組み試みましたところ、データ一括取得でクエリ記法も問題なくネットワークを確認しても無事とれておりました。

結果を、レコード詳細画面に表示をさせたいとおもいましたが、「undefined」と表示されたり書きなおして再度試したら今後は、「object Object」と表示されました。

何が原因なのか、確認しておりますが解決に至っておりません。

どうかアドバイスを頂けましたら幸いでございます。

宜しくお願い致します。

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1481](https://avatars.discourse-cdn.com/v4/letter/l/a9adbd/32.png) [@Legacy\_Account1481](https://community.cybozu.dev/u/Legacy_Account1481)\
**Post date:** [2015 年 3 月 30 日午前 8:48 UTC](https://community.cybozu.dev/t/topic/2024/2 "2015-03-30T08:48:03Z")

</div>

プログラムは、下記のようにしてみて実行すると[object Object]と表示されてしまいます。書き方が悪いのでしょうか？

(function () {  
“use strict”;

```
kintone.events.on('app.record.detail.show',function (event) {
    //右メニューにボタンを設置
    var myIndexButton = document.createElement('button');
    myIndexButton.id = 'my_index_button';
    myIndexButton.innerHTML = '修理進捗状況';
    kintone.app.record.getSpaceElement('my_index_button').appendChild(myIndexButton);
    myIndexButton.onclick = function () {
        //定数群
        var record = event.record;
        var productNo = record['管理番号']['value'];
        var FIELDS = {'管理番号':'管理番号','処理状況':'status'};
        var appId = 330;
        //kintoneリクエスト
        var requesturl = '/k/guest45/v1/records.json' + '?app=' + appId + '&fields[0]=' + '端末名' + '&fields[1]=' + '処理状況';
        var query = '管理番号="'+ productNo +'"limit 1';
        requesturl += '&query=' + encodeURIComponent(query);

        function result() {
            return $.ajax({
                url: requesturl,
                type: 'GET',
                dataType: 'json'
            })
        }
        result().done(function(data) {
            alert(data);
        }).fail(function(response) {
            if(response.responseJSON){
                if(response.responseJSON.message){
                    alert('[kintone]' + response.responseJSON.message);
                }else{
                    alert('データ取得失敗');
                }
            }else{
                alert('データ取得失敗');
            }
        })
    };
});

```

})();

---

<div class="post-metadata">

**Author:** ![Legacy\_Account616](https://avatars.discourse-cdn.com/v4/letter/l/b5e925/32.png) [@Legacy\_Account616](https://community.cybozu.dev/u/Legacy_Account616)\
**Post date:** [2015 年 3 月 30 日午後 3:48 UTC](https://community.cybozu.dev/t/topic/2024/3 "2015-03-30T15:48:08Z")

</div>

高橋 和哉さん  
cstapの落合です。

いくつか気になる点があります。  
まず、kintone REST APIを扱うときは、jQueryのajaxではなく[kintone.api](https://cybozudev.zendesk.com/hc/ja/articles/202166310)を使って下さい。  
[URLの生成API](https://cybozudev.zendesk.com/hc/ja/articles/202166310#step2)もあるので、これも使って下さい。

あと以下の行は、guest45ではなくguest/45としないと動かないかと思います。  
`var requesturl = '/k/guest45/v1/records.json' + '?app=' + appId + '&fields[0]=' + '端末名' + '&fields[1]=' + '処理状況';`

以上、参考になりますでしょうか？

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1481](https://avatars.discourse-cdn.com/v4/letter/l/a9adbd/32.png) [@Legacy\_Account1481](https://community.cybozu.dev/u/Legacy_Account1481)\
**Post date:** [2015 年 3 月 31 日午後 3:44 UTC](https://community.cybozu.dev/t/topic/2024/4 "2015-03-31T15:44:45Z")

</div>

cstap 落合さま

はじめまして。宜しくお願いいたします。  
ご回答ありがとうございました。

早速、ご指摘頂きました通り、下記のようにプログラムを書き換えてみましたところ、「object Object」と表示されてしまいました。

/\*  
\* kintone 顧客リストプログラム  
\* 修理進捗状況を表示  
\* author @KazuyaTakahashi  
\*/  
(function () {  
“use strict”;

```
kintone.events.on('app.record.detail.show',function (event) {
    //右メニューにボタンを設置
    var myIndexButton = document.createElement('button');
    myIndexButton.id = 'my_index_button';
    myIndexButton.innerHTML = '修理進捗状況';
    myIndexButton.onclick = function () {
        //定数群
        var record = event.record;
        var productNo = record['管理番号']['value'];
        var params = {
            query: '管理番号="'+ productNo +'"limit 1'
        };
        //URL取得
        var urlget = kintone.api.urlForGet('/k/guest/45/v1/records', {app: 330,fields:['端末名','処理状況']},true);

        //kintoneREST API
        kintone.api(urlget,'GET',params,function(resp){alert(resp);});
    };
    kintone.app.record.getSpaceElement('my_index_button').appendChild(myIndexButton);
});

```

})();

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1574](https://avatars.discourse-cdn.com/v4/letter/l/76d3ee/32.png) [@Legacy\_Account1574](https://community.cybozu.dev/u/Legacy_Account1574)\
**Post date:** [2015 年 3 月 31 日午後 4:56 UTC](https://community.cybozu.dev/t/topic/2024/5 "2015-03-31T16:56:36Z")

</div>

高橋 和哉さん

「object Object」と表示される件については、`alert`の引数となっている`resp`の中身が最終的な値を指すものではないためとでも言いますか。何かしらの値を`alert`で表示させたいのであれば、`resp.records[0]['端末名']['value']`等を引数に使うことが必要です。関連するトピックはこの辺（[1](https://cybozudev.zendesk.com/hc/communities/public/questions/200786390), [2](https://cybozudev.zendesk.com/hc/communities/public/questions/200799400)）ですが、JavaScriptの一般的なことですので、`console.log()`と`alert()`の違いをググったりされると良いかと思います。

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1481](https://avatars.discourse-cdn.com/v4/letter/l/a9adbd/32.png) [@Legacy\_Account1481](https://community.cybozu.dev/u/Legacy_Account1481)\
**Post date:** [2015 年 4 月 1 日午前 1:01 UTC](https://community.cybozu.dev/t/topic/2024/6 "2015-04-01T01:01:09Z")

</div>

cstap 落合さま  
山下さま

お世話になります。  
色々とアドバイス有難うございました。

結果を表示する事が出来ました。  
復習もかねて、応用へ進みたいと思います。

宜しくお願い致します。
