いつもお世話になっております。
第3回 レコード詳細にもボタンを設置しよう!
を参考にして、下記のプログラムを作成しようとしました。
流れとしましては、
①他のアプリよりリンク先のメールアドレスを取得
②ボタンのリンクアドレスに追加
③票再画面の追加編集と同じエリアに表示
④ボタンを押すとメールクライアントが起動する。
を考えております。
(function () {
“use strict”;
kintone.events.on(‘app.record.detail.show’, function (event) {
//ボタンの作成&設定
if (document.getElementById (‘my_index_button’) != ‘null’) {
return;
}
var myIndexButton = document.createElement(‘button’);
myIndexButton.id = ‘my_index_button’;
myIndexButton.innerHTML = ‘報告メール送信’;
//レコード詳細画面右側の空白部分の要素を取得
var el = kintone.app.record.getHeaderMenuSpaceElement();
//詳細画面のレコード内容の取得
…省略
//メール本文
var honbun = elNoday + elTtl + elCate + elUpday;
//タイトル
var title = elNoday + elTtl + elCate + ;
//メーリングリストの取得
var MAIL = “”;
var params = {
‘app’: XX,
‘query’: ‘Drop_Apri in("業務日誌") and Drop_Cate in("’ + elCate + ‘")’,
‘fields’: [‘Drop_Cate’, ‘Line_Mail’]
};
return kintone.api(‘/k/v1/records’, ‘GET’, params).then(function(resp) {
// レコードを取得する
var resbuf = resp.records;
var resi = resbuf.length;
for(var i = 0; i <resi; i++) {
MAIL = MAIL + resbuf[i].Line_Mail.value;
}
alert(MAIL);
//メール送信機能の追加⇒ボタンに<a>属性を追加付与
var link = document.createElement(‘a’);
link.href=‘mailto:’+MAIL+‘?subject=’+title+‘&body=’+honbun[0]; link.id = ‘Send’;link.name = ‘mailSend’;
//要素の追加
el.appendChild(link);
link.appendChild(myIndexButton);
// ボタンクリック時の処理
myIndexButton.onclick = function() {
if (honbun[1].length > 10) {
alert(honbun[1]);
}
}; //onclick
//レコード詳細画面右側の空白部分の要素を取得
el.appendChild(myIndexButton);
return event;
}, function(resp) {
record.Drop_Cate.error = ‘そのカテゴリは存在しません’;
return event;
});
}); //kintone.events.on
})(); //function
ここまでは作成できたのですが、どうもボタンが表示されません。
やはり、kintone.api内にonclickなどを記述すべきではないでしょうか?
よろしくお願い致します。