jammen det er jeg meget intresseret i da jeg ikke har arbejdet så meget med case og incase, så hvis du gider smide det op som svar skal du nok få pointne for den!... :)
Function IsBetween(aStart, aEnd, aExpression) If IsNumeric(aExpression) And aExpression <> \"\" Then IsBetween = aExpression > aStart And aExpression < aEnd Else IsBetween = False End If End Function
\'Returns true if expression is between or alike aStart and aEnd Function IsBetweenOrAlike(aStart, aEnd, aExpression) If IsNumeric(aExpression) And aExpression <> \"\" Then IsBetweenOrAlike = (Clng(aExpression) >= Clng(aStart) And Clng(aExpression) <= Clng(aEnd)) Else IsBetweenOrAlike = False End If End Function
Function IsValidDate(byref aStringDate, byref aDay , _ byref aMonth, byref aYear, byref aHour, _ byref aMinutes , byref aSeconds )
\'Day If Not IsBetweenOrAlike(1, 31, Mid(aStringDate, 1, 2)) then aDay = -1 Else aDay = Mid(aStringDate, 1, 2) End if \'Month If Not IsBetweenOrAlike(1, 12, Mid(aStringDate, 4, 2)) then aMonth = -1 Else aMonth = Mid(aStringDate, 4, 2) End if \'Year If Not IsBetweenOrAlike(0, 9999, Mid(aStringDate, 7, 4)) then aYear = -1 Else aYear = Mid(aStringDate, 7, 4) End if \'Hour If Not IsBetweenOrAlike(0, 24, Mid(aStringDate, 12, 2)) then aHours = -1 Else aHours = Mid(aStringDate, 12, 2) End if \'Min If Not IsBetweenOrAlike(0, 59, Mid(aStringDate, 15, 2)) then aMinutes = -1 Else aMinutes = Mid(aStringDate, 15, 2) End if \'Sec If Not IsBetweenOrAlike(0, 59, Mid(aStringDate, 17, 2)) then aSeconds = -1 Else aSeconds = Mid(aStringDate, 17, 2) End if
IsValidDate = aDay <> -1 And aMonth <> -1 And aYear <> -1 End Function
Function ConvertToSQLDateTime(aDateString) Dim aDay, aMonth,aYear, aHours,aMinutes, aSeconds
If IsValidDate(aDateString, aDay, aMonth, aYear, aHours, aMinutes, aSeconds) Then \'Legal date: If aDay <> -1 And aMonth <> -1 And aYear <> -1 Then ConvertToSQLDateTime = Format(aYear, \"0000\") + \"-\" _ + Format(aMonth, \"00\") + \"-\" _ + Format(aDay, \"00\")
\'Legal hours and minutes: If aHours <> -1 And aMinutes <> -1 Then ConvertToSQLDateTime = ConvertToSQLDateTime + \" \" _ + Format(aHours, \"00\") + \":\" _ + Format(aMinutes, \"00\")
\'Legal seconds: If aSeconds <> -1 Then ConvertToSQLDateTime = ConvertToSQLDateTime + \":\" _ + Format(aSeconds, \"00\") Else ConvertToSQLDateTime = ConvertToSQLDateTime + \":00\" End If Else ConvertToSQLDateTime = ConvertToSQLDateTime + \" 00:00:00\" End If Else ConvertToSQLDateTime = \"NULL\" End If Else ConvertToSQLDateTime = \"NULL\" End If End Function
Function ConvertToSQLDate(aDateString) Dim aDay, aMonth,aYear, aHours,aMinutes, aSeconds
If IsValidDate(aDateString, aDay, aMonth, aYear, aHours, aMinutes, aSeconds) Then
\'Legal date: If aDay <> -1 And aMonth <> -1 And aYear <> -1 Then ConvertToSQLDate = aYear + \"-\" _ + aMonth + \"-\" _ + aDay Else ConvertToSQLDate = \"NULL\" End If Else ConvertToSQLDate = \"NULL\" End If End Function
Function ToSQLDate(aString ) Dim aDate
aDate = ConvertToSQLDate(aString)
If aDate <> \"NULL\" And aDate <> \"\" Then ToSQLDate = \"{d \'\" + aDate + \"\'}\" Else ToSQLDate = \"NULL\" End If End Function
Function ToSQLDateTime(aString) Dim aDate
aDate = ConvertToSQLDate(aString)
If aDate <> \"NULL\" And aDate <> \"\" Then ToSQLDateTime = \"{ts \'\" + ConvertToSQLDateTime(aString) + \"\'}\" Else ToSQLDateTime = \"NULL\" End If End Function
Det er så vidt jeg kan forstå når du udefra forsøger at lagre data i et datofelt at det går galt. F.eks kan du ikke i din Query Analyzer skrive. Insert into Tabel (DatoFelt) Values(\'10-01-2002\') men derimod skrive det på formen 2002-01-10
Så virker det sgu ikke med tidspunkt, men kun datoen. Det er jeg sgu ked af... Det kan selvfølgelig lade sig gøre... men jeg sidder ikke lige inde med en funktion der tager tidspunktet med. :(
det kan også klares ved at bruge session.LCID 1033
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.