我希望在列中显示管理员名称(在AD中为用户定义),具体取决于另一列中的选择。例如。
第1列 - 员工姓名 第2栏 - 部门 第3栏 - 经理
第1列填充了员工姓名并保存。它是"用户或群组"类型列 第2列是"人或组"带有"显示字段"的列选项设置为部门。我有一个工作流,从一个新条目开始,该条目获取第1列数据并将其应用于第2列,从而显示用户部门。
我的问题出在"显示字段"选项没有经理选择。有没有办法将其显示为选择,还是有另一种方式让我根据员工的选择来填充用户经理?
我尝试过的另一个选择是为"查找"当前员工(输出到变量:manager)然后更新管理器列以使用变量管理器中的数据,但似乎没有显示任何内容。 enter image description here也许我在这里做错了..
任何帮助都将不胜感激。
更新了屏幕截图信息
enter image description here
答案 0 :(得分:0)
答案 1 :(得分:0)
您可以在New Form上获取所有三个值,然后保存它。 使用SPServices jQuery。只需下载最新的一个。以下是剧本。
<script type="text/javascript" src="/your path to JS/SiteAssets/JS/jquery-3.1.1.js"></script>
<script type="text/jscript" src="/your path to JS/SiteAssets/JS/jquery.SPServices.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var managerName;
var userName = $().SPServices.SPGetCurrentUser();
$().SPServices({
operation: "GetUserProfileByName",
async: false,
AccountName: userName,
completefunc: function (xData, Status)
{
managerName = $(xData.responseXML).text();
var managerLength = managerName.length;
var indexofManager = managerName.indexOf("ManagerPublic");
managerName = managerName.substring(indexofManager+13, managerLength);
var indexOffalse = managerName.indexOf("false");
managerName = managerName.substring(0, indexOffalse);
}
});
var UserDept = $().SPServices.SPGetCurrentUser({
fieldName: "Department",
debug: false
});
var CurrentUser = $().SPServices.SPGetCurrentUser({
fieldName: "Title",
debug: false
});
$("input[title*='Employee Name']").val(CurrentUser); // For assigning to SharePoint column named 'Employee Name'
$("input[title*='Department']").val(UserDept); // For assigning to SharePoint column named 'Department'
var Mgr = $().SPServices.SPFindPeoplePicker({
peoplePickerDisplayName: "Manager", // For assigning to SharePoint column named 'Manager'
valueToSet: managerName,
checkNames: true
});
});
</script>