Hi Enrique Aguirre,
Check with below sample code .
DATA: T_INSPECTIONCTRL TYPE STANDARD TABLE BAPI1001004_QMAT
WITH HEADER LINE INITIAL SIZE 0,
BAPIMSGQ TYPE STANDARD TABLE BAPIRET2 WITH HEADER LINE INITIAL SIZE 0.
* QUALITY MANAGEMENT DATA
CLEAR T_INSPECTIONCTRL .
T_INSPECTIONCTRL-INSPTYPE = 'Z1' .
T_INSPECTIONCTRL-MATERIAL = T_MAT_NR . " Material Number leading with zero
T_INSPECTIONCTRL-PLANT = T_WERKS . " Plant
T_INSPECTIONCTRL-DYN_MODIF_RULE = 'Z01' .
T_INSPECTIONCTRL-ALLOWED_SCRAP_SHARE = '0.0001'.
T_INSPECTIONCTRL-IND_100_PERCENT_INSPECTION = 'X' .
T_INSPECTIONCTRL-IND_POST_TO_INSP_STOCK = 'X' .
T_INSPECTIONCTRL-IND_INSPTYPE_MAT_ACTIVE = 'X' .
T_INSPECTIONCTRL-QUAL_SCORE_PROCEDURE = TQ06-QKZVERF " Procedure for Calculating Quality Score
T_INSPECTIONCTRL-CONTR_INSP_LOT_CREATE = TQ32C-HERKUNFT " Inspection Lot Origin
APPEND T_INSPECTIONCTRL.
CLEAR T_INSPECTIONCTRL .
CALL FUNCTION 'BAPI_MATINSPCTRL_SAVEREPLICA'
TABLES
RETURN = BAPIMSGQ
INSPECTIONCTRL = T_INSPECTIONCTRL.
READ TABLE BAPIMSGQ WITH KEY TYPE = 'S'.
IF SY-SUBRC EQ '0'.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ELSE.
CONCATENATE BAPIMSGCL-ID BAPIMSGCL-NUMBER BAPIMSGQ-MESSAGE INTO E_ERROR SEPARATED BY SPACE.
ENDIF.
Regard's
Smruti