Form con parámetros COMPUTE_BCD_OVERFLOW dump

Hola, actualmente estoy ejecutando un programa que me esta dando un dump:
image

En este punto:

IF it_mseg-shkzg EQ 'S' AND it_mseg-bwart NE '313'.
p_valor = p_valor + it_mseg-menge.
p_vvalor = p_vvalor + it_mseg-dmbtr.
ELSEIF it_mseg-shkzg EQ 'H' AND it_mseg-bwart NE '314'.
p_valor = p_valor - it_mseg-menge.
p_vvalor = p_vvalor - it_mseg-dmbtr.
ENDIF.

El error da cuando realiza la operación: p_vvalor = p_vvalor + it_mseg-dmbtr.

El campo it_mseg-dmbtr era un CURR (13,2). Lo ajuste a mayor longitud 19,2 pero igual me da el dump. Verificando que otro campo ajustar me encuentro que la llamada de ese form tiene un changing:

PERFORM buscar_valor USING  it_mara-werks
                                  it_mara-matnr
                                  'EN'
                                  ' '
                                  ' '
                                  'X'
                         CHANGING it_mara-entradas
                                  it_mara-ventrada.

FORM buscar_valor USING p_werks "Centro
p_matnr "Material
p_tipcol "Tipo de Columna
p_xauto "Indicador para Verif. Mov Autom.
p_vertrp "Indicador para Verif. Traspasos
p_valent "Indicador para Valorar Entradas
CHANGING p_valor
p_vvalor.

Como puedo ajustar que los valores p_valor y p_vvalor sean mas amplio asi como hice con el campo it_mseg-dmbtr que lo lleve a 19,2. Si lo defino dentro del form me dice que ya estan declarados, si los defino fuera del form me sigue dando el dump.

Muchas Gracias

Ana

Se puede hacer cuando los pones:

CHANGING p_valor TYPE ‘EL TIPO QUE NECESITAS’
p_vvalor TYPE ‘LO MISMO’.

6 Me gusta

Muchas Gracias Amigo, ya resolvi con tu apoyo.

Saludos

Ana

1 me gusta

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