2016-04-28 4 views
0

У меня было около 10 пакетов, которые работали почти безупречно в течение нескольких месяцев. Эти пакеты используют ту же задачу сценария, которую я в основном копировал во всех пакетах. Вся эта задача скрипта - это отправить электронное письмо. Я пришел на работу в понедельник, и внезапно я получаю эту ошибку DTS Script Task во всех пакетах, как только она попадает в задачу сценария электронной почты. Буквально ничто не изменилось ни с одним из этих пакетов, и я не уверен, какие шаги предпринять, чтобы исправить это.SSIS - задача сценария DTS встретила исключение в коде пользователя

#Region "Imports" 
Imports System 
Imports System.Data 
Imports System.Math 
Imports Microsoft.SqlServer.Dts.Runtime 
#End Region 

Public Sub Main() 

    'send email notification 
    Dim message As String = "message goes here" 
    sendEmail("[email protected]", "Subject is here", message) 



    Dts.TaskResult = ScriptResults.Success 
End Sub 


Sub sendEmail(ByRef toaddr As String, ByRef sbj As String, ByRef msg As String) 
    Dim objOutlook As Object 
    Dim objOutlookMsg As Object 
    objOutlook = CreateObject("Outlook.Application") 
    objOutlookMsg = objOutlook.CreateItem(0) 
    With objOutlookMsg 
     .To = toaddr 
     .Subject = sbj 
     .Body = msg 
     .sentonbehalfofname = "[email protected]" 
     .Send() 
    End With 
    objOutlookMsg = Nothing 
    objOutlook = Nothing 
End Sub 

Когда я пошагово код, это, кажется, случается здесь:

enter image description here

Любая помощь вы можете предоставить было бы весьма признателен.

ответ

1

Где бы вы используете свой пакет (локально на сервере?) Объект Перспективы больше не существует (или существует проблема разрешения - но это маловероятно)

зависимости, как это всегда трудно управлять, когда системы меняются - и они всегда будут! Трудно быть на 100% уверенным, потому что я не вижу на вашем примере то, что вы отправляете в свой адрес электронной почты, - но я бы рекомендовал вам полностью запустить сценарий и использовать задачу Send Mail Task.

+0

+1. Раньше у меня были кошмары о «Невозможно создать компонент ActiveX». CreateObject - не надежный способ сделать что-то. С помощью электронной почты есть задача «Отправить почту» и создание прямого SMTP-соединения в коде, что намного лучше. – SebTHU

+0

Я не могу использовать задачу отправки почты из-за настройки электронной почты моей компании ... не могу вспомнить, почему именно, но я сделал кучу исследований, потому что я не мог заставить это работать и в итоге решил задачу сценария .. – Jon

+0

Я в настоящее время запускаю пакеты локально – Jon

Смежные вопросы