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

<< Click to Display Table of Contents >>

当前位置:  系统集成 > WebAPI 

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

Previous pageReturn to chapter overviewNext page

请求地址

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>Table1</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>Table1</ename>

  </getdata>

</info>

或者

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

<info>  

  <getdata>

     <dbpath>典型功能演示/图表</dbpath>  

     <ename>Chart10</ename>

  </getdata>

</info>

或者

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

<info>  

  <getdata>

     <getMarkNames>true</getMarkNames>

     <dbpath>典型功能演示/图表</dbpath>  

     <ename>Chart10</ename>

  </getdata>

</info>

或者

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

<info>  

  <getdata>

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

     <dbpath>典型功能演示/图表</dbpath>  

     <ename>Chart10</ename>

  </getdata>

</info>

参数描述

参数为节点信息:

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

2) dbpath(必填):仪表盘的路径

3) ename(必填):仪表盘组件名称

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

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

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

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

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

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

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>

结果描述

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

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