组态王报表遇见问题 点击:2739 | 回复:5



黄家磊

    
  • 精华:0帖
  • 求助:29帖
  • 帖子:35帖 | 80回
  • 年度积分:0
  • 历史总积分:177
  • 注册:2015年8月01日
发表于:2016-12-13 00:10:45
楼主
求助帖20分-未结帖

各位前辈,组态王做了个报表(历史数据查询),想着每天记录一次。现在测试发现记录的数据不对。(我是通过人为修改变量值即模拟值输入,以及修改计算机日期时间的形式)附上closeup脚本,前辈们看下是脚本问题还是我的测试方法不对,跪求指点。

if(XEn0==1&&YEn0==1){[A]201=SIf_singl;}//先测试201单只

float Ayear;

float Amonth;

float Aday;

long x;

long y;

long Col;

long StartTime;

string temp;

Ayear=ADate.Year;

Amonth=ADate.Month;

Aday=ADate.Day;

temp=StrFromInt( Ayear, 10 );

if(Amonth<10)

temp=temp+"-0"+StrFromInt( Amonth, 10 );

else

temp=temp+"-"+StrFromInt( Amonth, 10 );

if(Aday<10)

temp=temp+"-0"+StrFromInt( Aday, 10 );

else

temp=temp+"-"+StrFromInt( Aday, 10 );

\\本站点\选择日期=temp;

ReportSetCellString2("Report1", 3, 2, 7, 16, " "); //清空单元格

//ReportSetCellString("Report1", 2, 2, temp);//填写日期,封存,没必要保留

//查询数据

StartTime=HTConvertTime(Ayear,Amonth,Aday,8,0,0);

ReportSetHistData("Report1", "\\本站点\[A]201", StartTime, 86400, "B3:P3");//每天记录一次

ReportSetHistData("Report1", "\\本站点\[A]202", StartTime, 86400, "B4:P4");

ReportSetHistData("Report1", "\\本站点\[A]203", StartTime, 86400, "B5:P5");

ReportSetHistData("Report1", "\\本站点\[A]204", StartTime, 86400, "B6:P6");

ReportSetHistData("Report1", "\\本站点\[A]205", StartTime, 86400, "B7:P7");

//填写时间

x=0;//定义为列号

       while(x<16)//小于表格总列数,即要求的15天

       {

       Col=2+x;//第一列被占用

       y=StartTime+x*86400;

       temp=StrFromTime( y, 1 );//按控制面板日期显示

       ReportSetCellString("Report1", 2, Col, temp);//此处修改liu2016.12.8,将日期填制第一行每一列

       x=x+1;

       }




黄家磊

  • 精华:0帖
  • 求助:29帖
  • 帖子:35帖 | 80回
  • 年度积分:0
  • 历史总积分:177
  • 注册:2015年8月01日
发表于:2016-12-13 10:59:29
1楼


回复内容:

对: shenzhiwu521 ························· 内容的回复!

咋的了

爱海无涯

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 17回
  • 年度积分:0
  • 历史总积分:61
  • 注册:2016年12月04日
发表于:2016-12-13 15:20:14
2楼

你这是用日历,,每天记录一次写在变量域日里就行了,,日历是用来查询的,,日历随便选个日期,把今天数据记录进去做什么

水中的蓝天_55

  • [版主]
  • 精华:1帖
  • 求助:3帖
  • 帖子:55帖 | 1688回
  • 年度积分:0
  • 历史总积分:13063
  • 注册:2004年4月02日
发表于:2016-12-13 16:27:34
3楼

没有看明白,下面是我写的脚本

\\本站点\终止时刻长整数30=HTConvertTime(\\本站点\$年,\\本站点\$月,\\本站点\$日,\\本站点\$时,0,0);

\\本站点\起始时刻长整数30=\\本站点\终止时刻长整数30-86400;

long jiange;

long hang;

string Lweizhi1;

string Lweizhi2;

string Lweizhi3;

jiange=\\本站点\终止时刻长整数30-\\本站点\起始时刻长整数30;

hang=jiange/3600+2;

\\本站点\填充行=StrFromInt( hang, 10 );

Lweizhi1="a2:a"+\\本站点\填充行;

Lweizhi2="b2:b"+\\本站点\填充行;

Lweizhi3="c2:c"+\\本站点\填充行;

ReportSetTime("Report6", \\本站点\起始时刻长整数30, 3600, Lweizhi1);

ReportSetHistData("Report6", "\\本站点\ff", \\本站点\起始时刻长整数30, 3600, Lweizhi2);

ReportSetHistData("Report6", "\\本站点\dd", \\本站点\起始时刻长整数30, 3600, Lweizhi3);

每隔1小时,这是24小时内的报表。



黄家磊

  • 精华:0帖
  • 求助:29帖
  • 帖子:35帖 | 80回
  • 年度积分:0
  • 历史总积分:177
  • 注册:2015年8月01日
发表于:2016-12-13 19:11:12
4楼


回复内容:

对: 水中的蓝天_55 没有看明白,下面是我写的脚本\\本站点\终止时刻长整数... 内容的回复!

感谢前辈,我想让数据每天记录一次,能给个联系方式吗?我电话您,打字我表达的不太清楚,谢谢

技术曲工

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2015年7月10日
发表于:2019-06-06 17:00:51
5楼

希望有机会合作

QQ图片20190604094136.png


热门招聘
相关主题

官方公众号

智造工程师