SAP物料主数据创建质量管理视图后添加检验类型
2017-03-19 16:24
621 查看
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-MATERIAL.
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 = LS_MARC
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.
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-MATERIAL.
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 = LS_MARC
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.
相关文章推荐
- SAP创建物料主数据(维护长文本,质量视图中质量类型,分类视图)
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
- 表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询) 1.Oracle表的管理
- SAP物料主数据_基本视图设置1
- SAP物料主数据_销售视图设置
- SAP物料主数据_采购视图设置
- oracle 表的管理(数据类型,表创建删除,数据CRUD 操作)
- BDC创建物料主数据各个视图
- NSString的各种用法总结(创建、截取、判断比较、转化数据类型、拼接、替换、添加、追加、读取、写入、删去、改变)
- NSString的各种用法总结(创建、截取、判断比较、转化数据类型、拼接、替换、添加、追加、读取、写入、删去、...
- SAP中使用MM01创建物料如何选定行业领域和物料类型
- oracle表的管理(数据类型,表创建删除,数据CRUD 操作)
- oracle表的管理(数据类型,表的创建,删除,数据操作)
- 如何在SAP物料主数据的会计视图中修改物料的价格控制?
- SAP B1在添加物料主数据时,出现错误提示‘xxxx代码已存在’的解决方法
- SAP物料主数据_存储视图设置
- 通过RFC创建某种类型的物料的会计视图-----通过MMZ1来实现
- oracle表的管理(数据类型,表创建删除,数据CRUD 操作)
- 4.oracle表的管理(数据类型,表创建删除,数据CRUD操作)