Error running SSIS package: VSTA designer failed to load - sql-server-2008

When I try to execute a package which uses the Scripting Component object I get the following error:
Error: 2011-07-22 09:16:42.25
Code: 0x00000003
Source: {Task Name Here}
Description: There was an exception while loading Script Task from XML: System.ApplicationException: The VSTA designer failed to load: "System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been returned from a call to a COM component`enter code here`
I am running on a database server that has both SQL2005 and SQL Server 2008 R2 (RTM) - 10.50.1720.0 (X64).
I tried to execute the package using both the 32 and 64 bit versions with the same result.
I originally had an issue on my development machine where the Visual Studio for Applications Designer was not coming up when I tried to use the Scripting Object within an SSIS package for the first time. i resolved this by installing the latest SP for Visual Studio. Obviiously, loading visual Studio is not a possible solution to resolve this issue on a SQL Server.
Sugegstions?

Some Googling suggests you're executing a 2005 package with the 2008 runtime. Assuming that's the case, you can either use the 2005 runtime or upgrade the package.

Related

Compatibility of Data Tools and Visual Studio version

I got VS 2017 15.8.1 version installed and a legacy SSIS package created and run in VS 2012 version 11.0.61219.00 Update 5. So basically two VS instances on one machine. I also installed SSDT 15.4.0 version for VS 2017. My app saves .csv file on the server, makes a call to SQL Server 2016 which invokes SSIS packages and passes the address of .csv file to it. SSIS processes the file and saves data to the database. All this is working correctly, however, instead of displaying the uploaded file on page as a link the UI throws the following error.
"Error: 2019-05-09 12:06:03.61, Code: 0xC000F427, Source:
SCR_Chk_UploadTypes, Description: To run a SSIS package outside of SQL
Server Data Tools you must install SCR_Chk_UploadTypes of Integration
Services or higher.,End Error,DTExec: The package execution returned
DTSER_FAILURE (1)."
Any ideas what "SCR_Chk_UploadTypes" is? I'm guessing it might have some relation to SSDT and VS compatibility.
Thanks!
Any ideas what "SCR_Chk_UploadTypes" is? I'm guessing it might have
some relation to SSDT and VS compatibility.
I imagine that is either the name of a connection manager or a Data Source in the data flow(s). Can you post a screenshot?
With respect to the error itself, please note that Microsoft requires a package to target a specific version of SQL Server.
The package that runs in VS2012 can only target SQL Server 2012.
Starting with VS2015, Microsoft introduced the concept of Server targeting. By default, when creating a package in VS2017 the targeted SQL Server will be SQL Server 2017. Have you confirmed that the SQL Server version that the package is targeting is SQL Server 2016?
For more information on targeting

The package failed to load due to error 0xC0011008 "Error loading from XML.

I have migrated the DTS (2005) to SSIS DTSX(2012) and migrated package runs through the SSDT but doesn't run through the Web Application which triggers the SSIS package.
Below is complete error message
The package failed to load due to error 0xC0011008 "Error loading from XML. No further detailed error information can be specified for this problem because no Events object was passed where detailed error information can be stored.". This occurs when CPackage::LoadFromXML fails.
I have provided full permission and SET "Run64bitRunTime" to FALSE, still no luck.
Unfortunately this is not working at Client Server (SQL 2012 SP3 installed) but is working in my development server (SQL 2012 SP3).
Any suggestions are appreciated. Thanks in advance.
Regards,
VK
Another thing to check is the project property Deployment Target Version. Make sure this is the correct SQL version. By default it goes to SQL Server VNext. This was the issue for me.
Try this:
by changing packet runtime from 64 to 32 bit. it should do the trick

SSIS Script Task Error: "Found SQL Server Integration Services 2012 Script Task that requires migration"

As per the Microsoft documentation on DTEXEC for executing SSIS packages:
When you use the version of the dtexec utility that comes with SQL
Server 2012 Integration Services (SSIS) to run a SQL Server 2005
Integration Services (SSIS) or a SQL Server 2008 Integration Services
(SSIS) package, Integration Services temporarily upgrades the package
to SQL Server 2012 Integration Services (SSIS).
Is there a feature to disable this aspect of DTEXEC utility when running SSIS packages?
My reason for this question is that I have a script task to rename some files in an SSIS package. This works just fine on my local machine and a coworkers local machine, but after deploying this SSIS package to our windows 2012 server with SQL Server 2012 installed I get an error message. I'm really confused, because I wrote this package in SQL Server 2012 Data Tools so this task shouldn't need to be upgraded/migrated at all, which is what the error is complaining about...
Warning: 2016-04-06 11:29:58.14
Code: 0x00000000
Source: DataMergeScriptTask
Description: Found SQL Server Integration Services 2012 Script Task "my_Script_task" that requires migration!
End Warning
Error: 2016-04-06 11:30:03.02
Code: 0x00000001
Source: DataMergeScriptTask
Description: Exception has been thrown by the target of an invocation.
End Error
Unfortunately we haven't found a solution for the Script Task not converting into 2012, as these packages are all written in Data Tools 2012 and opening/resaving the task doesn't seem to actually upgrade the script task in a way that solves it on the server.
My solution has been to take the C# script and turn it into a standalone .exe which has some command line arguments to pass our different parameters with defaults in place to match our current environment. Then I set this up to be executed by a Batch script called by a windows task scheduler job.
I'm hoping to find a real fix for this so that script tasks in larger packages will still be peachy, but that may take more time or a reinstall of data tools... Having multiple versions of SQL Server data tools/BIDS on my workstation could be a cause of this grief. More testing to come!
Just update the TargetServerVersion in your package to match the server version that you plan to deploy to.
Make sure you have a copy of your project in case it doesn't go smoothly. Then right click on the project name, choose properties, then drill into Configuration Properties -> General and update the TargetServerVersion.
Then rebuild and deploy. When the project builds, it should now be in the format that your server expects so it won't try to rebuild the script code on the server where references might not be the same.

OLE DB provider Microsoft.ACE.OLEDB.15.0 Mssing

I have deployed SSIS package that fetch data from Microsoft Access database. it works fine Locally and on Server i am running it using DTESEX 32 bit but getting following error
The requested OLE DB provider Microsoft.ACE.OLEDB.15.0 is not registered. If the 32-bit driver is not installed, run the package in 64-bit mode. Error code: 0x00000000.
How can i make sure that OLE DB provider Microsoft.ACE.OLEDB.15.0 exist on server
I tried importing data from 64bit excel file into SQL using SSMS's import wizard and got got this error :microsoft ace oledb 15.0 provider is not registered on the local machine.
One of my colleagues showed me to use 64bit import wizard rather than 32 bit defualt import wizard that I have in SSMS. Here is a short video I posted about successfully loading the data on youtube
https://www.youtube.com/watch?v=aIs-vbaGSzg
Per #Gaurav Saneja's answer, you can use the "SQL Server 2016 Import and Export Data (64-bit)" (found in start menu). SSMS is 32-bit, so it attempts to load the 32-bit version of the DLL, but fails because you (likely) have the 64 bit version of Office installed.
Some people are recommending the installation of AccessRuntime_x86_en-us.exe from
https://www.microsoft.com/en-us/download/details.aspx?id=39358
however, for me this fails with the error:
We can't install the 32-bit version of Office because we found the following 64-bit programs on your PC: -list of installed Office apps here-
Until Microsoft provides a 64-bit version of SSMS, we are stuck using the method of launching the 64-bit version of the Data Import wizard independently (as described above).
Please try installing the Access 2013 runtime on the server, which should enable the use of that provider (at least in 32-bit).
The exception indicates that it is not able to find the OLE DB provider specified, which can be installed through standard Access installations or by installing the runtime.
Environment:
Machine (64bit)
Operating System Windows 10 Pro (64bit)
Visual Studio 2017 (32bit)
Visual Studio 2017 (SSDT) (32bit)
Office 2016 (64bit)
Attempted to use Excel in SSIS. Received the following errors: when I select 2016 or 2013 in connection manager. Issue to be resolved.
Error for 2016:
Exception from HRESULT: 0xC020801C Error at Package: The requested
OLE DB provider Microsoft.ACE.OLEDB.16.0 is not registered. If the
32-bit driver is not installed, run the package in 64-bit mode. Error
code: 0x00000000. An OLE DB record is available. Source: "Microsoft
OLE DB Service Components" Hresult: 0x80040154 Description: "Class
not registered".
Error at Data Flow Task [Excel Source [2]]: SSIS Error Code
DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The
AcquireConnection method call to the connection manager "Excel
Connection Manager" failed with error code 0xC0209302. There may be
error messages posted before this with more information on why the
AcquireConnection method call failed.
Error for 2013:
Exception from HRESULT: 0xC020801C Error at Package: The requested
OLE DB provider Microsoft.ACE.OLEDB.15.0 is not registered. If the
32-bit driver is not installed, run the package in 64-bit mode. Error
code: 0x00000000. An OLE DB record is available. Source: "Microsoft
OLE DB Service Components" Hresult: 0x80040154 Description: "Class
not registered".
Error at Data Flow Task [Excel Source [2]]: SSIS Error Code
DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The
AcquireConnection method call to the connection manager "Excel
Connection Manager" failed with error code 0xC0209302. There may be
error messages posted before this with more information on why the
AcquireConnection method call failed.
Solution:
Installed the following:
I needed 64bit Access Database Engine 2016 Redistribution for another portion of the project. Unstalling it was not a solution, but the 2007 Data connectivity component and Data Access Engine 2016 can live side by side:
2007 (USE 32bit) : 2007 Office System Driver Data Connectivity Components
https://www.microsoft.com/en-us/download/details.aspx?id=23734
2016 (USE 64bit) : Microsoft Access Database Engine 2016 Redistributable
https://www.microsoft.com/en-us/download/details.aspx?id=54920
Finally:
Inside of Visual Studio 2017 (SSDT) follow the following instructions to Adjust Project:
Open SSIS project
Select the project in Solution Explorer
Select Properties
Expand Configuration Properties in the left pane
Click Debugging and change Run64BitRuntime to False
Click OK
Adjust Connection Manager:
7. Open Excel Connection Manager
8. Click the drop-down menu. Excel Options work:Excel 97-2003 and Excel 2007-2010
9. Click Ok
Open Excel Source component:
10. Select the Excel connection manager
11. Select Table View from Data Access Mode
12. Select Excel Sheet
You should be able to Preview the data in the Excel sheet

Error when trying to install SSIS 2005 Package on 64 bit OS

I've created an SSIS package on a 64 bit Windows 7 box running the 32 bit version of SQL Server 2005. When I try to install the package on a 64 bit Windows Server 2008 box running the 32 bit version of SQL Server 2005 I get the following error:
===================================
Unexpected error occurred. (Package Installation Wizard)
===================================
Retrieving the COM class factory for component with CLSID {E44847F1-FD8C-4251-B5DA-B04BB22E236E}
failed due to the following error: 80040154. (Microsoft.SqlServer.ManagedDTS)
------------------------------
Program Location:
at Microsoft.SqlServer.Dts.Runtime.Application..ctor()
at Microsoft.SqlServer.Dts.Deployment.PackageInstallationWizardForm..ctor()
at Microsoft.SqlServer.Dts.Deployment.PackageInstaller.Main(String[] args)
===================================
Retrieving the COM class factory for component with CLSID {E44847F1-FD8C-4251-B5DA-B04BB22E236E}
failed due to the following error: 80040154. (Microsoft.SqlServer.ManagedDTS)
------------------------------
Program Location:
at Microsoft.SqlServer.Dts.Runtime.Application..ctor()
I've also tried to install it on my Windows 7 box and got the same error. I have the same version of SQL Server 2005 running on our test server which is running 64 bit Windows Server 2003 and the installation wizard launches just fine.
On the Server 2003 box there isn't an assemblies folder in the C:\Program Files (x86)\Microsoft SQL Server\90\SDK so even though it's a 32 bit install of SQL Server the install is different. I'm figuring it was an upgrade from a previous version.
So far through my research I haven't found anything that's helped me correct this issue with the Server 2008 box. I'm assuming that the newer OS's or the clean installation of SQL server might be causing an issue but I'm only guessing at this point.
I've done a version check on all 3 instances of SQL Server using "SELECT ##VERSION" and have verified that all of the versions are 32 bit.
I've compiled my package on the Server 2003 box as well and it still won't install on the Server 2008 box. I've also set the Run64BitRuntime option to "False" in the package properties but so far nothing has helped.
Are there any files, such as dll's, that I need to transfer to the 2008 server from the 2003 server?
Any suggestions would be appreciated.
As it turns out I needed to uninstall sql expess 2008. I'd read that sql server 2005 and sql express 2008 could exist on the same server which they can if they were only being used as database instances. Unfortunately the install of sql express 2008, which was already installed on the server, prohibited Integration Services and SQL Server Agent from working correctly and caused them to throw the errors mentioned.
Once sql express was uninstalled everything worked fine.
Thanks to everyone who responded.
This looks like a build error for your package. You need to track down what component is represented by that "component with CLSID ..."
Usually if you add the package to a BIDS SSIS Project and Execute it (debug it) the component with the issue will become clear.