gpt4 book ai didi

sql - 使用表达式评估禁用任务是否明智?

转载 作者:行者123 更新时间:2023-12-04 20:51:01 25 4
gpt4 key购买 nike

我有一个计划每天导出数据的 SSIS 包。我有一些任务只想在每月的第一天执行。重要的是跳过这些任务,如果不是第一天,包继续执行。

经过一番搜索,我找到了许多解决此问题的引用资料,方法是使用以下博客文章中发布的方法: http://bi-polar23.blogspot.com/2007/05/conditional-task-execution.html

不过,我认为有一个更简单的解决方案。为什么我不能在每个月的第一天任务中添加一个表达式来检查当月的日期并相应地设置任务的“已禁用”属性?

使用表达式和禁用任务似乎比在每个任务之前添加一个虚拟脚本要简单得多。其他人是否看到或知道我解决此问题的方法存在问题?初步测试似乎有效,但是,我发现 SSIS 很挑剔。如果它可能在未来引起问题,我宁愿不做“非常规”的事情。

感谢您的任何想法。

最佳答案

我不认为有任何关于设置表达式以根据条件禁用任务的非常规。我在我开发的包中做了同样的事情。我宁愿使用 Expressions 直接在任务的 Disable 属性上设置条件,而不是使用 Script Task。请参阅屏幕截图 #1。换句话说,我同意你的做法。

使用这种方法的一个注意事项是,下一个查看包的人可能不知道为什么特定任务没有在给定日期(在您的情况下是一个月的第一天)执行。为了防止这种情况,您可以添加一个 Annotation 说明在任务的 Disable 属性上设置了一个 Expression

我建议的另一件事是计算当月的第一天值并将其存储在属性 EvaluateAsExpression 设置为 true 的变量中并使用它给定任务的表达式中的变量以禁用\启用它。这将阻止计算每个任务表达式中的值。屏幕截图 #1 显示 Disable 属性设置为假定存储在变量 IsFirstDayOfMonth 中的值。可以设置此变量上的表达式来计算当月的第一天。

希望对您有所帮助。

屏幕截图 #1:

1

关于sql - 使用表达式评估禁用任务是否明智?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6206349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com