Ver Mensaje Individual
  #2  
Viejo 30/03/16, 22:01:59
omegaotaku omegaotaku is offline
Member
 
Fecha de Ingreso: nov 2011
Mensajes: 43

Buenas tardes. Espero que te sea util, nose si sera la solucion que necesitas pero por lo menos es algo:

*&---------------------------------------------------------------------*
*& Report YTEMPO
*&
*&---------------------------------------------------------------------*
REPORT YTEMPO.

TYPES:BEGIN OF ty_table,
asig(3) TYPE C,
cege(4) TYPE C,
fondo(4) TYPE C,
importe TYPE DMBTR,
doc(4) TYPE C,
END OF ty_table.

TYPES:BEGIN OF ty_docs,
doc(4) TYPE C,
END OF ty_docs.

DATA:BEGIN OF td_aux_table.
INCLUDE TYPE ty_table.
DATA st_doc TYPE STANDARD TABLE OF ty_docs INITIAL SIZE 0.
DATA:END OF td_aux_table.

DATA: it_table TYPE STANDARD TABLE OF ty_table INITIAL SIZE 0,
wa_table LIKE LINE OF it_table,
it_aux_table LIKE STANDARD TABLE OF td_aux_table INITIAL SIZE 0,
wa_aux_table LIKE LINE OF it_aux_table,
wa_doc TYPE ty_docs.

FIELD-SYMBOLS: <fs_aux_table> LIKE LINE OF it_aux_table.

START-OF-SELECTION.

wa_table-asig = '543'.
wa_table-cege = '1J03'.
wa_table-fondo = '1160'.
wa_table-importe = '20.0'.
wa_table-doc = '1001'.

APPEND wa_table TO it_table.

wa_table-asig = '543'.
wa_table-cege = '1J03'.
wa_table-fondo = '1160'.
wa_table-importe = '10.0'.
wa_table-doc = '1002'.

APPEND wa_table TO it_table.

wa_table-asig = '543'.
wa_table-cege = '1J03'.
wa_table-fondo = '1160'.
wa_table-importe = '50.0'.
wa_table-doc = '1003'.

APPEND wa_table TO it_table.
CLEAR wa_table.

LOOP AT it_table INTO wa_table.

READ TABLE it_aux_table ASSIGNING <fs_aux_table> WITH KEY asig = wa_table-asig.

IF sy-subrc EQ 0.

<fs_aux_table>-importe = <fs_aux_table>-importe + wa_table-importe.

wa_doc = wa_table-doc.

APPEND wa_doc TO <fs_aux_table>-st_doc.

UNASSIGN <fs_aux_table>.

ELSE.

wa_aux_table-asig = wa_table-asig.
wa_aux_table-cege = wa_table-cege.
wa_aux_table-fondo = wa_table-fondo.
wa_aux_table-importe = wa_table-importe.
wa_doc = wa_table-doc.

APPEND:wa_doc TO wa_aux_table-st_doc,
wa_aux_table TO it_aux_table.

ENDIF.

CLEAR:wa_table,wa_aux_table,wa_doc.

ENDLOOP.

PD: Para ver como funciona seguirlo por debug.
Saludos.

Úlima edición por omegaotaku fecha: 31/03/16 a las 11:55:00.
Responder Con Cita