You are on page 1of 2

TYPES:

BEGIN OF ty_ctacebe, " Cuenta/CeBe Validos


gl_account TYPE /bi0/oigl_account, " Cuenta
profit_ctr TYPE /bi0/oiprofit_ctr, " CeBe
/bic/zchregval TYPE /bic/oizchregval, " Registro v�lido
END OF ty_ctacebe.

DATA:
it_ctacebe TYPE STANDARD TABLE OF ty_ctacebe,
wa_ctacebe LIKE LINE OF it_ctacebe,
wa_result LIKE LINE OF RESULT_PACKAGE,
ls_indicadorf TYPE /bic/oizkyindf, " % Fijo
ls_indicadorm TYPE /bic/oizkyindm. " % M�vil

READ TABLE RESULT_PACKAGE


INTO wa_result INDEX 1.

********************* Registros v�lidos ************************


SELECT gl_account profit_ctr /bic/zchregval
INTO CORRESPONDING FIELDS OF wa_ctacebe
FROM /bic/azdsgyp0400 " GyP: Reclasificaci�n (Reg. Validos)
WHERE fiscper EQ wa_result-fiscper AND " Periodo
deb_cre_lc NE '0.00'.

IF wa_ctacebe-/bic/zchregval EQ 'S'. " Solo los registros v�lidos


APPEND wa_ctacebe TO it_ctacebe.
ENDIF.
ENDSELECT.
********************* Registros v�lidos ************************

LOOP AT RESULT_PACKAGE ASSIGNING <result_fields>.


****************** Validaci�n de registros *********************
READ TABLE it_ctacebe " Tabla con registros v�lidos
TRANSPORTING NO FIELDS
WITH TABLE KEY gl_account = <result_fields>-gl_account
profit_ctr = <result_fields>-profit_ctr
/bic/zchregval = 'S'.
****************** Validaci�n de registros *********************
IF sy-subrc EQ 0. " Registro v�lido
****************** Porcentajes M�vil, Fijo ********************
CLEAR:
ls_indicadorf,
ls_indicadorm.

SELECT SINGLE /bic/zkyindf /bic/zkyindm " Porc. Fijo, M�vil


INTO (ls_indicadorf, ls_indicadorm)
" DSO Mapeo Cuenta-CeCo-CeBe-Indicador (Mixto, M�vil, Fijo)
FROM /bic/azdsgyp0300
WHERE gl_account EQ <result_fields>-gl_account AND
profit_ctr EQ <result_fields>-profit_ctr AND
fiscper EQ <result_fields>-fiscper.

IF sy-subrc EQ 0.
MOVE: " Asignaci�n de Porcentajes Fijo, M�vil
ls_indicadorf TO <result_fields>-/bic/zkyindf,
ls_indicadorm TO <result_fields>-/bic/zkyindm.
ENDIF.
****************** Porcentajes M�vil, Fijo ********************
ELSE. " Registro no valido
" Se elimina del RESULT_PACKAGE
DELETE RESULT_PACKAGE.
ENDIF.
ENDLOOP.

You might also like