如何为任何特定日期加载SSIS包 [英] How to load SSIS package for any specific date

查看:108
本文介绍了如何为任何特定日期加载SSIS包的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我有一个每日运行的ssis包。这个ssis包有几个执行sql任务,它们为昨天的事务加载数据。例如



INSERT INTO发货

(Div_Code,shipment_value,ship_l_id,shipment_qty,shipment_date,whse_code,



ord_id,ship_id,ship_l_ord_l_id,Created_date)

选择ord.DIV_CODE作为div_code,ship.SHIPMENT_VALUE作为shipment_value,ship_l.SHIP_L_ID作为ship_l_id,

ship_l.SHIPPED_QTY as shipped_qty,ship.SHIPPED_DATE as shipped_date,ship.WHSE_CODE as whse_code,
ord.ORD_ID as ord_id,ship.SHIP_ID as ship_id,ship_l.ord_l_id as ship_l_ord_l_id,Getdate()as Created_date

来自SHIP船,ORD ord,

SHIP_L ship_l

其中ship.SHIPPED_DATE =(dateadd(day,-1,CONVERT(VARCHAR( 10),GETDATE(),120)))和ship.WHSE_CODE ='WPP'和ord.ORD_ID = ship.ORD_ID

和ship.SHIP_ID = ship_l.SHIP_ID





所有执行sql任务都有如上查询的查询。在某些查询中,我们有日期过滤器,它会加载昨天的数据。防爆。一个查询有ship.SHIPPED_DATE =(dateadd(day,-1,CONVERT(VARCHAR(10),GETDATE(),120)))。其他一些查询有ord.trans_date =(dateadd(day,-1,CONVERT(VARCHAR(10),GETDATE(),120)))。这个包每天通过sql server job运行,所以它加载昨天的数据。现在,如果我想参加任何特定日期,我们怎样才能从ssis中获益?我是SSIS的新手。有没有人可以指导我实现这个目标?



提前谢谢

解决方案

对于如何解释在Simple Talk博客上执行此操作:

https://www.simple-talk.com/sql/ssis/passing-variables-to-and-from-an-ssis-task/ [ ^ ]

Hi All,
I have a ssis package which runs daily. This ssis package has couple of execute sql tasks which load data for yesterday's transaction. Ex.

INSERT INTO Shipped
(Div_Code, shipment_value, ship_l_id, shipped_qty, shipped_date, whse_code,

ord_id, ship_id, ship_l_ord_l_id, Created_date)
select ord.DIV_CODE as div_code, ship.SHIPMENT_VALUE as shipment_value, ship_l.SHIP_L_ID as ship_l_id,
ship_l.SHIPPED_QTY as shipped_qty, ship.SHIPPED_DATE as shipped_date, ship.WHSE_CODE as whse_code,
ord.ORD_ID as ord_id, ship.SHIP_ID as ship_id, ship_l.ord_l_id as ship_l_ord_l_id, Getdate() as Created_date
from SHIP ship, ORD ord,
SHIP_L ship_l
where ship.SHIPPED_DATE=(dateadd(day, -1, CONVERT(VARCHAR(10),GETDATE(),120))) and ship.WHSE_CODE='WPP' and ord.ORD_ID=ship.ORD_ID
and ship.SHIP_ID=ship_l.SHIP_ID


All execute sql task has query like above query. and in some query we have date filter which loads data for yesterday. Ex. one query has ship.SHIPPED_DATE=(dateadd(day, -1, CONVERT(VARCHAR(10),GETDATE(),120))). some other query has ord.trans_date=(dateadd(day, -1, CONVERT(VARCHAR(10),GETDATE(),120))). this package runs daily through sql server job, so It loads data for yesterday. Now If i want to run for any particular date, How could we achieve from ssis? I am very new to SSIS. Could anyone guide me to achieve this?

Thanks in advance

解决方案

There's a decent explanation of how to do this on the Simple Talk blog:
https://www.simple-talk.com/sql/ssis/passing-variables-to-and-from-an-ssis-task/[^]


这篇关于如何为任何特定日期加载SSIS包的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆