DTS Date Format

Posted on 2002-04-04
Last Modified: 2013-11-30
I'm trying to do two things:  1) if a date is 1/1/1900 then make it blank. 2) if a date isn't 1/1/1900 then put it in the format yyyyMMdd (20020403).  My problem is the format part I can put it in a short or long date format but I can't get it in the format that I'm wanting.

Function Main()
  if DTSSource("IndividualTermDateDep") = "1/1/1900" then
     DTSDestination("IndividualTermDateDep") = ""
     Main = DTSTransformStat_OK
     DTSDestination("IndividualTermDateDep") = FormatDateTime(DTSSource("IndividualTermDateDep"),  2)
     Main = DTSTransformStat_OK
  end if
End Function  

Question by:yunginv
  • 2
  • 2

Expert Comment

ID: 6919404
When I do these types of things I put all the data into a temporary table before I load it into master table. I can then create views and run update statements to clean the data and that makes it easier than trying to do it in the dts package.  It is also very easy to loose your script on each field when you are changing the package.

Author Comment

ID: 6921020
I understand that position but I'd really like to know how to do it in code instead of creating a temp table and then loading it into another table.  Surely there is a way to format the date.  

By the way I've tried using the VB code format(date, "yyyyMMdd") and got an error as well.


Accepted Solution

curtis591 earned 200 total points
ID: 6921061
You should be able to do it with the mid function I think.  

How about this does this work?  Example format

DTSDestination("IndividualTermDateDep") = mid(DTSSource("IndividualTermDateDep"),5,4)+mid(DTSSource("IndividualTermDateDep"),1,4)

Author Comment

ID: 6921075
I didn't even think of using the MID statment.  Thanks.

I still think there has to be a format statement that works but this is as good.

Again Thanks

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I wrote this interesting script that really help me find jobs or procedures when working in a huge environment. I could I have written it as a Procedure but then I would have to have it on each machine or have a link to a server-related search that …
Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.
Viewers will learn how to use the SELECT statement in SQL to return specific rows and columns, with various degrees of sorting and limits in place.

914 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

16 Experts available now in Live!

Get 1:1 Help Now