Solved

Solution to Execute DTS Packages and Connect to SQL Server with Vb.net

Posted on 2004-10-19
7
1,093 Views
Last Modified: 2009-05-27
I am trying to create a solution, that allows a user to select a file and have that file imported into sql server, i believe that i can do this with a .net and dts solution, creating my dts packages, and allowing the user to choose where the files are, ftp them from a server, and put them in a pre determined destination so that a dts package can execute the data pump, i need to assume that all the text files are the same every time we run the conversion, and i can run the dts with the same structure. i am new to .net, i have done something similar using vb6, but it's been a whlie, and .net is very new to me. so i need to know how to connect to a database, using ado.net ? i presume, and how to execute the dts pacages, and how to allow the user to select where the files are. i just need a kick in the right direction so that i can get started, i'm sure that i will tweak it once this get up and running. thanks
0
Comment
Question by:basile
  • 3
7 Comments
 
LVL 6

Accepted Solution

by:
etmendz earned 500 total points
Comment Utility
In your VB.Net project, add a COM reference to the Microsoft DTSPackage Object Library 2.0 which is \Program Files\Microsoft SQL Server\80\Tools\Binn\dtspkg.dll. This action will create Interop.DTS.dll and should show in your Reference list as DTS.

I used the information in the following link to help me:

http://support.microsoft.com/default.aspx?scid=kb;en-us;321525

The sample code in this article simply calls an existing DTS package in an SQL Server.

If you want dynamic DTS from inside VB.Net, now that's a different story. I've done this before by creating a .Net application (it was my first practical attempt to learning VB.Net). If you want to do dynamic DTS, consider the following:

- Save your DTS package into a VB6 code.
- It is important that you understand the DTS VB6 code so you can easily covert it to VB.Net.
- Base your VB.Net code on the generated VB6 code.
- Expect your VB.Net code to more or less look like the original VB6 code.
- In your VB.Net code, add the code for the PackageEventSink as defined in the link I gave you.

The basic process flow is:

Initialize DTSPackage Events Sink
Initialize yourDTSPackageObject
Initialize yourDTSPackageObject Connections
Define yourDTSPackageObject Steps
Define yourDTSPackageObject Tasks
yourDTSPackageObject.Execute()
yourDTSPackageObject.UnInitialize()
UnInitialize DTS Package Events Sink

More or less, you should find the same pattern in the DTS VB6 code. :-)

Have fun.
0
 
LVL 6

Expert Comment

by:etmendz
Comment Utility
For the other stuffs you need, those are basic I/O operations and you can simply search msdn.microsoft.com for ".Net System.IO" for more information. The classes that may also interest are the OpenFileDialog and the FileSystemWatcher classes. Read about them and about ADO.Net in your Visual Studio.Net documentation, MSDN Library or the MSDN Library online in msdn.microsoft.com.

Samples are available in www.gotdotnet.com where you can view samples organized per class/classes that may interest you.

There is no built-in FTP client in .Net so you might need to download one from the Internet or purchase one from any .Net library vendor you like.

If you've worked with VB6 forms and controls, learning VB.Net forms and controls is a breeze. If you've worked with VB6 .cls class files (which is almost OOP), the transition to VB.Net shouldn't be difficult. If you're familiar with the VB6 IDE, mastering the Visual Studio.Net IDE should be easy.

Have fun.
0
 
LVL 1

Author Comment

by:basile
Comment Utility
here is a twist to this question. how can i create and run a dts package within vb ? are there any good examples for this out there ?
0
 
LVL 6

Expert Comment

by:etmendz
Comment Utility
That is called dynamic DTS which I also tried to explain in my first post.

I think that there are not much samples. You can create a DTS package using the Enterprise Manager and then save the DTS package to VB6 (which is an existing feature of DTS in SQL Server 2000).

The VB6 code generated works and may be compiled and tested immediately.

You can use the VB6 code generated as basis if you want to rewrite it to VB.Net.

Have fun.
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
SQL Server 2008 Error 7 54
Select all rows in datagridview 15 20
.Net Web Site Password specs 2 20
Library to convert HTML to PDF. 8 44
Microsoft Reports are based on a report definition, which is an XML file that describes data and layout for the report, with a different extension. You can create a client-side report definition language (*.rdlc) file with Visual Studio, and build g…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
This tutorial demonstrates a quick way of adding group price to multiple Magento products.
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now