all groups > sql server dts > march 2005 >
You're in the

sql server dts

group:

Help with Select Case!


Help with Select Case! Bryan Rodrigues
3/31/2005 12:35:03 PM
sql server dts:
Hi,

I'm writting some VBscript ActiveX code inside a DTS Package, and i'm
getting a parse error. (This script runs fine in Access).

I believe it has something to do with the "TO" porttion of the case
statement ( case 1 to 30).

any help would be appreciated. Here is the code.


' VBScript source code
Function FixDate(dteDate)
If CLng(dteDate) = 0 Then
Else
myYear = Mid(dteDate, 2, 2)

If (Int(myYear) Mod 4) = 0 Then
Select case int((Right(dteDate, 3)))
Case 1 To 31
myday = Right(dteDate, 3)
mymonth = "01"
Case 32 To 60
myday = Right(dteDate, 3) - 31
mymonth = "02"
Case 61 To 91
myday = Right(dteDate, 3) - 60
mymonth = "03"
Case 92 To 121
myday = Right(dteDate, 3) - 91
mymonth = "04"
Case 122 To 152
myday = Right(dteDate, 3) - 121
mymonth = "05"
Case 153 To 182
myday = Right(dteDate, 3) - 152
mymonth = "06"
Case 183 To 213
myday = Right(dteDate, 3) - 182
mymonth = "07"
Case 214 To 244
myday = Right(dteDate, 3) - 213
mymonth = "08"
Case 245 To 274
myday = Right(dteDate, 3) - 244
mymonth = "09"
Case 275 To 305
myday = Right(dteDate, 3) - 274
mymonth = "10"
Case 306 To 335
myday = Right(dteDate, 3) - 305
mymonth = "11"
Case 336 To 366
myday = Right(dteDate, 3) - 335
mymonth = "12"
End Select
Else
Select Case Right(dteDate, 3)
Case 1 to 31
myday = Right(dteDate, 3)
mymonth = "01"
Case 32 To 59
myday = Right(dteDate, 3) - 31
mymonth = "02"
Case 60 To 90
myday = Right(dteDate, 3) - 59
mymonth = "03"
Case 91 To 120
myday = Right(dteDate, 3) - 90
mymonth = "04"
Case 121 To 151
myday = Right(dteDate, 3) - 120
mymonth = "05"
Case 152 To 181
myday = Right(dteDate, 3) - 151
mymonth = "06"
Case 182 To 212
myday = Right(dteDate, 3) - 181
mymonth = "07"
Case 213 To 243
myday = Right(dteDate, 3) - 212
mymonth = "08"
Case 244 To 273
myday = Right(dteDate, 3) - 243
mymonth = "09"
Case 274 To 304
myday = Right(dteDate, 3) - 273
mymonth = "10"
Case 305 To 334
myday = Right(dteDate, 3) - 304
mymonth = "11"
Case 335 To 365
myday = Right(dteDate, 3) - 334
mymonth = "12"
End Select
End If
myYear = Mid(dteDate, 2, 2)
If Left(myday, 1) = "0" Then
If Len(myday) = 3 Then
myday = Right(myday, 2)
End If
End If
If Len(myday) = 1 Then
myday = "0" & myday
End If
myDate = mymonth & "/" & myday & "/" & myYear
End If
FixDate = myDate

End Function
Re: Help with Select Case! Bryan Rodrigues
3/31/2005 1:05:08 PM
Thanks Allan,

That did the trick.

Do you know why the"to" portion dosn't work? Just currious.

Thanks again

Bryan


[quoted text, click to view]
Re: Help with Select Case! Allan Mitchell
3/31/2005 9:01:44 PM
What about something like

Function Main()

dim str

str = 2


SELECT CASE true

CASE str > 1 AND str <=2

Msgbox "Between 1 and 2"

END SELECT


Main = DTSTaskExecResult_Success

End Function

"Bryan Rodrigues" <Bryan Rodrigues@discussions.microsoft.com> wrote in
message news:Bryan Rodrigues@discussions.microsoft.com:

[quoted text, click to view]
Re: Help with Select Case! Allan Mitchell
3/31/2005 9:20:30 PM
Feature of VBScript

"Bryan Rodrigues" <BryanRodrigues@discussions.microsoft.com> wrote in
message news:BryanRodrigues@discussions.microsoft.com:

[quoted text, click to view]
AddThis Social Bookmark Button