¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo solucionar el error de base de datos 8114 al convertir nvarchar a datetime en SQL con ABAP

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 35 Vistas
0
Cargando...

Hola,

Estoy obteniendo un error de base de datos 8114 en EXE "Error al convertir nvarchar a datetime" al llamar a un procedimiento almacenado en la base de datos SQL utilizando un comando SQL nativo dentro de EXEC SQL / ENDEXEC. El problema proviene de uno de los parámetros IN del procedimiento almacenado que es de un tipo de datos SQL DATETIME. He intentado pasar un valor a este parámetro DATETIME utilizando la variable ABAP de tipo C y D y sigo obteniendo el mismo error.

¿Alguien puede decirme cuál sería el tipo de fecha correcto a usar en ABAP en este caso?

Gracias.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Hola,

Tengo que INSERTAR registros en una tabla SQL que tiene un campo

de tipo datetime utilizado solo para la hora.

Ejecuto las sentencias pasando el campo datetime con el formato

DATA: L_DATETIME(20) TYPE C

ejemplo:

move space a x_Ora_in.

move x_Ora a x_Ora_in+10(8).

pero el resultado es

01/01/1900 10.05.00

¿Alguien puede ayudarme?

Gracias

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

A todos, muchas gracias por sus respuestas.

Descubrí que el problema estaba relacionado con el tipo de fecha de datetime. El mensaje de error de SQL era confuso: el problema real era que estaba pasando un parámetro menos en mi llamada al procedimiento almacenado.

¡Gracias de nuevo!

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Si ese es el formato, puedes hacerlo así.



DATA: L_DATETIME(20) TYPE C.

write sy-datum to l_datetime.
write sy-uzeit to l_datetime+10(8).

write:/ l_datetime.

Saludos,

Rich Heilman

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Sridhar,

No estoy familiarizado con la base de datos SQL.

Pero parece que el formato de DATETIME es 'DD/MM/YYYY HH:MM:SS'.

Tal vez puedas declarar algo así y mover los campos de fecha y hora a un campo L_DATETIME con el formato mencionado arriba.

DATA: L_DATETIME(20) TYPE C.

Saludos,

Ferry Lianto

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?