89 lines
2.5 KiB
JavaScript
89 lines
2.5 KiB
JavaScript
//サーバースクリプト
|
|
|
|
try {
|
|
//帳票データの取得
|
|
getReportData();
|
|
|
|
//ユーザーリストの取得
|
|
getUserList();
|
|
|
|
} catch (error) {
|
|
context.Log(error);
|
|
}
|
|
|
|
//帳票データの取得
|
|
function getReportData() {
|
|
//帳票テーブルID
|
|
let siteId = '372623';
|
|
|
|
//取得条件
|
|
let data = {
|
|
"View": {
|
|
"ColumnFilterHash": {
|
|
"ClassE": "[\"1\"]",
|
|
},
|
|
"ColumnSorterHash": {
|
|
"NumA": "asc",
|
|
"ClassA": "asc",
|
|
}
|
|
}
|
|
}
|
|
|
|
let results = items.Get(siteId, JSON.stringify(data));
|
|
if (results.Length === 0) {
|
|
context.Log('メッセージデータが見つかりませんでした。');
|
|
return;
|
|
} else {
|
|
context.Log('帳票データを取得しました。');
|
|
|
|
let reportData = [];
|
|
let reportCount = 0;
|
|
for (let item of results) {
|
|
let reportName = item.ClassA; //帳票名
|
|
let guid = item.AttachmentsA[0].Guid; //帳票ファイルのGuid
|
|
|
|
context.Log(reportName + ':' + guid);
|
|
reportData.push({
|
|
"reportName": reportName,
|
|
"guid": guid,
|
|
});
|
|
reportCount++;
|
|
}
|
|
//取得した帳票データをhiddenに格納
|
|
if (reportCount > 0) {
|
|
hidden.Add('reportData', JSON.stringify(reportData));
|
|
} else {
|
|
context.Log('帳票データが見つかりませんでした。');
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
function getUserList() {
|
|
//---------------------------------------------------------------------
|
|
context.Log('ユーザーリストを取得します。');
|
|
group = groups.Get(27); //全従業員グループ27
|
|
let userList = {};
|
|
|
|
//ユーザー情報を取得してリストを作成
|
|
for (let member of group.GetMembers()) {
|
|
//ユーザー情報情報取得
|
|
|
|
let user = users.Get(member.UserId);
|
|
let dept = depts.Get(user.DeptId);
|
|
let deptName = dept ? dept.DeptName : '';
|
|
|
|
userList[user.UserId] = {
|
|
userId: user.UserId,
|
|
name: user.Name,
|
|
deptId: user.DeptId,
|
|
deptName: deptName,
|
|
}
|
|
|
|
}
|
|
|
|
// context.Log(`ユーザーリスト: ${JSON.stringify(userList)}`);
|
|
// ユーザーリストをHTML隠し要素に出力
|
|
context.Log('ユーザーリストをhiddenに格納しました。');
|
|
hidden.Add('userList', JSON.stringify(userList));
|
|
} |