ken_nogi/pleasanter/develop/総務 【β】売却・相続)名義変更一覧/99_帳票スクリプト.js
Kenichiro NOGI 48d993652f 20251006
2025-10-06 09:23:38 +09:00

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