新規投稿
フォローする

スマホの/v1/users.jsonについて

作成画面時にログイン情報を取得して

申請者、社員番号、部署コード、部署名を自動的に入力したいのですが、

(部署名は部署コードからルックアップ)

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;
});


})();
0

1件のコメント

Avatar
shima

kintone.app.record.set(item);

kintone.mobile.app.record.set(item)

になっていなかっただけでした。

自己解決致しました。

 

0
ログインしてコメントを残してください。