我想在CloudConnect流程中提取原始报告结果。
到目前为止,我已设法从原始报告API端点获取响应 - https://secure.gooddata.com/gdc/app/projects/{project_id}/execute/raw/
此响应包含文件的URI,如果我将该URI放入浏览器,则会上载文件。
我尝试将此URI传递给以下读者但未成功:
-------------------错误详情------------------
组件[CSV Reader:CSV_READER]以状态ERROR结束 解析错误:记录1中的文件意外结束,字段1("日期"), 元数据" outOfStock&#34 ;; 值:原始记录数据不可用,请打开详细模式。
这样做的方法是什么?
修改
如果我使用@Filip建议的 HTTP连接器,我会收到以下错误:
错误详情:
组件[HTTP连接器:HTTP_CONNECTOR]以状态ERROR结束。主机名 证书没有匹配:xxx.com!= secure.gooddata.com或secure.gooddata.com
我尝试将标题设置为X-GDC-CHECK-DOMAIN: false
但没效果。
答案 0 :(得分:1)
HTTP连接器是正确的组件。将URL属性保留为空并使用名为“输入映射”的组件属性,在图形编辑器中,您可以将输入边缘字段分配给URL字段。
答案 1 :(得分:0)
来自GoodData支持的解决方案:
也可以使用HTTP连接器,但它非常复杂,因为 必须创建登录到GoodData。 REST连接器已构建 in。
如果要运行示例图,则必须登录 CloudConnect与有权访问您的项目的用户 想要导出报告。您还必须将URL更改为 REST连接器组件和更改项目中的白色标记帐户之一 并在第一个REST连接器中报告定义。
所以有效图表如下:
以下是您需要为每个元素设置的主要字段:
Request URL = https://secure.gooddata.com/gdc/app/projects/${GDC_PROJECT_ID}/execute/raw/
Request Body =
{
"report_req": {
"reportDefinition": "gdc/md/${GDC_PROJECT_ID}/obj/${OBJECT_ID}"
}
}
从响应中获取URI - 只需将 uri 值映射到相应的字段:
<Mapping cloverField="uri" xpath="uri"/>
加载结果 - 确保它连接到包含两个字段的元数据,一个用于响应数据,另一个用于通过uri
。
加载结果 - 您需要排除uri
字段来处理数据:
Exclude Fields = uri