SSIS 将反斜杠加倍
SSIS is doubling up backslashes
我正在将一些文件名和位置作为变量加载到 SSIS 中,然后尝试使用 foreach 循环来执行流程任务。
在几次不成功的尝试之后,我意识到 SSIS 正在将我加载到变量中的字段中的所有反斜杠加倍。因此网络地址不起作用。
我们能阻止这种行为吗?
我加载的内容:
"\BBBB001\shared\GGGG\PiMSSSRSReportsPath\THM022\HHHH-NextWorkingDay-at1530.pdf"
我得到的:
"\\BBBB001\shared\GGGG\PiMSSSRSReportsPath\THM022\HHHH-NextWorkingDay-at1530.pdf"
SSIS 执行处理任务:
如您所见,foxit reader 无法识别后面带有双反斜杠的文件名。如果我手动输入第一个值,它将起作用。
为了将来参考,我找到了一个解决方法:
我没有在参数部分添加变量,而是创建了一个变量,其中包含要打印的文件的所有参数。像这样:
/t "FileLocation\FileName.pdf" PrinterName
然后把这个变量放到Execute process任务的表达式部分,加上argument,把final变量放在前面。像这样:
我正在将一些文件名和位置作为变量加载到 SSIS 中,然后尝试使用 foreach 循环来执行流程任务。
在几次不成功的尝试之后,我意识到 SSIS 正在将我加载到变量中的字段中的所有反斜杠加倍。因此网络地址不起作用。
我们能阻止这种行为吗?
我加载的内容:
"\BBBB001\shared\GGGG\PiMSSSRSReportsPath\THM022\HHHH-NextWorkingDay-at1530.pdf"
我得到的:
"\\BBBB001\shared\GGGG\PiMSSSRSReportsPath\THM022\HHHH-NextWorkingDay-at1530.pdf"
SSIS 执行处理任务:
如您所见,foxit reader 无法识别后面带有双反斜杠的文件名。如果我手动输入第一个值,它将起作用。
为了将来参考,我找到了一个解决方法:
我没有在参数部分添加变量,而是创建了一个变量,其中包含要打印的文件的所有参数。像这样:
/t "FileLocation\FileName.pdf" PrinterName
然后把这个变量放到Execute process任务的表达式部分,加上argument,把final变量放在前面。像这样: