润乾(报表展现)获取及处理(集算器)麦杰数据库数据
来源:互联网 发布:免费网络电视在线直播 编辑:程序博客网 时间:2024/09/21 09:05
短暂接触麦杰数据库,欢迎指正!
据了解,麦杰实时库虽之前提供过jdbc的连接方式,但后期基本不再维护, 而是统一由opnet(IOPConnect)方式代替,有完整的二次开发接口说明,可以针对实时及历史数据进行操作。
本文也将结合opnet方式,从麦杰数据库历史表获取历史数据并处理为可在报表解析展现的数据格式并在润乾报表中展现。
第一、 基于api获取历史表数据
注:这里不再说明如何设置数据库历史表,本文以w3库TEST_NODE节点的AX点的数据为例
核心代码如下
public class GetMaiJie {
//定义获取数据,并将获取的数据以序列格式返回给集算器处理
public static Sequence distance5(){
//获取数据连接
String IP = "182.50.125.90";
int PORT = 8001;
String USER_NAME = "sis";
String PASSWORD = "root";
Sequence sd = new Sequence();
OPConnect conn = null;
try {
conn = new OPConnect(IP,PORT,USER_NAME,PASSWORD);
} catch (UsersException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//获取数据的点
String[] pointNames = new String[] {"W3.TEST_NODE.AX"};
// 获取历史数据,开始和结束时间,即取某时间段的数据
Date FROM1 = null;
Date TO1 = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-M-dd HH:mm:ss");
try {
FROM1 = sdf.parse("2017-4-11 14:16:00");
TO1 = sdf.parse("2017-4-11 14:16:58");
} catch (ParseException e) {
e.printStackTrace();
}
Map<String, OPHisData[]> pn2HisMap= null;
try {
pn2HisMap =conn.getPointHistorys(pointNames, FROM1, TO1, OPNetConst.HISTORY_DATA_SAMPLE, 1);
} catch (IOException e2) {
e2.printStackTrace();
}
// 输出获取到的数据
for (Map.Entry<String, OPHisData[]> entry: pn2HisMap.entrySet()) {
String pn = entry.getKey();
OPHisData[] hiss = entry.getValue();
for (OPHisData his : hiss) {
//将数据放入序列
sd.add(his.toString());
}
}
System.out.println("finish...");
try {
conn.close();
} catch (IOException e) {
e.printStackTrace();
}
return sd;
}
注:集算器获取到的格式串为
DynamicData: time:2017-04-11 14:16:00.000,AV:60.0,AS:0
DynamicData: time:2017-04-11 14:16:01.000,AV:61.0,AS:0
DynamicData: time:2017-04-11 14:16:02.000,AV:62.0,AS:0
DynamicData: time:2017-04-11 14:16:03.000,AV:63.0,AS:0
DynamicData: time:2017-04-11 14:16:04.000,AV:64.0,AS:0
DynamicData: time:2017-04-11 14:16:05.000,AV:65.0,AS:0
DynamicData: time:2017-04-11 14:16:06.000,AV:66.0,AS:0
第二、 由集算器处理数据格式
目的是处理为二维表格式,以下是处理脚本(是不是很简单比java for来for去好多了),仅需一行,顺序读一次就解决了
处理后的数据格式
注:当然还有如果涉及大数据怎么办?答案是可以办,后面另出文章介绍。
第三、 报表内引入集算器数据集展现数据
报表web展现
- 润乾(报表展现)获取及处理(集算器)麦杰数据库数据
- 报表展现部件获取数据TABLE(DataTable)
- 数据展现---BIRT报表
- 使用多级分组报表展现分类数据
- 润乾——报表展现标签简介
- 润乾——报表展现和输出
- packageinstaller之权限获取及展现
- web页面上报表数据展现的编程简化
- 数据以报表形式展现的实现方法研究
- 数据以报表形式展现的实现方法研究
- 使用JavaScript面向对象编程展现报表数据
- 润乾报表两个无关联的数据集展现
- 学习《cognos bi报表展现及多维分析》
- Echarts地图报表,从数据库获取数据,json传值
- 2017云栖大会·杭州峰会:《云数据·大计算:海量日志数据分析与应用》之《数据分析展现:可视化报表及嵌入应用》篇
- 设置报表展现形式
- jasperreports报表Flash展现
- 数据展现
- 部署完ceph出现 osd down情况时的解决方法
- 用maven创建一个简单java工程
- textview不同颜色字体点击事件图片2
- JDBC获取数据库Connection的工具抽取
- 【IMWeb训练营团队作业】
- 润乾(报表展现)获取及处理(集算器)麦杰数据库数据
- Android开发-基础网络组件(1)使用HttpURLConnection登陆-AndroidStudio
- sublimelinter phpfmt php代码语法错误提示 代码缩进整理 插件自动删除没有引用的代码片段,解决办法
- c#反射
- 数组的顺序表示和实现【严蔚敏】
- 1.Java线程基础-Android线程相关
- error C4772: #import referenced a type from a missing type library; '__missing_type__' used as a pla
- Yann LeCun:掌舵Facebook人工智能 | 完美人物志
- 24c02存储多个数据