首页 文章

Google Data Studio Connector getData缺失字段

提问于
浏览
0

我正在尝试为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 正在使用的对象只有一个字段"label."

在我的生活中,我没有能够弄清楚我在哪里出错了,真的可以使用一些帮助!

这是日志输出的链接:https://www.screencast.com/t/rpD7oz5ZuDdv

1 回答

  • 0

    在数据源初始化/配置期间调用getSchema() . 它适用于所有字段,通常在创建数据源时完成 .

    每当您在仪表板上创建/查看图表元素时,都会调用getData(),并且只调用该图表元素中的特定字段 . 此字段列表将在request.fields中传递 .

    workflow diagram可能会有所帮助 .

    在您的日志中,第3行和第4行发生在创建数据源时 . 第5行发生在向仪表板添加图表元素时(该图表元素只有 label 字段) .

相关问题