自定义日期时间字符串的日期时间:Mid()有太多参数?

时间:2011-07-06 14:55:34

标签: crystal-reports crystal-reports-2008

在下面的公式中,我试图将自定义日期字符串(yyyymmddhhmmss)转换为日期(日期,而不是日期时间)。当我尝试保存以下内容时,我收到一条错误消息,指出“已为此函数提供了太多参数”,并且两个Mid语句都突出显示。 CR IDE显示Mid的过载,它接受三个参数。我从头开始重写公式几次都无济于事。有什么建议吗?

CDate (Left({ABC.ArrivalDT},4),Mid({ABC.ArrivalDT},5,2),Mid({ABC.ArrivalDT},8,2))

2 个答案:

答案 0 :(得分:1)

DateValue({ABC.ArrivalDT}[1 to 4] + "/" + {ABC.ArrivalDT}[5 to 6] + "/" + {ABC.ArrivalDT}[7 to 8])

答案 1 :(得分:0)

好的,这是一个有效的解决方案。我也改变了主意,决定去约会时间,而不仅仅是我原来帖子中陈述的日期。

CDateTime (
    CDate (
    tonumber(Left({ABC.ArrivalDT},4)),
    tonumber (Mid({ABC.ArrivalDT},5,2)),
    tonumber (Mid({ABC.ArrivalDT},7,2))
    )
,
    CTime (
    tonumber (Mid({ABC.ArrivalDT},9,2)),
    tonumber (Mid({ABC.ArrivalDT},11,2)),
    00
    )
)