Function blows up when used with a timestame starting with a zero

  • ALTER FUNCTION [dbo].[convertFloatDate]

    (@date float)

    RETURNS VARCHAR(20)

    AS

    BEGIN

    declare @ADatetime float,

    @DatePart int,

    @TimePart int,

    @ReturnedDateTime varchar(20)

    set @ADatetime = @date

    set @DatePart = round(cast(@ADatetime/1000000 as decimal(18,6)),0,1)

    set @TimePart = (cast(@ADatetime/1000000 as decimal(18,6)) - @DatePart) * 1000000

    set @ReturnedDateTime = cast(cast(@DatePart as char(8)) + ' ' +

    stuff(

    stuff(cast(@TimePart as char(6)), 5, 0, ':')

    ,3,0,':') as datetime) --as [DateTime]

    RETURN @ReturnedDateTime

    END

  • ALTER FUNCTION dbo.convertFloatDate

    (

    @date float

    )

    RETURNS VARCHAR(20)

    AS

    BEGIN

    RETURN STUFF(STUFF(STUFF(STR(@date, 14), 13, 0, ':'), 11, 0, ':'), 9, 0, ' ')

    END


    N 56°04'39.16"
    E 12°55'05.25"

  • ALTER FUNCTION dbo.convertFloatDate

    (

    @date float

    )

    RETURNS DATETIME

    AS

    BEGIN

    RETURN CAST(STUFF(STUFF(STUFF(STR(@date, 14), 13, 0, ':'), 11, 0, ':'), 9, 0, ' ') AS DATETIME)

    END


    N 56°04'39.16"
    E 12°55'05.25"

Viewing 3 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply