Is your SQL Server installation 64 bit?
Main Topics
Browse All TopicsOk I got an SSIS package.
in the control flow..
1) I have a data flow and the dataflow does a DataRead on a crappy 3rd party Database that must be pulled through ODBC and is limited. This only pulls one record then uses all sorts of derived tasks to manipulate data.
2) I have a loop that reads all the fields from DataFlow #1 and puts in variables. No tasks run in the loop though.
3)I have another loop that looks for some txt files in a folder to delete them. but except for the "file System task" to delete the txt files nothing else is in the loop.
4) I call another Data flow which is the main process. This is the one with the errors. the first task a DataRead to THE SAME crappy ODBC database that the first Data flow did.. But now it is pulling lots of records. (One thing to mention is that even during the "design time" runs this DataRead had to be fixed from errors in an odd way.. I had to create a text file Redirected the row on error for any string variable.. No Rows ever went in it.. All Rows processed.. But without this bypass piece I did have errors..
Now for the errors from the run of the Installed package from SQL Server.. This is abbrevated as the errors won't let you cut an paste.
Main Processing
Validation Has Started
Info: Validation phase Beginning
Progress Validating - 0% complete
20% complete
40% complete
error: system.Data.Odbc.ODBC exception: Error Microsoft ODBC Driver manager Data source
name not found & no Default Dreiver specified..
(some other errors.. but I did not see anything worth writting it down.
error: component "DR for Dunbrad" (31) failed validation and returned error code 0 X
80131937
progress validation - 60% complete
validation is complete..
At this point it seems to run the same set list of info a 2nd time exactly the same from validation beginning to validation complete..
DR for DunBrad is my first task.. But it seems to be processing the records with the progress percentage. and it seems to say only 31 records failed.. So why oh why would it state an error it can't find the driver.. Especially when some other process successfully connected with it.
(Also I checked the .txt file that the errors records that were redirected should have gone to.. It is empty.)
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Ok.. Our SQL Server is 32 bit.. There is nothing running 64 bit in the whole company.
As for the DSN.. I double checked.. It was setup in the file rather then system.. So I added it to system too. But it didn't make a difference. Also Remember the exact same DSN connection is working fine for a 1 record pull in the first task..
So your right it Looks like the DSN is not connection by why would it connect for the 1 record pull and not for the other pull?
Ok.. I have to restate the problem.. IT IS NOT WORKING FOR EITHER DSN CONNECTION. I thought the validation was in order and it is not, therefore it validated "Main" under the other DataFlow task first, and never even tried to validate the other one.. disable the "Main" task and the other one failed also..
Delay Validation didn't work.. But I saw something freaky with my connection string, and decided to install BIDS on the Server to figure out if the connection string wanted something different.. It Sure does.. And it corrupts in a way, I don't know if I can fix it on the server side.. (and I can't sit at the server all day doing my design work to create packages..)
Lets say my connection string has a UID: stupid Password: STUPID... So I put those in the connection. on my desktop, my grayed out string shows UID:,Password:****** My Server when opened blows up with errors shown below.. But if you build a new connection, It shows up as UID:STUPID,Password:
So one has blank UID & the password, the other has UID & a blank password.. And neither likes the other at all.
The errors are in a file attachment..
May be me, but I don't see the attachment.. So I am placing the errors here.
Error 1 Error loading DunBradtest.dtsx: Failed to decrypt protected XML node "DTS:Property" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available. Y:\SSISProjects\VisionData
(3 MORE ERRORS SIMILAR TO ERROR 1)
Error 5 Validation error. Main Processing: DR for DunnBrad [31]: System.Data.Odbc.OdbcExcep
I found after getting through the problem with my ODBC 3rd party server, that my SQL Server connection had similar issues!!! What gives? your suppose to do program design at the server?
Here is my work around..
I made the connectors to my ODBC DB and SQL DB global..
On the Server I created another project. With the same global connectors built with the same name.
When I want to build an install the package, I go to the Server and in the BIDS bring up the server package. I import the package into it. Since the global connectors out pulled from outside the package they will then use the Server connectors and are happy.
I build from the Server project.
I import into SSIS the Server builds.
If anyone has a better way to rid myself of this problem, rather then live with a workaround. I am all ears. But for now when I run out of SSIS it is successful.
No, It would not run as a direct run from SSIS
Then I added BIDS to the server and when the package opened in BIDS It came up with 4 errors all having to do with the file connection and the password.
Now that I figured out how to create a new project and make the Connections for both the 3rd party DB and SQL Server global in both project have the same global connection but each projectcreated their connection from thier location. When I import a package from my desktop Bids project to my Server Bids project,my Bids program on the server does not have the errors. then Build the package from there and import that into SSIS.. My SSIS can run the project fine also..
I know I am hitting another error with the job scheduling.. Which I created a different thread for, and I think we are coming down to figuring that out.
I guess here I just feel I have solved the issue that it is something with the connections.. But since it is not only my 3rd party software, but SQL and all tutorials say once you create a package you can just import it to any server.. I am hoping that someone can take the definate error, and tell me a better fix then my work-around 'cause I don't know the right way to fix it.
Packages have an en ryption method. You have chosen the method that does not save passwords. If you use 'encrypt with password' it will get around the issue, but you should really do some reading on encryption methods. The other three methods are encrypt with server key, encrypt with user key, don't save sensitive. I'm pretty sure you are using 'don't save sensitive'
I will need to check on Monday. I believe it was encrypt with server or user key (what ever the default was..) but to try to get it into a scheduled job, I changed it to encrypt with password.. It will be interesting to see if that will solve this problem too..
I am excited to try it out, but am happy to wait for monday, and enjoy my weekend now.
Sorry it has been hetci at work, and I did want to write a more thourogh answer to this, but tomorrow is a holi, and I am already home, so I will have to write this as well as I can remember.
The 'encrypt with password' did not work for me, In solving the issue with the data connections being specific to the .. But I am getting the feeling that different things work at different sites.
What worked for me was 'Rely on server storage for encryption' which could only be set when you were in the process of saving it to the SQL Server. The feature is under the 'file' tab in the top bar, and is one down from the normal 'save as' function but something like 'save copy of 'your packagename' as.. Once you get into it it is pretty self explanatory. You want to save it to sql server - give the Server login info.. enter what you want the package called on the Server.. And the very last question is to change the protection level. It looks grayed out, but you can change it. You have to have the SSIS set up on your SQL Server for this because it will go in there under (I believe) 'MSDN' folder.
This protection level solved this issue and another one to get the protection level to submit it to a job Schedule Agent.
Yes protection level (not encryption level as I incorrectly stated) is the issue. All types of protection levels work in different ways. For example server encryption will work as long as you only run the package on the server. User encryption will only work if the pckage designer and the executor are the same.
Well both had parts of it.. And some of it I can see as working depending on the setup you have, but didn't work 100% for my situation.
My last comment shows what worked for me, which is different then both comments. But the advice about the protection level got me to playing with different things... And the DSN were not being read, but not for lack of correct setup.
Business Accounts
Answer for Membership
by: pettmansPosted on 2009-11-04 at 19:14:43ID: 25746467
Looks like it can't find the DSN for the data source when run in production. Check that the Data Source is set up a a System DSN on the server so it is available to the service account that runs the package.