一、多样的优先约束(看例子)

1)打开一个空白的SSIS包,拖拽4个脚本任务到设计面板上,重命名后连接起来,如下图所示。

  

2)执行包,可以看到任务执行成功。之后我们改变C和D之间的优先约束为“失败”。再次执行包后任务D没有执行,这是因为C返回的结果与优先约束的配置不匹配,而A、B和C设置的优先约束是“且”的关系。

  

3)停止执行后,打开优先约束编辑器->修改逻辑为“或”,这时所有的连线都变成了虚线

  

4)执行包,现在任务D是执行成功的,因为A、B、C连接到D的约束条件是"或"的关系(A || B || C),只要其中一个返回True,则任务D将会执行成功。

如果想实现(A&&B)|| C的条件,我们就需要用到序列容器了。

二、序列容器

序列容器相当于一个子包,跟SSIS包一样,它也可以添加、编辑和删除任务组件。一个序列容器可以包含任意个容器。可以在属性窗口修改序列容器的配置。序列容器还有下面这些优点:

  • 一站式管理:更改一个序列容器的属性相当于更改容器中所有任务组件的属性。
  • 变量适用范围:定义变量为容器区域变量后这些变量只能适用于容器中的任务或约束。
  • 折叠和展开:这个功能可以把相关联的任务组件组合到一个序列容器中,更易于管理。
  • 事务:让相关联的组件放在一个容器中以一个事务的形式执行完成。

下面我们使用序列容器来实现(A&& B)|| C 的约束条件。

  1)打开上面做的SSIS包,拖拽一个序列容器到设面板上。

  2)在优先约束上右键->删除A与D之间的连线,同时,删除B和D之间的连线。

  

  3)将A和B拖拽到序列容器中,用优先约束将序列容器任务D连接起来。

  

  4)执行包,任务D执行成功了。因为A和B都执行成功了,所以序列容器返回结果为True,序列容器和C之间是“或”的关系,因而D就执行了,这样我们就完成了条件(A && B)|| C的条件了。

  

最新文章

  1. 如何在Eclipse中查看JDK以及JAVA框架的源码(转载)
  2. 通过angularJS官方案例快速入门
  3. web前端开发:css3实现loading
  4. linux权限管理_ACL权限
  5. linux回环网卡驱动设计
  6. 【转】【公司调查】车来了APP
  7. 自定义TabBarController报错 - Unbalanced calls to begin/end appearance transitions for <>
  8. UVa 10213 (欧拉公式+Java大数) How Many Pieces of Land ?
  9. 把测试app打包成ipa文件
  10. cURL模拟POST方法提交XML数据并解析
  11. HTML语法
  12. 域名注册域名解析域名绑定 dns服务器解析 域名记录的添加 记录类型含义@ www 访问域名请求过程
  13. Django05-模型系统model
  14. 通过python操作smtplib模块发送邮件
  15. Java第二课 项目的导入和导出
  16. 全排列(dfs)
  17. 修改BlackLowKey皮肤样式,增加占屏比
  18. C语言基础:枚举.宏 分类: iOS学习 c语言基础 2015-06-10 22:01 20人阅读 评论(0) 收藏
  19. iOS Hardware Guide
  20. 三.jQuery源码解析之jQuery的框架图

热门文章

  1. Python爬虫基础之正则表达式
  2. Android运行时权限
  3. IntelliJ IDEA重启Tomcat
  4. Linux下创建共享文件夹
  5. nginx 10054报错问题解决方案
  6. java 的 try parse
  7. spring boot mybatis打印SQL语句
  8. kafka原理和架构
  9. shell编程基础语法
  10. notes for python简明学习教程(1)