条件拆分控件使用

在进行ETL数据抽取的时候,往往会对数据进行条件拆分,比如当[工资]》5000时,才进入数据仓库,否则输出到Excel。类似这种需求。今天就来讲解一下条件拆分控件的使用。达到的目的就是把[OrderStatusCode]等于99的输出到数据仓库,不等于99的输出到Excel中。

第一步:准备原始数据,创建表以及在表中添加数据,脚本如下:

CREATE TABLE [dbo].[MemberOrderStatus](
    [OrderStatusCode] [varchar](2) NULL,
    [OrderStatusName] [nvarchar](20) NULL,
    [Status] [varchar](1) NULL
) ON [PRIMARY]

INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘01‘,N‘未提交‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘02‘,N‘已提交‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘03‘,N‘已审核‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘04‘,N‘分拣完成‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘05‘,N‘配送中‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘06‘,N‘签收‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘07‘,N‘退货中‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘08‘,N‘退货入库‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘09‘,N‘配送异常‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘10‘,N‘缺货‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘11‘,N‘订单挂起‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘12‘,N‘已调度‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘13‘,N‘已生成分拣计划‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘14‘,N‘已打印‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘15‘,N‘已生成出库单‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘16‘,N‘已出库‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘17‘,N‘已复核‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘18‘,N‘自退货中‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘19‘,N‘自退货入库‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘20‘,N‘退货已入库‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘21‘,N‘已锁定‘,N‘A‘)
INSERT INTO [MemberOrderStatus]([OrderStatusCode],[OrderStatusName],[Status]) VALUES(N‘99‘,N‘取消‘,N‘A‘)

第二步:创建一个Excel文件,用于存放[OrderStatusCode]不等于99的数据。

第三步:打开VS,新建一个SSIS项目。

第四步:在控制流视图中,拖入一个数据流任务,然后双击这个数据流任务,进入数据流任务,在界面中拖入一个OLE DB源,双击这个控件进行数据源的设置,如图所示:

第五步:拖入一个条件拆分控件,双击进行设置,这步是关键,需要把[OrderStatusCode]等于99的数据找出来,导入到数据仓库中,不等于99的数据导入到Excel中。实现的关键就是对函数的使用,大家如果对其中的函数不熟悉,可以MSDN官网学习。 如图所示:

第六步:这时的数据有两个走向,一个是导入数据仓库,第二个是导入到Excel,所以需要拖入两个目标控件。当然在导入前有必要进行数据转换,数据源和目标的字段类型要匹配。如图所示:

第七步:大功告成,直接运行包,结果如图所示:

条件拆分控件使用

时间: 2024-11-29 06:24:54

条件拆分控件使用的相关文章

拆分器控件Splitcontainer

拆分器控件Splitcontainer ,是一个含有Splitter拆分条的容器,它包含两个面板容器Panel1,Panel2,可以移动拆分条,对面板大小进行控制! 控件学习示例程序! 属性介绍; //拆分条的是否启用禁用bool IsSplitterFixed{get;set;} bool类型,true:不能调节拆分条; false :能够使用拆分条.决定是否可以通过键盘或鼠标来移动拆分器. //拆分器的方向:垂直和水平方向上拆分控件,上下和左右两块面板Orientation Orientat

UIAutomator定位Android控件的方法实践和建议(Appium姊妹篇)

在本人之前的一篇文章<<Appium基于安卓的各种FindElement的控件定位方法实践和建议>>第二章节谈到Appium可以通过使用UIAutomator的方法去定位Android界面上的控件,当时只是一笔带过举了个例子.如该文给自己的承诺,今天特撰写此文以描述UIAutomator各种控件定位的方法,以作为前文的姊妹篇互通有无. 1. 背景 为了和前文达成一致,这次的实践对象同样也是使用SDK自带的NotePad应用,同样是尝试去获得在NotesList那个Activity里

Robotium之Android控件定位实践和建议(Appium/UIAutomator姊妹篇)

本人之前曾经撰文描述Appium和UIAutomator框架是如何定位Android界面上的控件的. UIAutomator定位Android控件的方法实践和建议 Appium基于安卓的各种FindElement的控件定位方法实践和建议 今天我们换一个渊源更留长,当今更盛行的框架Robotium,实践下看它又是如何对控件进行定位的. 1. 背景 为保持这个系列的一致性,我们继续用SDK自带的NotePad实例应用作为我们的试验目标应用,但是这次不仅仅是像以前一样主要围绕Menu Option里面

SNF开发平台WinForm-表单验证控件-通用

CS程序也能做到像BS程序一样的验证效果,如下: 1.验证控件的展示 校验时如果不符合验证条件的控件,会在控件上显示较显眼的图标. 当出现不符合验证的控件时,鼠标悬浮会显示自定义的提示信息. 如:输入邮箱格式不正确! 校验可自定义.正则表达式或流程逻辑均可. 图标的样式默认为红色异常提示.全部样式如下三种.      2.可支持的常用控件   

【转】UIAutomator定位Android控件的方法实践和建议(Appium姊妹篇)

原文地址:http://blog.csdn.net/zhubaitian/article/details/39777951 在本人之前的一篇文章<<Appium基于安卓的各种FindElement的控件定位方法实践和建议>>第二章节谈到Appium可以通过使用UIAutomator的方法去定位Android界面上的控件,当时只是一笔带过举了个例子.如该文给自己的承诺,今天特撰写此文以描述UIAutomator各种控件定位的方法,以作为前文的姊妹篇互通有无. 1. 背景 为了和前文达

Essential Grid for ASP.NET MVC表格控件详细介绍及下载

Essential Grid for ASP.NET MVC是一款轻量级的,支持AJAX的,高性能的表格控件,完全支持ASP.NET MVC框架,具有丰富的功能,包含分组.排序.翻页.数据绑定.编辑.过滤.多种内嵌皮肤,可以处理上亿的数据量. 具体功能: 支持对一列或多列数据进行分组 支持单行.列.多行选择 支持通过拖拉操作调整列大小.改变列位置 支持Unbound列 当表格数据有几页时,控件提供了一个页导航条,可用于定位某页或是翻页 支持过滤操作 支持绑定到复杂的数据对象 支持导出数据到Exc

通达OA 手机签章控件用工作流条件限制居然无效

由于手机应用已深入日常生活的每个角落,手机已成为人们工作生活不可或缺的工具.集团也在近期加强了这方面的应用,开始大力推广OA移动端的应用,并购买了正式版的手机签章控件. 手机签章控件需要单独添加,原来工作流表单中只有电脑签章的部分需要重新添加一遍.这点来说会给流程设计人员增加一些工作量,稍有不便. 但是近期在实际使用中,有部门反应有领导用手机签批,没有盖章就转交到了下一步的情况.发现这样的情况我们马上组织进行测试,在流程中的条件限制居然不能限制必须进行手机签章,哪怕只有这样一个条件也不成.而之前

Atitit.列表页面and条件查询的实现最佳实践(2)------翻页 分页 控件的实现java .net php

Atitit.列表页面and条件查询的实现最佳实践(2)------翻页 分页 控件的实现java .net php 1. 关于翻页有关的几大控件::搜索框控件,显示表格控件,翻页器,数据源控件.. 1 2. 翻页的显示格式:: 1 2.1. 通常ui--"首页"."上页"."下页"."末页",还要有Goto到指定页 1 2.2. 百度式::...<上一页567891011121314下一页 2 2.3. 综合的页面 首

使用EasyUI的combobox控件实现级联搜索条件

昨天接到一个需求,是做一个简单的查询页面,相对于目前公司系统有一个新的东西,需要实现多级机构的级联查询.公司系统的前端框架采用的是jquery-easyui-1.4.3, 在以前接触到的系统中,前端做的不是太多,有采用velocity+html的,实现这种级联倒是做过,只是没怎么记录.现在使用easyui,需要学习一下. 看了些关于easyui的东东,打算采用combobox的input来实现这个级联查询功能. 首先,combobox 实现 动态加载 选项的方法有: reload(url)  .