管理员有10个联系人。其中一个用户有15个联系人。当我使用RESTlet获得单一联系时,输出来了。但是,当我得到所有联系人时,它无法获取所有联系人。它试图获得管理员的联系。
用户不应访问管理员帐户的联系人。它显示错误,
[code] => INSUFFICIENT_PERMISSION
[message] =>出于安全原因,只允许管理员编辑管理员记录。
i)我想获取与管理员帐户无关的所有记录。
ii)我想只获取与任何帐户无关的所有记录。
function getAllIDs(datain) {
var MAX_SIZE = typeof (datain.size) == 'undefined' ? 200 : datain.size;
var INDEX = 0;
if (typeof (datain.index) !== 'undefined') {
INDEX = datain.index * MAX_SIZE;
MAX_SIZE += INDEX;
}
var NS_filters = new Array();
var columns = new Array();
columns[0] = new nlobjSearchColumn('lastmodifieddate').setSort(1);
var search = nlapiCreateSearch(datain.recordtype, NS_filters, columns)
var results = search.runSearch();
var records = results.getResults(INDEX, MAX_SIZE);
return records;
}
function get_Allrecords(datain) {
var all_IDs = getAllIDs(datain);
var len = all_IDs.length;
var result = new Array();
for (var i = 0; i < len; i++) {
result[i] = nlapiLoadRecord(all_IDs[i].getRecordType(), all_IDs[i].id)
}
return result;
}
$datastring = array('recordtype' => 'contact','size' => 100,'index'=>0);
$data_string = json_encode($datastring);
答案 0 :(得分:1)
基于聊天讨论
1)您不希望将执行设置为角色管理员 2)问题适用于公司字段指向客户/合作伙伴的联系人。
错误不是由于RESTlet或脚本造成的,而是由于当前用户对所选公司联系人记录值的作用的限制。
请注意,限制可能是因为:
1)部门,班级和地点(部门,班级,角色的位置限制) 2)根据角色设置,很少有员工只能访问您是销售代表的客户(员工角色限制)