カスタマイズビューでユーザー選択の値を表示する方法について

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

カスタマイズビューで登録したレコードの一覧を表示しているのですが、

文字列 (1行)は問題なく表示されるのですが、ユーザー選択が思うような表示になりません。

具体的には

・ユーザー選択の表示がCybozuIDで表示されるものをCybozuに登録している名前で表示させたい

・ユーザー選択の値に空白(データ無)があると全て表示ができなくなる

Javascriptコード

(function () {
    kintone.events.on('app.record.index.show', function(e) {
        if (e.viewName != 'カスタマイズビュー') return;

        var products = new Array();
        for (var i = 0; i < e.records.length; i++) {
            var record = e.records[i];
            console.log(record);
            $("#area").loadTemplate($("#template"),
            {
              t01: record['No'].value,
              t02: record['文字列__1行_'].value,
              t03: record['ユーザー選択'].value[0].code,
            },{append:true});
        }
         $(function(){
         $("td.t01").each(function (i) {
         i = i+1;
         $(this).text(i);
});
});
});
})();

HTMLソース

<script type="text/html" id="template">
<table class="table-bordered"><tr>
<td class="t01"></td>
<td data-content="t02" class="t02"></td>
<td data-content="t03" class="t03"></td>
</tr></table>
</script>
<div class="container">
<table class="table-bordered"><tr>
<th class="t01">No</th>
<th class="t02">文字列__1行_</th>
<th class="t03">ユーザー選択</th>
</tr></table>
<div id="area"></div>
</div>

お手数でございますが、ご教授いただければ幸いです

よろしくお願いいたします。

Naoさん

>・ユーザー選択の表示がCybozuIDで表示されるものをCybozuに登録している名前で表示させたい
⇒こちらは、

 record['ユーザー選択'].value[0].code

 record['ユーザー選択'].value[0].name

に変更すれば表示名が取得できると思われます。

>・ユーザー選択の値に空白(データ無)があると全て表示ができなくなる
⇒こちらは、

 record['ユーザー選択'].value[0]

が undefined であるにも関わらず、
存在しないプロパティ"code"を参照しようとするためエラーが発生し、
エラー後のプログラムがすべて動かなくなっていることのだと思われます。

以下のように書き換えてみてはいかがでしょうか?

$("#area").loadTemplate($("#template"),
{
t01: record['No'].value,
t02: record['文字列__1行_'].value,
//「ユーザー選択」に値があれな名前を表示、なければ空文字("")を表示
t03: (record['ユーザー選択'].value.length > 0) ? record['ユーザー選択'].value[0].name: "",
},{append:true});

 

Shinichi Suenaga 様

ご返信ありがとうございます。

ご教授いただいた、コードに書き換えて問題なく表示されました。

ありがとうございます。