作成画面時にログイン情報を取得して
申請者、社員番号、部署コード、部署名を自動的に入力したいのですが、
(部署名は部署コードからルックアップ)
PCでは動いているのですが、
kintone.mobile.app.record.get()に変更しても正しく動作しないのですが、なぜでしょうか?
console.logをみると
var unitcode = resp.users[0][“customItemValues”][“1”][“value”];
でunitcodeは入力したい数値が入っていました。
item.record[“申請者社員番号”][“value”] = employeeNumber;
item.record[“部署コード”][“value”] = unitcode;
item.record[“部署名”][“lookup”] = true;
上記の3行がうまくいっていないと思っています。
(function () {
"use strict";
// レコード登録/編集画面の表示時
var eventsCreateShow = ['mobile.app.record.create.show'];
kintone.events.on(eventsCreateShow, function(event){
var record = event.record;
var user = kintone.getLoginUser();
var salesperson = record['申請者']['value'];
if(salesperson.length < 1) {
record['申請者']['value'] = [{
"code":user.code,
"name":user.name
}];
};
var data = {
codes: kintone.getLoginUser()['code']
};
if(!record['部署コード']['value']) {
kintone.api("/v1/users.json", "GET", data).then(function(resp) {
var item = kintone.mobile.app.record.get();
// レコード情報を取得
var employeeNumber = resp.users[0]["employeeNumber"];
var employeeName = resp.users[0]["name"];
var unitcode = resp.users[0]["customItemValues"]["1"]["value"];
item.record["申請者社員番号"]["value"] = employeeNumber;
item.record["部署コード"]["value"] = unitcode;
item.record["部署名"]["lookup"] = true;
kintone.app.record.set(item);
}).catch(function(resp) {
return showErrorMessage(resp);
});
}
record["申請者"]['disabled'] = true;
record["申請者社員番号"]['disabled'] = true;
return event;
});
})();