Operaciones abap

Buenas a todos.
Se que para todos sera algo simple pero para mi no lo entiendo mucho y no quiero complicarme, en el codigo me sale como resultado una screen que muestra en TEMP un matchcode con loa años, y a continuación los meses donde puedo escribir las temperturas, pero al darle al :heavy_check_mark: o execute(f8), quisiera que me salga la suma pero no se como hacerlo, supongo que en codigo tendria que hacer una operacion pero no se como hacerlo ya que ese campo esta creado con c y no con i
Gracias de antemano

REPORT  ZTEMPERATURA.

SELECTION-SCREEN BEGIN OF BLOCK  T1 WITH FRAME.
  PARAMETERS:
TEMP type ZTAB_TEMPERATURA-TEMPERATURA,
ENERO(4) TYPE c ,
FEBRERO(4) TYPE c,
MARZO(4) TYPE c,
ABRIL(4) TYPE c,
MAYO(4) TYPE c,
JUNIO(4) TYPE c,

  SELECTION-SCREEN END OF BLOCK T1.

  WRITE:/ TEMP, ENERO, FEBRERO.

Hola,
No importan que sean C, igual pueden ser usadas para sumar, siempre que contengan un número (si el usuario ingresa ‘A’, se te va a complicar).

Mira este ejemplo:

REPORT  z_test_sebas2.

DATA: lv1 TYPE c,
      lv2 TYPE c,
      lv_final TYPE string.

lv1 = 1.
lv2 = 3.

lv_final = lv1 + lv2.

WRITE lv_final.

Resultado:

image

Puse la final como string, porque ‘C’ te va a permitir solo un caracter, y si la suma te da 48, te va a mostrar solo 4.

Espero que te sirva!
Saludos.

3 Me gusta

Gracias pero la duda es que los valores no los coloco yo, si no un usuario, si dentro del código le coloco ya os valores predeterminados no hay problema, pero la idea es que los números sean colocados desde fuera y al darle al execute tienen que sumar los valores de los 12 meses y después dividirlo.
Otra opción es guardar los números en una tabla interna, y eso tampoco me aclaro mucho como hacerlo
Gracias de antemano

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