*&---------------------------------------------------------------------*
*& Report ZN673881
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ZN673881.
PARAMETERS: TEST AS CHECKBOX DEFAULT 'X'.
TABLES: NRIV,COKEY.
DATA: LD_SUBRC LIKE SY-SUBRC,
LD_NUMBER TYPE CO_SUBNR,
LD_MAX TYPE CO_SUBNR.
* Check NRIV entry (For transaction SNRO)
SELECT SINGLE * FROM NRIV
WHERE OBJECT = 'COKEY'
AND SUBOBJECT = SPACE
AND NRRANGENR = '01'
AND TOYEAR = SPACE.
LD_SUBRC = SY-SUBRC.
* Get highest value from COKEY
SELECT * FROM COKEY.
LD_NUMBER = COKEY-HRKFT+4.
IF LD_NUMBER > LD_MAX.
LD_MAX = LD_NUMBER.
ENDIF.
ENDSELECT.
* Everything fine already?
IF LD_SUBRC = 0 AND LD_MAX LE NRIV-NRLEVEL.
MESSAGE I191(B1).
EXIT.
ENDIF.
*Set entry
LD_NUMBER = 1.
NRIV-FROMNUMBER = LD_NUMBER.
LD_NUMBER = 999999999.
NRIV-TONUMBER = LD_NUMBER.
NRIV-NRLEVEL = LD_MAX + 1.
* Post it in real mode
IF TEST IS INITIAL.
MODIFY NRIV.
COMMIT WORK.
MESSAGE I017(06) WITH 'NRIV/COKEY' NRIV-NRLEVEL.
ELSE.
MESSAGE I812(FU) WITH SY-CPROG.
ENDIF.