嗨,我正在使用下面的表达式作为带有日期时间戳的文件名。
(DT_I4)DATEPART("weekday", GETDATE() ) ==2 || (DT_I4)DATEPART("weekday",@[System::StartTime]) ==7 ?
Replace((DT_STR, 20, 1252)(DATEADD( "D", -3,@[System::StartTime])),":","-") + ".xls" :
Replace((DT_STR, 20, 1252)(DATEADD( "D", -1,@[System::StartTime])),":","-") + ".xls"
这将给我以前的日期总是我的需要。
但是当我将文件名附加到这个表达式时,它给了我以下错误 -
"FILENAME"+
(DT_I4)DATEPART("weekday", GETDATE() ) ==2 || (DT_I4)DATEPART("weekday",@[System::StartTime]) ==7 ?
Replace((DT_STR, 20, 1252)(DATEADD( "D", -3,@[System::StartTime])),":","-") + ".xls" :
Replace((DT_STR, 20, 1252)(DATEADD( "D", -1,@[System::StartTime])),":","-") + ".xls"
错误 - 数据类型“DT_WSTR”和“DT_I4”与二元运算符“+”不兼容。操作数类型无法隐式转换为操作的兼容类型。要执行此操作,需要使用强制转换运算符显式强制转换一个或两个操作数。
尝试设置二进制操作“@[User::AnimalName] + (DT_I4)DATEPART("weekday",@[System::StartTime])”的结果类型失败,错误代码为 0xC0047080。
(Microsoft.DataTransformationServices.Controls)