我正在建立一个社区连接器并且正在摸索;该文件指出:
获取数据()
返回给定请求的表格数据。
要求
@param {Object} request 包含数据请求参数的 JavaScript 对象。
请求参数包含用户提供的值和可用于完成数据请求的附加信息。它具有以下结构:
{“configParams”:对象,“scriptParams”:{“sampleExtraction”:布尔值,“lastRefresh”:字符串},“dateRange”:{“startDate”:字符串,“endDate”:字符串},“字段”:[{对象(场地) } ] }
我已经正确设置了 getConfig() (至少,我的配置是从用户那里请求的),但是我的 getData 函数没有被传递给 configParams 对象。这是我的代码。
function getConfig(request) {
var Harvest = HarvestService({
token: getHarvestAuthService().getAccessToken()
});
var accounts = Harvest.accounts.list();
var options = accounts.map(function(account) {
return {
label: account.name,
value: account.id
};
});
var config = {
configParams: [
{
type: 'SELECT_SINGLE',
name: 'harvestAccountId',
displayName: 'Harvest Account ID',
helpText: 'The ID of the Harvest Account to pull data from.',
options: options
}
],
dateRangeRequired: true
};
return config;
}
function getData(request) {
var startDate = request.dateRange.startDate;
var endDate = request.dateRange.endDate;
var accountId = request.configParams.harvestAccountId;
var harvestAuthService = getHarvestAuthService();
var Harvest = HarvestService({
token: harvestAuthService.getAccessToken(),
account: accountId
});
var fieldKeys = request.fields.map(function(field) { return field.name; });
var entries = Harvest.entries.list({
startDate: new Date(startDate),
endDate: new Date(endDate)
});
var rows = entries.map(entryToRow);
return {
schema: request.fields,
rows: rows,
cachedData: false
};
}
当我测试/调试时,我可以在配置步骤中选择一个帐户,正确返回架构,但是当我尝试将小部件添加到报告时出现以下异常:
脚本错误消息:TypeError:无法从未定义中读取属性“harvestAccountId”。
脚本错误原因:用户脚本错误堆栈跟踪:getData:244
非常感谢任何建议。