business-objects - 在 Business Objects 中将计时器格式 hh:mm 转换为十进制格式 hh.decimal(mm)
问题描述
目的是根据当前时间格式化的列创建一个新的数据列。例如,我想要 4:20 -> 4.33。我找不到一种方法来操纵时间格式来分别提取小时和分钟以使用小时+(分钟/60)。
任何帮助表示赞赏。谢谢你。
解决方案
要从日期时间对象中挑选特定部分,您需要使用FormatDate()函数。它返回一个字符串,您需要在将小时和分钟相加之前使用ToNumber()函数将其转换为数字。所以让我们创建一些变量......
Current DateTime=CurrentDate()
Hours=ToNumber(FormatDate([Current DateTime];"hh"); "##")
Minutes=ToNumber(FormatDate([Current DateTime];"mm"); "##")
Hours Minutes Decimal=[Hours] + ([Minutes]/60)
如果您想将所有这些放在一个变量中,您当然可以这样做......
Hours Minutes Decimal All in One=ToNumber(FormatDate(CurrentDate();"hh"); "##") + (ToNumber(FormatDate(CurrentDate();"mm"); "##")/60)
要找到有关哪些值对应于日期时间值的哪些部分的文档,请执行以下操作...
- 导航到变量编辑器中的 FormatDate() 函数。
- 点击右下角的“更多关于这个功能”。
- 点击“自定义格式”