我有一个 SSIS 包,它只从特定文件夹中提取当前日期文件 Excel 文件的名称动态变化
文件名:XYZDailySettleTransaction_20220314_040117.xlsx
我可以得到 XYZDailySettleTransaction_20220314.xlsx
作为我的输出
下面是我的表达:
"XYZDailySettleTransaction_" +
(DT_WSTR, 4) YEAR(GETDATE()) +
RIGHT("0" + (DT_WSTR, 2) MONTH(GETDATE()),2) +
RIGHT("0" + (DT_WSTR, 2) DATEPART("DD", DATEADD("day",0,GETDATE())),2) +
"_" +".xlsx"
请帮助获取040117
这是动态的我真正想要的是表达式应该直接考虑
GETDATE()
之后的任何内容及之前 .xlsx
最佳答案
我建议在 FileSpec
中使用以下表达式ForEach 循环容器的属性以获取以当前日期前缀开头的所有文件:
"XYZDailySettleTransaction_" +
(DT_WSTR, 4) YEAR(GETDATE()) +
RIGHT("0" + (DT_WSTR, 2) MONTH(GETDATE()),2) +
RIGHT("0" + (DT_WSTR, 2) DATEPART("DD", DATEADD("day",0,GETDATE())),2) +
"_*.xlsx"
在 ForEach 循环容器中,选择 ForEach 文件枚举器选项,并在表达式表单中,将上述表达式分配给 FileSpec
属性如下图所示。关于excel - 如何在 SSIS 表达式中获取 Excel 文件名的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71466182/