2013-03-21 87 views
3

我有一个SSIS包,它读取文件夹中存在的csv文件并将数据上载到数据库中。它还有一个发送邮件组件,用于在读取csv文件和上传数据后发送邮件。该程序包是从C#控制台应用程序中以编程方式调用的。在控制台应用程序中,该文件夹中的每个文件都会被调用一次。此控制台应用程序计划通过Windows任务计划程序在特定时间每天运行。当通过Windows任务调度程序调用SSIS包时,发送邮件任务在SSIS中不起作用

我面对的问题是,当我直接双击控制台应用程序的exe并运行它时,数据会成功上传,邮件也正在发送。但是,当同一个控制台应用程序的EXE从任务计划称为从CSV文件中的数据被上传成功,但邮件没有被发送

可能是什么问题(邮件功能在调度的情况下工作) ?

+0

这看起来倒退了,因为控制台应用程序不应该通过Windows任务计划程序调用SSIS包。相反,应该通过SSIS代理来安排SSIS包。 SSIS内置了用于迭代文件集合的工具。 – 2013-03-21 16:15:14

+0

@MetroSmurf我通过控制台应用程序调用SSIS包,因为我必须根据控制台应用程序的某些条件动态地将值传递给ssis包变量,我相信这可以从SSIS本身完成,但我是ssis – seadrag0n 2013-03-22 06:36:02

回答

1

最可能的原因是权限问题;控制台应用程序运行的帐户没有权限在您的帐户进行时发送电子邮件。是否有控制台应用程序生成的错误日志,Windows事件日志条目等?

+0

的新手它是在同一个帐户下运行,但我必须点击“显示所有用户的进程”才能看到控制台应用程序进程...我还记录了控制台应用程序运行时发生的任何异常,这也会记录由包,我没有得到任何错误... – seadrag0n 2013-03-22 06:39:41