【问题标题】:Debugging SSIS vb.net Script调试 SSIS vb.net 脚本
【发布时间】:2015-05-19 16:21:00
【问题描述】:

我正在 Visual Studio 2005 SSIS 项目中调试 SSIS vb.net 脚本。

有没有办法只执行脚本而不必在我的控制流中启动?否则我必须完成我的其他步骤,并通过我的脚本任务深入到编辑器中,进入实际的脚本。

另一方面,我的脚本不是很简单,如果找不到具有今天日期的目录,它只会创建一个目录。

Imports System
Imports System.IO
Imports Microsoft.VisualBasic
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime

Public Class ScriptMain

    ' Checks to see if todays folder exists on sqlzdocs ->  if it doesnt it creates it.  Else it errors

    Public Sub Main()

        Dim todaysdate As String = String.Format("{0:yyyyMMdd}", DateTime.Now)
        Dim di As IO.DirectoryInfo = New IO.DirectoryInfo("\\MyServer\Path\Current\" + todaysdate )

        If di.Exists = True Then
            Dts.Variables("User::FolderExists").Value = True
        Else
            Try
                Dim createdirectory As IO.DirectoryInfo = Directory.CreateDirectory(di.ToString)
            Catch ex As Exception
                Dts.Variables("User::Errors").Value = "Could not create the directory:" + di.ToString
                Dts.Variables("User::FolderExists").Value = False
            End Try

        End If

        Dts.TaskResult = Dts.Results.Success

    End Sub

End Class

【问题讨论】:

  • 您可以通过右键单击它来执行脚本任务,但我不知道从脚本任务内部而不是从控制流中执行脚本的方法。
  • 我为这类事情保留了一个 VS Express 实例。

标签: vb.net vbscript ssis visual-studio-2005


【解决方案1】:

当我开发具有脚本任务的 ETL 模块时,我遵循了几件事来帮助测试

  1. 记录脚本任务执行点 - 我编写了简单的自定义模块来处理它

  2. 分离脚本任务中的函数并创建一个单独的 Vb.net 控制台项目。我执行了那个项目,一旦它成功运行,我就将它包含在 SSIS 项目中。

【讨论】:

    猜你喜欢
    • 2011-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多