这个布尔条件有什么问题?
(
Left(
[Article].[Main Article Alternative ID CPG].currentmember.Properties('Member_Caption')
,(Instr(
[Article].[Main Article Alternative ID CPG].currentmember.Properties('Member_Caption')
, ' '
)-1)
)='ABC'
)
错误说:-1参数超出有效范围
答案 0 :(得分:0)
这很好:=Instr("OPRS" + " "," ")
因为您要搜索的字符串位于字符串中。
您有以下内容:
LEFT(
[Article].[Main Article Alternative ID CPG].currentmember.Member_Caption
,INSTR(
[Article].[Main Article Alternative ID CPG].currentmember.Member_Caption
, ' '
)-1
)='ABC'
如果找不到' '
,则INSTR([Article].[Main Article Alternative ID CPG].currentmember.Member_Caption , ' ')
会返回0,因此您将拥有LEFT("xxx", -1)
,因此无效的参数例外。
您可以添加初步检查:
IIF(
INSTR(
[Article].[Main Article Alternative ID CPG].currentmember.Member_Caption
, ' '
) = 0
,NULL
,LEFT(
[Article].[Main Article Alternative ID CPG].currentmember.Member_Caption
,INSTR(
[Article].[Main Article Alternative ID CPG].currentmember.Member_Caption
, ' '
)-1
)='ABC'
)