1.20获得报告中表格、交叉表、自由式表格、图表组件的数据

<< Click to Display Table of Contents >>

当前位置:  部署与集成 > WebAPI 

1.20获得报告中表格、交叉表、自由式表格、图表组件的数据

复制链接

请求地址

http://ip:port/bi/api?action=getElemData&token=xxxx

请求消息

请求参数

请求参数:xmlData(必填)

<?xml version="1.0" encoding="UTF-8"?>

<info>  

 <user></user>

 <page>

    <pageSize>1</pageSize>  

    <pageNow>1</pageNow>  

 </page>

 <getdata>

    <dbpath>新建文件夹/图表1</dbpath>  

    <ename>图表1</ename>

     <textContent>true</textContent>

 </getdata>

 <params>

        <param name="param" type="dateTime">2017-05-19 19:16:14</param>

 </params>

</info>

如果不使用分页,则用全量数据,即

<?xml version="1.0" encoding="UTF-8"?>

<info>  

 <getdata>

    <dbpath>新建文件夹/图表1</dbpath>  

    <ename>图表1</ename>

 </getdata>

</info>

或者

<?xml version="1.0" encoding="UTF-8"?>

<info>  

 <getdata>

    <dbpath>新建文件夹/图表</dbpath>  

    <ename>图表10</ename>

 </getdata>

</info>

或者

<?xml version="1.0" encoding="UTF-8"?>

<info>  

 <getdata>

    <getMarkNames>true</getMarkNames>

    <dbpath>新建文件夹/图表</dbpath>  

    <ename>图表10</ename>

 </getdata>

</info>

或者

<?xml version="1.0" encoding="UTF-8"?>

<info>  

 <getdata>

    <markame>Bar[Mark[Sum_SALES]]</markame>

    <dbpath>新建文件夹/图表</dbpath>  

    <ename>图表10</ename>

 </getdata>

</info>

参数描述

参数为节点信息:

user(选填):想要查看的目标用户名。

dbpath(必填):报告的路径。

ename(必填):报告组件名称。

type(选填):报告的类型,参数值包括db、dblink、adb、vividdb、portalCell、vividdblink,未填写时为db。(10.1开始支持type参数)

db:分析报告。

dblink:分析报告的链接。

adb:即席分析报告。

vividdb:大屏报告。

vividdblink:大屏报告链接。

textContent(选填):true时,可以获取到非绑定(通过脚本赋值或手工输入)的文本数据

page(选填):page中pageSize和pageNow的值应大于等于1。pageSize是每页显示多少条,pageNow是返回第几页的结果。

params(选填):里面可以传一些参数,对查询进行控制。type是参数的类型,主要有以下几种:string、boolean、float、double、char、byte、short、int、long  、time、dateTime。如果参数有多个值,用逗号","分隔。

getMarkNames(选填):部分图表组件(如柱状图)可以绑定多个度量数据,不同度量数据可以根据不同的标签进行分类,该参数为true时,可以获取图表组件上绑定度量列的列表。

markame(选填):图表组件绑定有多个度量列时,指定获取度量列的数据,如果为空,则获取第一个度量列的数据。度量列的名称可以使用getMarkNames获取。

日期类型的参数格式如下:

date的格式为 "yyyy-MM-dd"

datetime的格式为 "yyyy-MM-dd HH:mm:ss"

time的格式为 "HH:mm:ss"

示例

function getData() {

       var xml = getXml();

       $.post("http://" + ip + ":" + port + "/" + project + "/api?action=getElemData&token=xxxx",

          {xmlData : xml},

          function(result) {

          writeXml(result);

       });

    }

响应消息

响应结果

操作成功

<?xml version="1.0" encoding="utf-8"?>

<info>

<page>

  <rowCount>4248</rowCount>              <-- 数据量的大小 -->

  <pageCount>4248</pageCount>           <-- 总的页数 -->

  <pageSize>1</pageSize>                        <-- 每页数据量的大小 -->

  <pageNow>1</pageNow>                      <-- 当前页 -->

</page>

<grid>

  <row>

    <header type="dateTime">DATE</header>

    <header type="string">PRODUCT_TYPE</header>

    <header type="string">PRODUCT</header>

    <header type="int">SALES</header>

  </row>

  <row>

    <col>2009-01-01 00:00:00.0</col>

    <col>Coffee</col>

    <col>Amaretto</col>

    <col>219</col>

  </row>

</grid>

</info>

结果描述

type标签为图表的类型,包含的类型见附录。不能使用自动类型和组织图,否则type没有值。如果一个图表包含多种类型,则会得到多个类型以逗号拼接的字符串。

grid标签为返回数据表结构。其中row为行,header为列名,col为列。标签内分别对应相应的值。非管理员账户不能查看其它账户数据。