Hora de creación en tabla OIVL

Hola

Estoy intentando hacer un informe de stock en almacén ordenador por fecha de entrada (con hora).

He visto que en OIVL tenemos el histórico del almacén y el campo que parece contener la hora es CreateTime (en otros normalente es CreateTS). El caso es que al usar:

to_nvarchar(to_time(T0.“CreateTime”),‘HH24:MI’)

Me da errores, por ejemplo “Error while parsing 819 as TIME at to_time function”

En otras consultas he usado eso mismo (pero con CreateTS) y no me ha dado problemas, ¿en esa tabla se almacena la hora de otra manera?

Gracias

Puedes hacerlo de la siguiente manera:

SELECT T0."TransType", T0."CreatedBy", T0."BASE_REF", T0."DocLineNum", T0."DocDate", 
CASE
WHEN LENGTH(T0."CreateTime") = '3' THEN SUBSTRING (CAST(T0."CreateTime" AS VARCHAR(6)),1,1) || ':' || SUBSTRING (CAST(T0."CreateTime" AS VARCHAR(6)),2,3)
WHEN LENGTH(T0."CreateTime") = '4' THEN SUBSTRING (CAST(T0."CreateTime" AS VARCHAR(6)),1,2) || ':' || SUBSTRING (CAST(T0."CreateTime" AS VARCHAR(6)),3,4) END "Hora Creacion", T0."ItemCode" FROM OIVL T0 WHERE T0."DocDate" =[%0]

Tendrás un resultado de esta forma:

Revísalo y me platicas.
Saludos.

1 me gusta

Así funciona bien, por lo que veo no es una conversión de entero a tiempo sino que simplemente cambia el entero por un string, mira que son enrevesados…