Я пытаюсь создать соединитель данных для HubSpot и бьюсь головой об стену, пытаясь понять это.Насколько я могу судить, я все делаю правильно, но в объекте запроса в вызове getData
отсутствует одно из моих полей, указанных в моей схеме.
Когда я проверяю журналы, getSchema
возвращает оба поля, но по какой-то причине у меня появляется только одно.Я включил код и журналы ниже:
function getData(request) {
console.log("ORIGINAL FIELDS FOR GETDATA(): " + JSON.stringify(request.fields));
switch (request.configParams.apiEndPoint) {
case "sources":
var url = API_URL + "/analytics/v2/reports/totals/summarize/daily?start=" + startYYYYMMDD + "&end=" + endYYYYMMDD;
break;
case "stages":
console.info("Fetching for Stages API");
var url = API_URL + "/deals/v1/pipelines/default";
getPipelineData(request, url);
break;
}
}
function getPipelineData(request, endPoint) {
var header_row = [];
console.log("FIELDS: " + JSON.stringify(request));
request.fields.forEach(function(field) {
for (var i = 0; i < mySchema.length; i++) {
console.log("for loop i: " + i);
console.log("mySchema[i]: " + JSON.stringify(mySchema[i]));
if (mySchema[i].name === field.name) {
console.log("Matched " + mySchema[i].name + " to " + field.name);
header_row.push(mySchema[i]);
} else {
console.error("Did not match " + mySchema[i].name + " to " + field.name);
}
}
});
Вы можете видеть в журнале о строке 5, что getSchema
возвращает 2 поля, "label" и "stageId".Тем не менее, следующая строка в журнале показывает, что объект, используемый getData
, имеет только одно поле, «метка».
Я НЕ, на всю жизнь, смог выяснить, где я ошибаюсь, и мог бы действительно помочь!
Вот ссылка на вывод журнала: https://www.screencast.com/t/rpD7oz5ZuDdv