ayuda para filtrar duplicados
HOla, estoy ordenando una tabla interna t_print_new para mostrar en un catalogo ALV que ya esta ordenado...
LOOP AT T_PRINT WHERE LGART EQ '/151'.
MOVE: T_PRINT-PERNR TO T_PRINT_NEW-PERNR,
T_PRINT-ENAME TO T_PRINT_NEW-ENAME,
T_PRINT-ICNUM TO T_PRINT_NEW-ICNUM,
T_PRINT-LGART TO T_PRINT_NEW-CC_BASE,
T_PRINT-LGTXT TO T_PRINT_NEW-LGTXT_1,
T_PRINT-BETRG TO T_PRINT_NEW-BASE_IMP.
**
IF T_PRINT_NEW-PERNR eq WA_FIELD-SELTEXT_L.
ELSE.
APPEND T_PRINT_NEW.
ENDIF.
LOOP AT T_PRINT WHERE LGART EQ '/401'.
MOVE: T_PRINT-PERNR TO T_PRINT_NEW-PERNR,
T_PRINT-ENAME TO T_PRINT_NEW-ENAME,
T_PRINT-ICNUM TO T_PRINT_NEW-ICNUM,
T_PRINT-LGART TO T_PRINT_NEW-CC_MONTO_RET,
T_PRINT-LGTXT TO T_PRINT_NEW-LGTXT_2,
T_PRINT-BETRG TO T_PRINT_NEW-MONTO_RET.
APPEND T_PRINT_NEW.
ENDLOOP.
ENDLOOP.
APPEND T_PRINT_NEW.
*respaldo para eliminar duplicados
*delete t_print_new where base_imp eq '0'.
*delete t_print_new where monto_ret eq '0'.
DELETE ADJACENT DUPLICATES FROM T_PRINT_NEW COMPARING PERNR
ENAME ICNUM CC_BASE CC_MONTO_RET LGTXT_1 LGTXT_2 BASE_IMP MONTO_RET.
lo que me interesa es que no se dupliquen ya que el append agrega una nueva linea ..
ejemplo de la tabla original:
ficha - codigo - monto
160001 /151 12
160001 /401 10
y yo estoy mostrando de manera ordenada en una sola linea.
ficha - codigo1 - descripcion_codigo1 - monto1 - codigo2 - descripción_codigo2 - monto2
el resultado esta representado en el archivo Dibujo.jpg
-como puedo capturar el valor de la ficha para hacer el filtrado.?cual seria la mejor practica para esta situación.con el wa_ no va..
Gracias por su ayuda..
|