函数 "REVERSE" 不支持参数编号 1 的数据类型 "DT_I4"
The function "REVERSE" does not support the data type "DT_I4" for parameter number 1
我正在尝试为 visual studio 中的一个变量创建表达式,但我收到此错误消息:
The function "REVERSE" does not support the data type "DT_I4" for
parameter number 1. The type of the parameter could not be implicitly
cast into a compatible type for the function. To perform this
operation, the operand needs to be explicitly cast with a cast
operator.
Evaluating function "REVERSE" failed with error code 0xC0047089.
这是我的代码:
SUBSTRING(@[User::FileName] , 1, REVERSE(FINDSTRING(@[User::FileName],"_", 1)))
请帮忙
错误信息很清楚,你正在做 FINDSTRING
的 REVERSE
。
REVERSE
的参数需要是字面值和 FINDSTRING
returns 一个整数 (DT_I4
).
我相信你想反过来做,首先 REVERSE
字符串,然后计算下划线的位置,这样 SUBSTRING
就可以获取到该点的字符:
SUBSTRING(@[User::FileName] , 1, FINDSTRING(REVERSE(@[User::FileName]),"_", 1))
编辑:试试这个来检索最后一个 _
.
之后的最后一部分
SUBSTRING(
@[User::FileName],
LEN(@[User::FileName]) - FINDSTRING(REVERSE(@[User::FileName]),"_", 1) + 2,
LEN(@[User::FileName])
- (LEN(@[User::FileName]) - FINDSTRING(REVERSE(@[User::FileName]),"_", 1) + 2)
- FINDSTRING(REVERSE(@[User::FileName]),".", 1) + 1)
我正在尝试为 visual studio 中的一个变量创建表达式,但我收到此错误消息:
The function "REVERSE" does not support the data type "DT_I4" for parameter number 1. The type of the parameter could not be implicitly cast into a compatible type for the function. To perform this operation, the operand needs to be explicitly cast with a cast operator.
Evaluating function "REVERSE" failed with error code 0xC0047089.
这是我的代码:
SUBSTRING(@[User::FileName] , 1, REVERSE(FINDSTRING(@[User::FileName],"_", 1)))
请帮忙
错误信息很清楚,你正在做 FINDSTRING
的 REVERSE
。
REVERSE
的参数需要是字面值和 FINDSTRING
returns 一个整数 (DT_I4
).
我相信你想反过来做,首先 REVERSE
字符串,然后计算下划线的位置,这样 SUBSTRING
就可以获取到该点的字符:
SUBSTRING(@[User::FileName] , 1, FINDSTRING(REVERSE(@[User::FileName]),"_", 1))
编辑:试试这个来检索最后一个 _
.
SUBSTRING(
@[User::FileName],
LEN(@[User::FileName]) - FINDSTRING(REVERSE(@[User::FileName]),"_", 1) + 2,
LEN(@[User::FileName])
- (LEN(@[User::FileName]) - FINDSTRING(REVERSE(@[User::FileName]),"_", 1) + 2)
- FINDSTRING(REVERSE(@[User::FileName]),".", 1) + 1)