Dear All,
I try to use this 'RV_CONDITION_COPY' can't save.
Could you please help below case?
DATA : wa_key_fields LIKE komg,
lt_copy_records TYPE TABLE OF komv WITH HEADER LINE.
"wa_konp TYPE konp.
DATA : BEGIN OF ty_test OCCURS 0,
knumh LIKE konp-knumh,
konwa LIKE konp-konwa,
krech LIKE konp-krech,
stfkz LIKE konp-stfkz,
kpein LIKE konp-kpein,
kmein LIKE konp-kmein,
zaehk_ind LIKE konp-zaehk_ind,
END OF ty_test.
DATA : wa_konp LIKE TABLE OF ty_test WITH HEADER LINE.
CLEAR : wa_key_fields, lt_copy_records.
REFRESH : lt_copy_records.
SELECT SINGLE * FROM konp
INNER JOIN a916 ON a916~knumh = konp~knumh
INTO CORRESPONDING FIELDS OF wa_konp
WHERE matnr EQ '000000000000000096'.
wa_key_fields-werks = '1000'.
wa_key_fields-matnr = '000000000000000096'.
lt_copy_records-knumv = wa_konp-knumh.
lt_copy_records-kappl = 'V'.
lt_copy_records-kschl = 'PI01'.
lt_copy_records-kbetr = '33.33'.
lt_copy_records-waers = wa_konp-konwa.
lt_copy_records-krech = wa_konp-krech.
lt_copy_records-stfkz = wa_konp-stfkz.
lt_copy_records-kpein = wa_konp-kpein.
lt_copy_records-kmein = wa_konp-kmein.
lt_copy_records-zaehk_ind = wa_konp-zaehk_ind.
APPEND lt_copy_records.
CALL FUNCTION 'RV_CONDITION_COPY'
EXPORTING
application = 'V'
condition_table = '916'
condition_type = 'PI01'
enqueue = 'X'
key_fields = wa_key_fields
maintain_mode = 'B'
no_authority_check = 'X'
TABLES
copy_records = lt_copy_records
EXCEPTIONS
enqueue_on_record = 1
invalid_application = 2
invalid_condition_number = 3
invalid_condition_type = 4
no_authority_ekorg = 5
no_authority_kschl = 6
no_authority_vkorg = 7
no_selection = 8
table_not_valid = 9
no_material_for_settlement = 10
no_unit_for_period_cond = 11
no_unit_reference_magnitude = 12
invalid_condition_table = 13
OTHERS = 14
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.ENDIF.
CALL FUNCTION 'RV_CONDITION_SAVE'.
COMMIT WORK.
CALL FUNCTION 'RV_CONDITION_RESET'.
COMMIT WORK.
ENDIF.