如何在SSIS参数中使用相对路径?

问题描述 投票:0回答:2

我正在开发一个SSIS项目,我使用

parameters
,所以我不必更改包内的任何路径,当我在同事的计算机上运行该项目时,他们只需要更改
parameters
中的路径。

我的项目参数如下所示:

如何使用相对路径而不是像我的示例那样使用绝对路径,以便我的同事在他们的计算机上运行时不必更改任何内容?

ssis
2个回答
1
投票

如果 Python 路径中唯一会更改的是用户名,请考虑将其更改为带有表达式的变量:

"C:\\Users\\" + SUBSTRING( @[System::UserName], FINDSTRING(@[System::UserName],"\\",  1)+1 ,10) + "\\Anaconda3\\Python.exe"

如果

@[System::UserName]
在您的环境中不包含前缀域,只需使用:

"C:\\Users\\" + @[System::UserName] + "\\Anaconda3\\Python.exe"

我不知道有什么方法可以在参数中使用表达式,只能在变量中使用。


0
投票

如果您使用完整路径设置WorkingDirectory,那么您的Python将在该文件夹内执行,就像在CMD中CD到该文件夹一样。

  1. 因此将
    WorkingDirectory
    分配给项目的绝对路径,例如:
    C:\\User\etc
  2. 结合使用工作目录和相关文件夹来为应用程序的其他部分创建路径,例如:
    @[User::WorkingDirectory] + @[User::PathToTheFile]
  3. 您还可以将其部署为
    SSISDB
    ,以便使用项目参数轻松分配变量

© www.soinside.com 2019 - 2024. All rights reserved.