#1
|
|||
|
|||
Problema con AT NEW y AT END OF - Urgente pls
buenos Dias
Tengo el siquiente codigo que me esta presentando problemas con el "AT END OF" especificamente: ***************************************************** SORT it_tabcont BY carac04. LOOP AT it_tabcont INTO wa_tabcont. AT NEW carac04. CLEAR wa_variedad. sum_prop = 0. sum_arre = 0. sum_part = 0. sum_mdir = 0. sum_prov = 0. sum_area = 0. wa_variedad-varied = wa_tabcont-carac04. ENDAT. IF wa_tabcont-carac18 EQ 'PROPIA'. sum_prop = sum_prop + wa_tabcont-carac02. ELSEIF wa_tabcont-carac18 EQ 'ARRENDAMIENTO'. sum_arre = sum_arre + wa_tabcont-carac02. ELSEIF wa_tabcont-carac18 EQ 'CUENTAS EN PARTICIPACION'. sum_part = sum_part + wa_tabcont-carac02. ELSE. sum_prov = sum_prov + wa_tabcont-carac02. ENDIF. AT END OF carac04. wa_variedad-propia = sum_prop. wa_variedad-arrend = sum_arre. wa_variedad-partic = sum_part. wa_variedad-mdirect = sum_prop + sum_arre + sum_part. wa_variedad-proveed = sum_prov. wa_variedad-tot_an = wa_variedad-mdirect + wa_variedad-proveed. APPEND wa_variedad TO it_variedad. ENDAT. ENDLOOP. **************************************************** La tabla interna it_tabcont tiene datos de esta manera: -------------------------------------------------------------- Linea..Objeto.........CARAC02...CARAC04........CARAC18 -------------------------------------------------------------- 1.......1044-040.......6.58.......CC 84-75.......ARRENDAMIENTO 2.......2050-052.......2.00.......CC 84-75.......ARRENDAMIENTO 3.......1043-011.......1.32.......CC 84-75.......ARRENDAMIENTO 4.......1043-010.......1.16.......CC 84-75.......ARRENDAMIENTO 5.......1040-011.......1.16.......CC 90-00.......PROPIA 6.......1040-010.......6.16.......CC 90-00.......PROPIA 7.......2286-112.......8.63.......CC 90-00.......PROVEEDORES 8.......2053-010.......1.48.......CC 70-02.......ARRENDAMIENTO *************************************************** El problema esta en que al leer el primer registro, el carac04 = CC 84-75. Por ser el primero, obviamente entra en el AT NEW carac04. Pero, tambien esta entrando al AT END OF carac04 y NO deberia entrar ya que el siguiente registro a leer tendria el mismo valor CC 84-75. Lo que quiero al final es obtener para cada CARAC04, cual es el valor total (CARAC02) para ARRENDAMIENTO, para PROPIA y para PROVEEDORES Ojala me puedan ayudar ya que he trabajado con los AT NEW y AT END OF en casos similares pero solo hasta ahora no me sigue la logica. Gracias! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|