Skip to Content
0
May 14, 2018 at 07:51 AM

MCS10001 changing records are not reflected in table 'S5***'

125 Views Last edit May 14, 2018 at 07:58 AM 3 rev

Hi, exparts.

I want to use customer (not parvw = 'AG','WE','RE','RG' but 'Z1') as key of LIS table(S5***).

I wrote this code in MCS10001 EXIT_SAPLMCS1_002 ↓

FIELD-SYMBOLS:TYPE table.
FIELD-SYMBOLS:TYPE table.
DATA lv_old_kz VALUE '1'.
DATA lv_new_kz VALUE '2'.
DATA tb_pa LIKE vbpavb OCCURS 0 WITH HEADER LINE.REFRESH tb_pa. 

CLEAR tb_pa.

CASE i_xmcvbap-supkz.

WHEN lv_old_kz .
ASSIGN ('(SAPMV45A)YVBPA[]') TO  ‹Y1›.

IF sy-subrc EQ 0.tb_pa[] =.
READ TABLE tb_pa WITH KEY  parvw = 'Z1'.

IF sy-subrc ne 0.
ASSIGN ('(SAPMV45A)XVBPA[]') TO ‹Y1›.

IF sy-subrc EQ 0.tb_pa[] =.

ENDIF.

ENDIF.

ENDIF.

WHEN lv_new_kz.
ASSIGN ('(SAPMV45A)XVBPA[]') TO ‹Y1›.

IF sy-subrc EQ 0.tb_pa[] =.

ENDIF.

ENDCASE.
....

It go well when record is registared , but when changing value of customer(parvw = 'Z1'), changing value is not reflected in table.

The code I wrote is wrong?

Thanks for your time and reading.