我正在用BusinessObjects DeskI编写这个公式,但它返回语法错误。这是我的公式:
=IF(length(<Dt_Credit>=0) then <Dt_Credit>=(TODATE("01011900","ddMMyyyy") )
ELSE <DT_Credit>发布于 2016-05-05 12:18:04
你的公式有很多问题。让我们把它分解:
=IF ( length(<Dt_Credit>=0)
then <Dt_Credit>= (
TODATE("01011900","ddMMyyyy")
)
ELSE <DT_Credit>首先,您没有结束括号。如果/然后中不需要括号,那么您可以在If之后删除那个括号吗?您也不需要在ToDate函数周围加上括号。所以我们有:
=IF length(<Dt_Credit>=0)
then <Dt_Credit> = TODATE("01011900","ddMMyyyy")
ELSE <DT_Credit>接下来,在公式中对<Dt_Credit>对象进行赋值,这是不可能的。所以我们把它拿出来:
=IF length(<Dt_Credit>=0)
then TODATE("01011900","ddMMyyyy")
ELSE <DT_Credit>接下来,我假设<Dt_Credit>实际上是一个Date对象,而不是Number。如果是这样的话,那么Length()函数就不会工作,因为它不接受日期作为参数。如果您正在测试空白的<Dt_Credit>,那么应该使用IsNull():
=IF IsNull (<Dt_Credit>)
then TODATE("01011900","ddMMyyyy")
ELSE <DT_Credit>最后,我假设您使用的是DeskI。如果是WebI,那么语法就有点不同了。将<>替换为。
https://stackoverflow.com/questions/37046957
复制相似问题