none
cannot debug or run integration services script component

    Question

  • I just upgraded from VS2005 to VS2008.
    On upgrading some packages I got an error relating to a script component. I tried to run this script component in the script editor, but got the following error message: "You cannot debug or run this project, because the required version of the Microsoft office application is not installed."

    The error also occurs for new script components, irrespective of the chosen language (VB, C).



    These are the installed programs  for Visual Studio Tools for Applications:

    Microsoft Visual Studio 2008
    Version 9.0.30729
    Microsoft .NET Framework
    Version 3.5 SP1

    Installed Edition: Express

    Microsoft Visual Basic 2008  
    Microsoft Visual Basic 2008

    Microsoft Visual C# 2008  
    Microsoft Visual C# 2008

    Microsoft Visual Studio Tools for Applications 2.0  
    Microsoft Visual Studio Tools for Applications 2.0

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB945282)   KB945282
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/945282.

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB946040)   KB946040
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946040.

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB946308)   KB946308
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946308.

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB946344)   KB946344
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946344.

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB947540)   KB947540
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/947540.

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB947789)   KB947789
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/947789.

    Hotfix for Microsoft Visual Studio 2007 Tools for Applications - ENU (KB951708)   KB951708
    This hotfix is for Microsoft Visual Studio 2007 Tools for Applications - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/951708.



    And these for VS2008:

    Microsoft Visual Studio 2008
    Version 9.0.30729.1 SP
    Microsoft .NET Framework
    Version 3.5 SP1

    Installed Edition: IDE Standard

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB945282)   KB945282
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/945282.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB946040)   KB946040
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946040.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB946308)   KB946308
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946308.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB946344)   KB946344
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946344.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB946581)   KB946581
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/946581.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB947173)   KB947173
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/947173.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB947540)   KB947540
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/947540.

    Hotfix for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU (KB947789)   KB947789
    This hotfix is for Microsoft Visual Studio 2008 Shell (integrated mode) - ENU.
    If you later install a more recent service pack, this hotfix will be uninstalled automatically.
    For more information, visit
    http://support.microsoft.com/kb/947789.

    SQL Server Analysis Services  
    Microsoft SQL Server Analysis Services Designer
    Version 10.0.1600.22

    SQL Server Integration Services  
    Microsoft SQL Server Integration Services Designer
    Version 10.0.1600.22 ((SQL_PreRelease).080709-1414 )

    SQL Server Reporting Services  
    Microsoft SQL Server Reporting Services Designers
    Version 10.0.1600.22


    Does anyone have a solution for this? Could it be caused by the fact that the installed VSTA version is the express edition and VS2008 is the standard edition? If so, how to fix this? 

    Regards,

    Egon Rijk
    Wednesday, February 18, 2009 12:33 PM

Answers

All replies

  • Hi,

    Just a wild guess here but could it be because you don't have any Microsoft Office applications installed (Well, according to your list you don't)?  Maybe you need the office application installed that your VSTA code is writen for (i.e. Word, Excel, outlook etc etc) to enable debugging.

    The following blog post discusses debugging add-ins created with VSTA and it contains word-for-word the error you are getting:

    http://blogs.msdn.com/vsto/archive/2008/03/20/developing-an-add-in-for-multiple-versions-of-office.aspx

    Cheers
    Jeff
    SQL Server MVP / WARDY IT Solutions, Solutions Architect
    Wednesday, February 18, 2009 1:00 PM
  • Hi Jeff,

    I have Office 2003 and Excel 2007 installed. But I'm not writing the code for Office. The code is meant to be used in a SSIS package, so this has nothing to do with Office. That's the odd thing about this message. I really haven't any idea why it is coming up here.

    Regards,

    Egon

     


    Egon Rijk
    Wednesday, February 18, 2009 1:28 PM
  • Hi,

    So the script component is not referencing any VSTA assemblies and does not contain any VSTA related code?  Are you able to past a copy of the Script Code with your next reply?

    Cheers
    Jeff
    SQL Server MVP / WARDY IT Solutions, Solutions Architect
    Wednesday, February 18, 2009 1:30 PM
  • Here's the code:
    ' Microsoft SQL Server Integration Services user script component  
    ' This is your new script component in Microsoft Visual Basic .NET  
    ' ScriptMain is the entrypoint class for script components  
     
    Imports System  
    Imports System.Data  
    Imports System.Math  
    Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper  
    Imports Microsoft.SqlServer.Dts.Runtime.Wrapper  
     
    <Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute> _  
    <CLSCompliant(False)> _  
    Public Class ScriptMain  
        Inherits UserComponent  
        'Global variable to hold the current row number  
        Dim lrow As Integer = 0 
     
        Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)  
            '  
            ' Add your code here  
            '  
            Row.ErrorDescription = _ 
        Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode)  
            Row.RowNumber = lrow 
            lrowlrow = lrow + 1  
        End Sub  
     
     
    End Class 

    There's also some other code, which is added by default:
    ' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!  
    ' Microsoft SQL Server Integration Services component wrapper  
    ' This module defines the base class for your component  
    ' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!  
     
    Imports System  
    Imports System.Data  
    Imports Microsoft.SqlServer.Dts.Pipeline  
    Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper  
    Imports Microsoft.SqlServer.Dts.Runtime.Wrapper  
     
    <CLSCompliant(False)> _  
    Public Class UserComponent  
        Inherits ScriptComponent  
     
        Public Connections As New Connections(Me)  
        Public Variables As New Variables(Me)  
     
        Public Overrides Sub ProcessInput(ByVal InputID As Integer, ByVal Buffer As PipelineBuffer)  
     
            If InputID = 242 Then  
                Input0_ProcessInput(New Input0Buffer(Buffer, GetColumnIndexes(InputID)))  
            End If  
     
        End Sub  
     
        Public Overridable Sub Input0_ProcessInput(ByVal Buffer As Input0Buffer)  
     
            While Buffer.NextRow()  
                Input0_ProcessInputRow(Buffer)  
            End While  
     
        End Sub  
     
        Public Overridable Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)  
     
        End Sub  
     
    End Class  
     
    Public Class Connections  
     
        Dim ParentComponent As ScriptComponent  
     
        <CLSCompliant(False)> _  
        Public Sub New(ByVal Component As ScriptComponent)  
            ParentComponent = Component  
        End Sub  
     
    End Class  
     
    Public Class Variables  
     
        Dim ParentComponent As ScriptComponent  
     
        <CLSCompliant(False)> _  
        Public Sub New(ByVal Component As ScriptComponent)  
            ParentComponent = Component  
        End Sub  
     
    End Class  
     
     
     
    ' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!  
    ' Microsoft SQL Server Integration Services buffer wrappers  
    ' This module defines classes for accessing data flow buffers  
    ' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!  
     
     
    Option Strict Off   ' This allows usage of PipelineBuffer typed accessors.  
     
    Imports System  
    Imports System.Data  
    Imports Microsoft.SqlServer.Dts.Pipeline  
    Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper  
     
    <CLSCompliant(False)> _  
    Public Class Input0Buffer  
        Inherits ScriptBuffer  
     
        Public Sub New(ByVal Buffer As PipelineBuffer, ByVal BufferColumnIndexes As Integer())  
            MyBase.New(Buffer, BufferColumnIndexes)  
        End Sub  
     
        Public ReadOnly Property [ErrorCode]() As Int32  
            Get  
                Return Buffer.GetInt32(Me.BufferColumnIndexes(0))  
            End Get  
        End Property  
        Public ReadOnly Property [ErrorCode_IsNull] As Boolean  
            Get  
                Return IsNull(0)  
            End Get  
        End Property  
     
        Public WriteOnly Property [RowNumber]() As Int32  
            Set  
                Me(1) = Value  
            End Set  
        End Property  
        Public WriteOnly Property [RowNumber_IsNull] As Boolean  
            Set  
                If (value)  
                    SetNull(1)  
                Else  
                    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")  
                End If  
            End Set  
        End Property  
     
        Public WriteOnly Property [ErrorDescription]() As String  
            Set  
                Me(2) = Value  
            End Set  
        End Property  
        Public WriteOnly Property [ErrorDescription_IsNull] As Boolean  
            Set  
                If (value)  
                    SetNull(2)  
                Else  
                    Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")  
                End If  
            End Set  
        End Property  
     
        Public Overloads Function NextRow() As Boolean  
            NextRow = MyBase.NextRow()  
        End Function  
     
        Public Overloads Function EndOfRowset() As Boolean  
            EndOfRowset = MyBase.EndOfRowset  
        End Function  
     
    End Class  
     


    Egon Rijk
    Wednesday, February 18, 2009 1:47 PM
  • I am having the same issue when I try to set a breakpoint in a C# SSIS script.  The breakpoint shows in the code, but not in the script's "box" on the data flow.  My system is 64-bit Vista but "Run64BitRuntime" is set to false.

    I am not doing anything with Microsoft Office, but I do have Office 2007 installed.  Why in the world does SSIS care about MS Office??????
    Tuesday, July 21, 2009 4:59 PM
  • did anyone ever resolve this issue?
    Withers
    Friday, December 11, 2009 12:11 AM
  • According to Microsoft, you cannot debug an SSIS Script Component like you would other projects in Visual Studio, but they do suggest some other methods to get around this.  Check out http://msdn.microsoft.com/en-us/library/ms136033.aspx for more information, in particular, the secton regarding debugging.  Hope this helps!
    Wednesday, January 20, 2010 2:49 PM
  • Hi Egon,

    It is the most weird error that i saw :)

    Are you using an Excel source or Destination?

    I would suggest the old debugging method: msgbox :)

    Donate your code line by line with msgboxes. Then try to catch it :))))))

    If your code directly gives error when executed, i suggest creating new script and paste the existing code for a workaround.

    Best Regards
    Onur


    BI and ERP Consultant @ Nexum Bogazici Personal Blog: http://www.ssisnedir.com/blog
    Thursday, January 21, 2010 1:12 AM