我正在尝试让this code工作。我知道它有些过时了,我已经将其固定在需要的位置。我正在尝试将数据上传到Salesforce中的对象。这是我尝试使用的脚本:
function upload(object, payload) {
var sfService = getSfService();
var userProps = PropertiesService.getUserProperties();
var props = userProps.getProperties();
var name = getSfService().serviceName_;
var obj = JSON.parse(props['oauth2.' + name]);
var instanceUrl = obj.instance_url;
var queryUrl = instanceUrl + "/services/data/v21.0/sobjects/" + object +"/";
UrlFetchApp.fetch(queryUrl, {
headers: {
Authorization: "Bearer " + sfService.getAccessToken()
},
contentType: 'application/json',
payload: payload,
method: "POST"
});
}
我不知道是有效载荷格式。例如,我有我的Account对象,并且想向其中加载一行数据。对于每列数据,我还具有将其映射到Salesforce中正确字段的标题。我如何使用此方法将数据插入Salesforce,同时将其映射到标题?我会用它创建一个JSON并将其作为有效载荷传递吗?
我通过使用以下脚本将有效负载转换为JSON对象(以及将DateTime字段更改为Date字段,这引起了某些问题,从而能够解决这一问题:]
function tableJSON(arr) {
var obj = {};
for (i = 1; i < arr.length; i++) {
for (j = 1; j < arr[0].length; j++) {
obj[arr[0][j]] = arr[i][j];
}
}
return JSON.stringify(obj);
}
这格式化了我的有效载荷,这只是我指定工作表中的数据范围。希望这可以帮助别人!