您的位置:首页 > 其它

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.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐