0

有人可以让我知道下面的 IIF 语句是否意味着输出任何以 4 开头的值吗?

=IIF(LEFT(CStr(Fields!CLOCK_NUMBER.Value),1)="4",Fields!JOB_NO.Value, "")

4

2 回答 2

1

简短的回答是肯定的。

从中间开始向外工作,这个表达式正在执行以下操作..

  1. 获取字段 CLOCK_NUMBER 的值
  2. 将其转换为字符串(CSTR 函数)
  3. 取第一个字符(以 1 作为秒参数的 LEFT 函数)
  4. 如果等于“4”,则返回 JOB_NO 中的值
  5. 否则返回一个空字符串

如果由于某种原因这不起作用,请尝试在返回之前将 job_no 转换为字符串,这样可以确保始终返回字符串(如果 JOB_NO 是数字)。您可以像这样简单地将 job_no 包装在 CSTR 中CSTR(Fields!JOB_NO.Value)

于 2019-03-13T17:15:41.430 回答
0

转换为...“尝试”将字段CLOCK_NUMBERS's本机值转换为字符串并取 LEFT(1) 最重要的数字,如果该值为“4”,则返回JOB_NO字段的值。否则返回空字符串。

所以,如果第一个数字是 4 则返回JOB_NO

于 2019-03-13T17:15:45.377 回答