I've tried several that I found, most of them gave errors in crystal, this one is kind of ugly but it works in crystal:
Time(
if len(replace(totext({OVERLOG1.OVTIME}), ",","")) = 1 then "00:00:00"
else
if len(replace(totext({OVERLOG1.OVTIME}), ",","")) = 3 then "00:0" + left(replace(totext({OVERLOG1.OVTIME}), ",",""), 1)+":00"
else
if len(replace(totext({OVERLOG1.OVTIME}), ",","")) = 4 then "00:" + left(replace(totext({OVERLOG1.OVTIME}), ",",""), 2)+":00"
else
if len(replace(totext({OVERLOG1.OVTIME}), ",","")) = 5 then "0" + left(replace(totext({OVERLOG1.OVTIME}), ",",""), 1) + ":"
+ mid(replace(totext({OVERLOG1.OVTIME}), ",",""),2,2)+ ":00"
else
if len(replace(totext({OVERLOG1.OVTIME}), ",","")) = 6 then left(replace(totext({OVERLOG1.OVTIME}), ",",""), 2) + ":"
+ mid(replace(totext({OVERLOG1.OVTIME}), ",",""),3,2)+ ":00"
else totext(time(00,00,00))
)