我在数据库中有以下形式的错误数据:
faultid | faultcode | startdatetime | enddatetime
虽然每隔几秒钟对设备进行轮询,但只有在设备状态发生变化时才会更新数据库中的条目,因此我可能会遇到持续数分钟,数小时甚至数天的故障。
我想将故障时间表示为间隔时间与时间的分钟,例如30分钟,1小时,1天间隔;这样,持续几个间隔的断层会随着时间的推移在图表中增加宽度,而不是在开始时间内作为一个巨大的单一条形。如果可能的话,我想以独立于平台的方式做到这一点。
图表报告可以从Java应用程序中按需运行和查看。
我尝试使用谷歌搜索类似的问题/解决方案,但要么我在谷歌搜索错误的东西或没有很多人做这种事情或更明显地做了一些我没有得到的方式 - 我是否会这样做错?
尝试的事情:
我使用BIRT进行报告,它似乎无法将数据按到我需要的图表所需的形式,除非我深入了解BIRT脚本 - 但是到目前为止文档和资源都有还不足以让我甚至接近这样做 - 任何想法?
我考虑过使用BIRT的连接后打开脚本来首先执行自定义SQL操作,但是再次缺乏可用的文档和资源使得它似乎无法在这里完成。
在一个实例中,我使用SQL Server存储过程来生成填充数据,创建间隔数据,其中enddatetime - startdatetime>间隔。每次调用报告时都会调用此过程。这很好用,但我需要为我使用的每个不同的数据库/报告维护一个存储过程,并且觉得必须有更好的方法。
我们使用Pentaho Kettle进行数据存档,我尝试使用它来执行数据填充,但似乎不可能让Kettle生成这样的数据 - 任何想法?
我考虑过从Java应用程序生成填充数据,但这意味着应用程序需要了解该报告才能运行它 - 我想要更好的抽象,那么UI开发人员和报表设计人员是完全分开的。
感谢。