所以我在水晶报告中有一个条形图。在此图表上,我有一个数据标签附加到每个图表,以秒为单位显示图表的值,如下所示: 我想做的是将此数据标签格式化为时间格式。因此,对于图表中的每个条形,数据标签将以以下格式显示:
HH:MM:SS
我可以使用以下公式获得时间格式:
local NumberVar Sec;
local NumberVar ss;
local NumberVar mm;
local NumberVar hh;
local StringVar SSS;
local StringVar MMM;
Sec := Sum ({GetAlarmSummaryDataSet2Response/GetAlarmSummaryDataSet2Result/Items/AlarmSummaryItem2.StopTime}, {GetAlarmSummaryDataSet2Response/GetAlarmSummaryDataSet2Result/Items/AlarmSummaryItem2.Section}) ;
hh := Int (Sec/3600);
mm :=Int ((Sec/60)- (60* Int(Sec/3600 )));
If mm<10 then MMM := "0" & ToText (mm,0);
If mm>9 Then MMM := ToText(mm,0) ;
ss :=Sec-(3600 * hh ) - (60 * mm ) ;
If ss<10 then SSS := "0" & ToText (ss,0);
If ss>9 Then SSS := ToText(ss,0) ;
ToText ( hh,0) & ":" & MMM & ":" & SSS
但我不确定的是如何在数据标签上实现这个公式。
非常感谢任何帮助或建议。
谢谢
答案 0 :(得分:1)
您可以选择显示组名称,并且可以显示和格式化图表计算的汇总值,但不能提供自定义公式。在CR XI中使用图表库是不可能的。
此问题的最终解决方法:
Chr(13) & Chr(10)
分隔,以将它们放在不同的行上。要将此问题应用于您的问题,您需要进行以下更改:
如果这对您的应用程序来说还不够好,您可以考虑CRChart,这是一个商业替代品,试图解决Crystal图表库有时会受到严重限制的问题。 (我认为它太贵了。)我认为@APPEND_DATATEXT宏会让你在一个提升板上放置一个自定义值,但你仍然需要将摘要移动到服务器上。