无法使用自定义对象重置Archer记录权限字段的问题求助
无法使用自定义对象重置Archer记录权限字段的问题求助
各位好,我遇到了一个Archer系统里的奇怪问题,想请大家帮忙看看:
目前我的代码在设置记录权限字段时工作完全正常,但当我从交叉引用控件中重置选择后,点击保存按钮时记录权限字段看起来是被清空了,可退出记录回到视图模式后,这个字段又恢复成了之前的旧值,就好像重置操作根本没生效一样。这个问题是最近才出现的,之前没遇到过。
有没有人能提供不同的代码来正确重置/清空这个记录权限字段呀?非常感谢!
系统环境
- SaaS版本: 2024.09,Build: 6.15.00302.10262
当前使用的代码
function AssignUser() { UserArr = []; var selectedUserId = $('input[name*="SelectedValues' + fldIds.SelectUser + '"]').val(); if (selectedUserId != '[]') { var selUserId = selectedUserId.substring(1, selectedUserId.length - 1); userId = GetAssociatedContactUser(selUserId); UserArr.push({ id: userId, name: "" }); } GetUserName(UserArr); SetRecordPermission(UserArr, FieldId, 'user'); } function GetUserName(userArr) { var i; for (i = 0; i < userArr.length; i++) { var url = baseURL + "/api/core/system/user/" + userArr[i].id; var headers = { 'x-csrf-token': csrfToken }; $.ajax({ headers: headers, url: url, data: '', type: 'GET', contentType: 'application/json', processData: false, async: false, dataType: 'json', success: function (data, textStatus, jqXHR) { //alert(JSON.stringify(data.RequestedObject, undefined, 2)); userArr[i].name = data.RequestedObject.DisplayName; }, error: function (data, textStatus, jqXHR) { alert(JSON.stringify(data, undefined, 2)); } }); } } function SetRecordPermission(buStaff, flId, itemType) { var RPFieldRoot = ArcherTech.UI.ClientContentManager.GetInstance().getFieldById(flId), UsrArray = []; var RPFieldRootId = RPFieldRoot.clientId; var displayNames = ""; var ids = ""; var i; for (i = 0; i < buStaff.length; i++) { UsrArray.push({ name: buStaff[i].name, value: buStaff[i].id + ":" + (itemType == "group" ? 2 : 1) }); displayNames += buStaff[i].name + " "; ids += buStaff[i].id + ","; } var serialized = Sys.Serialization.JavaScriptSerializer.serialize(UsrArray); ids = ids.substring(0, ids.lastIndexOf(',')); //alert(serialized); $('input[id*="' + RPFieldRootId + '_"]').val(serialized); $('div[id*="' + RPFieldRootId + '_"] div:first-child').text(displayNames); if (itemType == "group") { $('#SelectedGroups' + flId).val(ids); } else { $('#SelectedUsers' + flId).val(ids); } } function GetAssociatedContactUser(ctId) { var id = 0; var userid; var url = baseURL + "/api/core/content/" + ctId; var headers = { 'x-csrf-token': csrfToken }; $.ajax({ headers: headers, url: url, data: '', type: 'GET', contentType: 'application/json', processData: false, async: false, dataType: 'json', success: function (data, textStatus, jqXHR) { userid = data.RequestedObject.FieldContents[fldIds.RSAArcherUserAccountCT].Value; }, error: function (data, textStatus, jqXHR) { alert(JSON.stringify(data, undefined, 2)); } }); if (userid !== null && userid !== 'undefined') return userid.UserList[0].Id; else return id; } });
备注:内容来源于stack exchange,提问作者user616912
相关产品推荐
相关产品推荐

