お世話になっております。以前もこちらで伺いなんとかログインユーザーの社員番号の取得までは可能になりました。https://developer.cybozu.io/hc/ja/community/posts/360033354592#community_comment_360003401532
↑参考とさせて頂いたコードです。
ただそちらで取得したデータを見ようとするとundefinedと表示されてしまいます。
具体的にはhoge関数からget関数を呼び出し、returnをして値を取得したいです。
すみません、色々調べたのですがどこが引っかかっているのかわからず…。他関数に受け渡しができるのであれば全く違うやり方でも構いません。
ご教授お願いします。
↓メインの関数
(function hoge(){
“use strict”;
var a;
garoon.events.on(‘workflow.request.create.show’, function(event) {
var user = garoon.base.user.getLoginUser();
var request= event.request;
a = get(user,request);
alert(“あああ”);
alert(a);
});
garoon.events.on(‘workflow.request.detail.show’, function(event) { });//他の処理用
})();
↓get関数
function get(user,request){
“use strict”;
var host = location.origin;
var resp;
var num1,num2;
var name;
name = user.name;
var params = ‘?codes[0]=’ + user.code + ‘&offset=0&size=1’;
var url = host + ‘/v1/users.json’ + params;
var xhr = new XMLHttpRequest();
xhr.open(‘GET’, url, true);
xhr.setRequestHeader(‘××××’, ‘×××××’);
xhr.onload = function() {
resp = JSON.parse(xhr.responseText);
if (xhr.status === 200) {
//$(‘input[name=item_1]’).val(resp.users[0].employeeNumber);
num1 = resp.users[0].employeeNumber;
alert(num1);
num2 = resp.users[0].primaryOrganization;
return num1;//←ここで返したいです
}
};
xhr.send(null);
};