SAP物料主資料建立質量管理檢視後新增檢驗型別
阿新 • • 發佈:2019-02-07
REPORT ZTEST.
DATA:LS_HEADER TYPE BAPIMATHEAD.
DATA:LS_MARC TYPE BAPI_MARC,
LS_MARCX TYPE BAPI_MARCX.
DATA:LS_RETURN TYPE BAPIRET2.
BREAK-POINT.
LS_HEADER-MATERIAL = '303012001'.
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
EXPORTING
INPUT = LS_HEADER-MATERIAL
IMPORTING
OUTPUT = LS_HEADER-
LS_HEADER-IND_SECTOR = 'P'. "行業領域
LS_HEADER-QUALITY_VIEW = 'X'. "質量管理檢視
LS_HEADER-MATL_TYPE = 'Z003'. "物料型別
LS_MARC-PLANT = '2000'.
LS_MARCX-PLANT = '2000'.
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
HEADDATA = LS_HEADER
* CLIENTDATA =
* CLIENTDATAX =
PLANTDATA =
PLANTDATAX = LS_MARCX
* FORECASTPARAMETERS =
* FORECASTPARAMETERSX =
* PLANNINGDATA =
* PLANNINGDATAX =
* STORAGELOCATIONDATA =
* STORAGELOCATIONDATAX =
* VALUATIONDATA =
* VALUATIONDATAX =
* WAREHOUSENUMBERDATA =
* WAREHOUSENUMBERDATAX =
* SALESDATA =
* SALESDATAX =
* STORAGETYPEDATA =
* STORAGETYPEDATAX =
* FLAG_ONLINE = ' '
* FLAG_CAD_CALL = ' '
* NO_DEQUEUE = ' '
* NO_ROLLBACK_WORK = ' '
* CLIENTDATACWM =
* CLIENTDATACWMX =
* VALUATIONDATACWM =
* VALUATIONDATACWMX =
IMPORTING
RETURN = LS_RETURN
* TABLES
* MATERIALDESCRIPTION =
* UNITSOFMEASURE =
* UNITSOFMEASUREX =
* INTERNATIONALARTNOS =
* MATERIALLONGTEXT =
* TAXCLASSIFICATIONS =
* RETURNMESSAGES =
* PRTDATA =
* PRTDATAX =
* EXTENSIONIN =
* EXTENSIONINX =
* UNITSOFMEASURECWM =
* UNITSOFMEASURECWMX =
* NFMCHARGEWEIGHTS =
* NFMCHARGEWEIGHTSX =
* NFMSTRUCTURALWEIGHTS =
* NFMSTRUCTURALWEIGHTSX =
.
IF LS_RETURN-TYPE = 'S'.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.
DATA:LT_INSPECTIONCTRL TYPE TABLE OF BAPI1001004_QMAT,
LS_INSPECTIONCTRL TYPE BAPI1001004_QMAT,
LT_RETURN TYPE TABLE OF BAPIRET2.
DATA:LS_TQ34 TYPE TQ34.
BREAK-POINT.
LS_INSPECTIONCTRL-MATERIAL = '303012001'.
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
EXPORTING
INPUT = LS_INSPECTIONCTRL-MATERIAL
IMPORTING
OUTPUT = LS_INSPECTIONCTRL-MATERIAL
* EXCEPTIONS
* LENGTH_ERROR = 1
* OTHERS = 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
LS_INSPECTIONCTRL-PLANT = '2000'.
LS_INSPECTIONCTRL-INSPTYPE = 'Z02'. "檢驗型別
LS_INSPECTIONCTRL-IND_INSPTYPE_MAT_ACTIVE = 'X'.
SELECT SINGLE *
INTO LS_TQ34
FROM TQ34
WHERE ART = LS_INSPECTIONCTRL-INSPTYPE.
LS_INSPECTIONCTRL-IND_INSP_WITH_TSK_LIST = LS_TQ34-PPL.
LS_INSPECTIONCTRL-IND_SPEC_MATSPEC = LS_TQ34-SPEZUEBER.
LS_INSPECTIONCTRL-IND_SPEC_CONFIG = LS_TQ34-CONF.
LS_INSPECTIONCTRL-IND_SPEC_BATCH = LS_TQ34-TLS.
LS_INSPECTIONCTRL-IND_AUTO_ASSIGN = LS_TQ34-APP.
LS_INSPECTIONCTRL-IND_INSP_BY_CHARAC = LS_TQ34-MER.
LS_INSPECTIONCTRL-IND_POST_TO_INSP_STOCK = LS_TQ34-INSMK.
LS_INSPECTIONCTRL-IND_AUTOMATIC_UD = LS_TQ34-AVE.
LS_INSPECTIONCTRL-SAMPLING_PROCEDURE = LS_TQ34-STICHPRVER.
LS_INSPECTIONCTRL-DYN_MODIF_RULE = LS_TQ34-DYNREGEL.
LS_INSPECTIONCTRL-INSP_PERCENTAGE = LS_TQ34-SPROZ.
LS_INSPECTIONCTRL-IND_100_PERCENT_INSPECTION = LS_TQ34-HPZ.
LS_INSPECTIONCTRL-IND_SKIPS_ALLOWED = LS_TQ34-DYN.
LS_INSPECTIONCTRL-IND_MANUAL_SAMPLE = LS_TQ34-MPB.
LS_INSPECTIONCTRL-IND_MANUAL_SAMPLE_CALC = LS_TQ34-MST.
LS_INSPECTIONCTRL-IND_SINGLE_UNITS_POSSIBLE = LS_TQ34-EIN.
LS_INSPECTIONCTRL-AVE_INSP_DURATION = LS_TQ34-MPDAU.
LS_INSPECTIONCTRL-CONTR_INSP_LOT_CREATE = LS_TQ34-CHG.
LS_INSPECTIONCTRL-QUAL_SCORE_PROCEDURE = LS_TQ34-QKZVERF.
LS_INSPECTIONCTRL-ALLOWED_SCRAP_SHARE = LS_TQ34-QPMAT.
LS_INSPECTIONCTRL-PREFERRED_INSPTYPE = 'X'."首選的檢驗型別
BREAK-POINT.
APPEND LS_INSPECTIONCTRL TO LT_INSPECTIONCTRL.
CALL FUNCTION 'BAPI_MATINSPCTRL_SAVEREPLICA'
TABLES
RETURN = LT_RETURN
INSPECTIONCTRL = LT_INSPECTIONCTRL.
READ TABLE LT_RETURN TRANSPORTING NO FIELDS WITH KEY TYPE = 'S'.
IF LT_RETURN IS INITIAL.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.