下記の内容を元にユーザー選択フィールドに自分自身を追加したいと考えているのですが、一度保存した詳細画面や編集画面ではボタンを押すと自分を追加することができるのですが、レコード追加画面(新規の場合)だとボタンを押しても反応しません。
どうすればレコード追加画面でも追加することが可能でしょうか?
よろしくお願い致します。
(function() {
"use strict";
//グローバル変数 memberを定義
var member;
//レコードの追加、編集、詳細画面で適用する
var events = ['app.record.create.show',
'app.record.edit.show',
'mobile.app.record.detail.show',
'mobile.app.record.create.show',
'mobile.app.record.edit.show'];
kintone.events.on(events, function(event) {
member = event['record']['立会者名']['value'];
//スペース要素の取得
var se = kintone.app.record.getSpaceElement('btnspace');
//ボタンの作成
var btn = document.createElement('button');
btn.appendChild(document.createTextNode(' セルフチェック '));
btn.id = 'btnAddMine';
btn.name = 'btnAddMine';
se.appendChild(btn);
btn.style.marginTop = '30px';
btn.addEventListener('click', addMemberMine);
});
function addMemberMine() {
//ログインユーザの情報を取得
var loginuser = kintone.getLoginUser();
var objParam = {};
objParam['app'] = kintone.app.getId(); // アプリ番号
objParam['id'] = kintone.app.record.getId(); // レコード番号
objParam['record'] = {};
objParam['record']['立会者名'] = {};
objParam['record']['立会者名']['value'] = [];
// すでに担当者になっているメンバーを追加する
for (var i = 0; i < member.length; i++) {
objParam['record']['立会者名']['value'][i] = {};
objParam['record']['立会者名']['value'][i]['code'] = {};
objParam['record']['立会者名']['value'][i]['code'] = member[i]['code'];
}
//ログインユーザを追加する
objParam['record']['立会者名']['value'][member.length] = {};
objParam['record']['立会者名']['value'][member.length]['code'] = {};
objParam['record']['立会者名']['value'][member.length]['code'] = loginuser.code;
// レコードを更新する
kintone.api(kintone.api.url('/k/v1/record', true), 'PUT', objParam, function(resp) {
// 成功時は画面をリロード
location.reload(true);
});
}
})();