Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssis 在执行包任务中动态设置PackageName_Ssis_Sql Server 2008 R2 - Fatal编程技术网

Ssis 在执行包任务中动态设置PackageName

Ssis 在执行包任务中动态设置PackageName,ssis,sql-server-2008-r2,Ssis,Sql Server 2008 R2,如何在执行包任务中动态设置PackageName 我已经将包列表选择到一个用户变量中,并得到了一个ForEach循环,其中包含一个脚本任务,显示了我在其中追求的值Dts.Variables[“User::TgtPackage”].Value.ToString() 但我试过用 用户::TgtPackage Dts.Variables[“User::TgtPackage”].Value.ToString() 在PackageName中,但两者都不起作用因为您在2008年,在执行包任务中引用包的方

如何在执行包任务中动态设置PackageName

我已经将包列表选择到一个用户变量中,并得到了一个ForEach循环,其中包含一个脚本任务,显示了我在其中追求的值
Dts.Variables[“User::TgtPackage”].Value.ToString()

但我试过用

  • 用户::TgtPackage
  • Dts.Variables[“User::TgtPackage”].Value.ToString()

在PackageName中,但两者都不起作用

因为您在2008年,在执行包任务中引用包的方式是在文件系统或SQL Server中。然后,执行包任务将使用您的连接管理器

对于基于文件的连接管理器,需要在文件连接管理器的
ConnectionString
属性上设置表达式。右键单击连接管理器,在“属性”窗格的“查找表达式”部分中,单击省略号并将连接字符串映射到
@[User::TgtPackage]
(假设TgtPackage的值是完全限定的路径)

对于基于SQL Server的包,需要在执行包任务的
PackagePath
属性上设置表达式。双击执行包任务,在表达式选项卡上,将PackagePath属性映射到
@[User::TgtPackage]
值(假设TgtPackage的值只是包名,例如so_26718490Target)

Biml Biml是商业智能标记语言。如果您有免费的插件,您可以添加一个Biml文件,并使用以下代码生成一个包,该包使用For Each Item枚举器。其中包含一个使用基于文件的源的执行包任务

有关配置软件包名称的Biml示例,请参阅


c:\Sandbox\SO\SO\SO\u 26718490Target.dtsx
@[用户::TgtPackage]

由于您在2008年,在执行包任务中引用包的方式是在文件系统或SQL Server中。然后,执行包任务将使用您的连接管理器

对于基于文件的连接管理器,需要在文件连接管理器的
ConnectionString
属性上设置表达式。右键单击连接管理器,在“属性”窗格的“查找表达式”部分中,单击省略号并将连接字符串映射到
@[User::TgtPackage]
(假设TgtPackage的值是完全限定的路径)

对于基于SQL Server的包,需要在执行包任务的
PackagePath
属性上设置表达式。双击执行包任务,在表达式选项卡上,将PackagePath属性映射到
@[User::TgtPackage]
值(假设TgtPackage的值只是包名,例如so_26718490Target)

Biml Biml是商业智能标记语言。如果您有免费的插件,您可以添加一个Biml文件,并使用以下代码生成一个包,该包使用For Each Item枚举器。其中包含一个使用基于文件的源的执行包任务

有关配置软件包名称的Biml示例,请参阅


c:\Sandbox\SO\SO\SO\u 26718490Target.dtsx
@[用户::TgtPackage]

由于您在2008年,在执行包任务中引用包的方式是在文件系统或SQL Server中。然后,执行包任务将使用您的连接管理器

对于基于文件的连接管理器,需要在文件连接管理器的
ConnectionString
属性上设置表达式。右键单击连接管理器,在“属性”窗格的“查找表达式”部分中,单击省略号并将连接字符串映射到
@[User::TgtPackage]
(假设TgtPackage的值是完全限定的路径)

对于基于SQL Server的包,需要在执行包任务的
PackagePath
属性上设置表达式。双击执行包任务,在表达式选项卡上,将PackagePath属性映射到
@[User::TgtPackage]
值(假设TgtPackage的值只是包名,例如so_26718490Target)

Biml Biml是商业智能标记语言。如果您有免费的插件,您可以添加一个Biml文件,并使用以下代码生成一个包,该包使用For Each Item枚举器。其中包含一个使用基于文件的源的执行包任务

有关配置软件包名称的Biml示例,请参阅
<Biml xmlns="http://schemas.varigence.com/biml.xsd">
    <Connections>
        <FileConnection Name="FCChild" FilePath="c:\Sandbox\SO\SO\so_26718490Target.dtsx"></FileConnection>
    </Connections>
    <Packages>
        <Package ConstraintMode="Linear" Name="so_26718490Target"></Package>
        <Package
            ConstraintMode="Linear"
            Name="so_26718490">
            <Variables>
                <Variable DataType="String" Name="TgtPackage">c:\Sandbox\SO\SO\so_26718490Target.dtsx</Variable>
            </Variables>

            <Tasks>
                <ForEachItemLoop ConstraintMode="Linear" Name="FILC Run packages">
                    <Rows>
                        <Row>
                            <Columns>
                                <Column DataType="String" Value="c:\Sandbox\SO\SO\so_26718490Target.dtsx"></Column>

                            </Columns>
                        </Row>
                    </Rows>
                    <VariableMappings>
                        <VariableMapping VariableName="User.TgtPackage" Name="0"></VariableMapping>
                    </VariableMappings>
                    <Tasks>
                        <!--
                            Execute package task
                        -->
                        <ExecutePackage Name="EPT File Child">
                            <File ConnectionName="FCChild"></File>
                        </ExecutePackage>
                    </Tasks>
                </ForEachItemLoop>
            </Tasks>
            <Connections>
                <Connection ConnectionName="FCChild">
                    <Expressions>
                        <Expression ExternalProperty="ConnectionString">@[User::TgtPackage]</Expression>
                    </Expressions>
                </Connection>
            </Connections>
        </Package>
    </Packages>
</Biml>