Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/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
Sql server 2008 根据If-else条件在SSI中选择性地执行数据流任务_Sql Server 2008_If Statement_Ssis_Dataflowtask - Fatal编程技术网

Sql server 2008 根据If-else条件在SSI中选择性地执行数据流任务

Sql server 2008 根据If-else条件在SSI中选择性地执行数据流任务,sql-server-2008,if-statement,ssis,dataflowtask,Sql Server 2008,If Statement,Ssis,Dataflowtask,我想创建一个SSIS包,它将有两个数据流任务。如果今天的日期是当月的开始日期,则它应该执行一个数据流任务(实际上有一个月末报告),否则它应该执行另一个数据流任务(一个周报)。谁能告诉我如何达到这个目标 谢谢,1。)在包范围内创建一个数据类型为布尔的变量。在本例中,我将我的命名为startDate 2。)创建具有两个先决条件的脚本任务。一个在月初执行数据流任务,另一个在月初执行错误任务。 3。)编辑脚本任务并将startDate变量添加到ReadWriteVariables中。 4。)单击“

我想创建一个SSIS包,它将有两个数据流任务。如果今天的日期是当月的开始日期,则它应该执行一个数据流任务(实际上有一个月末报告),否则它应该执行另一个数据流任务(一个周报)。谁能告诉我如何达到这个目标

谢谢,

1。)在包范围内创建一个数据类型为布尔的变量。在本例中,我将我的命名为
startDate

2。)创建具有两个先决条件的脚本任务。一个在月初执行数据流任务,另一个在月初执行错误任务。

3。)编辑脚本任务并将
startDate
变量添加到ReadWriteVariables中。

4。)单击“编辑脚本”并将以下内容插入到方法中(您可以取消对消息框的注释,以确保它在执行包时正常工作),并且不要忘记保存:

DateTime value = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1);

        if (DateTime.Today == value)
        {
            Dts.Variables["User::startDate"].Value = bool.Parse("True");
        }
            Dts.Variables["User::startDate"].Value = bool.Parse("False");

        //MessageBox.Show(Dts.Variables["User::startDate"].Value.ToString());
5。)之后,您所要做的就是编辑每个DFT的优先约束。

到目前为止你做了什么?我建议您创建一个变量来保存月份的日期(一个整数),然后删除一个表达式任务,在这个任务中,使用一个表达式来获取月份的日期。这是一个开始。你可以通过谷歌解决所有这些问题