Definir campo en tabla interna

OK Muchas Gracias, probare lo indicado

Ok ya me estas tomando los decimales, muchas gracias, pero tengo un caso aparte en mi tabla interna tengo un campo que debe tener 261 ceros, yo lo declare en mi tabla como:
campo2(261) type c value 0.

Y luego utilizo la funcion: CONVERSION_EXIT_ALPHA_INPUT para rellenar ceros a mi izquierda:
data: wa_campo(261) type c.
wa_campo2 = ti_mercantil_header-campo2.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT’
EXPORTING
input = wa_campo2
IMPORTING
output = wa_campo2.

ti_mercantil_header-campo2 = wa_campo2.

verifico y veo que tengo los 261 ceros luego que sale de la funcion, posteriormente llega aqui:
e_dtam100h-h00 = ti_mercantil_header.
e_dtam100h-h01 = 98.

verifico e_dtam100h-h00 y tambien veo los 261 ceros pero al generarse el archivo txt no los muestra, que puedo verificar.

Gracias

Ana

Debuguea el programa y dale seguimiento a tu campo h00, avanza y verifica que tu campo no pierda el valor.

Otra cosa que podrias intentar es: e_dtam100h-h00 = ti_mercantil_header-campo2.

Saludos!!

1 me gusta

el problema puede ser esta variable…de que tipo es ??

Si, ya resolviste la duda…pues marca una como solucion y este ultimo, habre otro debate !!!

Dandole click me lleva a esta parte:

VALUE(E_DTAM100H) LIKE DTAM100H STRUCTURE DTAM100H

:

en teoria no deberia darte problema…prube como te comenta LDSDev

1 me gusta

Pero si le digio asi, que pasa con los otros campos que integran la tabla ti_mercantil_header? Pues ahi iguala la tabla intrna a la estructura texto

es que al asiganar

e_dtam100h-h00 = ti_mercantil_header

le estas pasando al campo h00 de la estructura e_dtam100h y como el campo h00 es un cchar largo…el mismo toma los primeros caracteres que tenga la estructura ti_mercantil_header y por eso quizas pierda los valores.

tienes que hacerlo como te dijo LDSDev…

y si comparte campos con el mismo nombre y elemento…quizas un move-correspondig

@aalvarez2605 has probado con menos ceros a ver cuanto salen.

Listo ya con el apoyo de todos sus mensajes me coloca la informacion que necesitaba.

Muchas Gracias

Saludos

Ana

Hola @aalvarez2605, platicanos como se soluciono por completo, asi quedara conocimiento para la posteridad. Y recuerda marcar la respuesta que ayudo a solucionar tu problema.

Saludos!!

Le coloque un concatenado de todos los campos a una variable que midiera la cantidad total de todos los campos de la cabecera.

Definiendo linea(400) type c. " aqui es donde se guardaran todos los campos del header

Concateno todos los campos y los guardo en linea.
Y luego realizo:
e_dtam100h-h00 = linea.
e_dtam100h-h01 = strlen( linea ).

De todas las respuestas tome algo que me llevo a este punto de solucion.
Muchas Gracias
Saludos
Ana

2 Me gusta

En donde te dá error?,…,puedes anexar como está tu tabla?

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.