Amplaicion IDOc MATMAS

21
Nombre Documento SAP NetWeaver Documento de Especificación Técnica Nombre Proyecto Versión 1.0 – Enero, 2011

Transcript of Amplaicion IDOc MATMAS

Page 1: Amplaicion IDOc MATMAS

Nombre Documento

SAP NetWeaverDocumento de Especificación Técnica

Nombre Proyecto

Versión 1.0 – Enero, 2011

Page 2: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

Identificación del Documento

Nombre

Cliente Quintec Aplicaciones Soporte Interno

Descripción general

Nombre de la Especificación Técnica

ET_....

Descripción DescripcionProceso de Negocio Proceso

SAP Release SAP ECC 6.0 Módulo de SAP BC

Prioridad MediaComplejidad del Objeto

Media

Versiones

Versión Fecha Descripción

1.0 13/01/2010 1 Inicial

1.1 04/11/2008

Autores

Nombre Compañía Número de Interno Rol

Murad, Juan Antonio Quintec PI / ABAP

Luis, Santos Quintec PP

Documentos Relacionados

Tipo de Documento Nombre del Documento Versión Relación

Solicitud/es de Cambio

1

?Versiones y estado posibles: 0.1 para estado Inicial y en proceso

0.2 para estado de Listo Revisión interna1.0 para estado FinalEn caso de cambios fundamentales:1.1 para estado Inicia (nueva version que debe ser sometida a nueva revisión)1.2 para estado Listo para Revisión interna2.0 para estado Fina

Page 2 of 17 document.docVersion 1.0

Page 3: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

Estado del Documento

Estado Fecha de

Aprobación

Comentarios

Inicial

Firmas

Empresa Rol Firma

Cliente Gerente de Proyecto

Quintec Gerente de Proyecto

Page 3 of 17 document.docVersion 1.0

Page 4: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

Contenido

1 FUNCIONALIDAD 1...................................................................................................51.1 Packages............................................................................................................................. 5

1.2 BOR Objects........................................................................................................................ 5

1.3 Data Dictionary Objects.......................................................................................................5

1.4 Program Units (Programas tipo 1 )......................................................................................5

1.4.1 General Program Structure.............................................................................................................51.4.2 Algorithms........................................................................................................................................51.4.3 Transactions.....................................................................................................................................5

1.5 ABAP Interfaces.................................................................................................................. 5

1.6 Proxy Classes...................................................................................................................... 5

1.7 Classes ( Massive Programs)..............................................................................................5

1.8 Function Groups..................................................................................................................6

1.9 Functions............................................................................................................................. 6

1.10 BAPIs................................................................................................................................ 14

1.11 Enhancements................................................................................................................... 14

1.12 BDT Extensions................................................................................................................. 16

1.13 Formularios........................................................................................................................ 16

1.14 ALE configuration and Programming.................................................................................16

1.15 Authorization objects.........................................................................................................16

1.16 Workflow............................................................................................................................ 16

1.17 Data Migration................................................................................................................... 17

1.18 Modifications...................................................................................................................... 17

2 FUNCIONALIDAD 2.................................................................................................17

3 FUNCIONALIDAD 3.................................................................................................17

4 OPEN POINTS AND COMMENTS..............................................................................17

5 Unit Test Plan......................................................................................................17

Page 4 of 17 document.docVersion 1.0

Page 5: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

1 FUNCIONALIDAD 1

1.1 PackagesZ001

1.2 BOR ObjectsNo posee

1.3 Data Dictionary ObjectsNo posee

1.4 Program Units (Programas tipo 1 )No posee

1.4.1 General Program Structure No posee

1.4.2 AlgorithmsEsta funcion tiene como objetivo generar dos procesos despues de la carga o actualizacion del material, el cual es realizado por el IDOC MATMAS05, dentro del mismo se agrego un punto de ampliacion del tipo seccion, el cual despues de generar o actualizar el material llama a esta funcion, en base al mensaje “ZMATMAS_PTSE”, la funcion realiza dos procesos:

1. Genera la version del material, en caso de que es un material nuevo y la version no existe.

2. Genera el colector de coste del material en caso de que el material es nuevo y no tiene costes asignados.En caso que el material exista y ya tenga cargado los proceso 1 y 2, no realiza ninguna operacion.

1.4.3 Transactions No posee

1.5 ABAP InterfacesNo posee

1.6 Proxy ClassesNo posee

1.7 Classes ( Massive Programs)No posee

1.8 Function Groups Z_BAPI_CARGA_ZMATMAS_PTSE: Carga Materiales PTSE

Page 5 of 17 document.docVersion 1.0

Page 6: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

1.9 Functions

ZBAPI_CARGA_ZMATMAS_PTSEParámetros

Import Export Changing Tables

T_MARA_UEB

T_MARC_UEBT_MAKT_UEBT_MBEW_UEBAMERRDAT

Exceptions

Processing logicFUNCTION zbapi_carga_zmatmas_ptse.*"----------------------------------------------------------------------*"*"Interfase local*" TABLES*" T_MARA_UEB STRUCTURE MARA_UEB*" T_MARC_UEB STRUCTURE MARC_UEB*" T_MAKT_UEB STRUCTURE MAKT_UEB*" T_MBEW_UEB STRUCTURE MBEW_UEB*" AMERRDAT STRUCTURE MERRDAT*"---------------------------------------------------------------------- DATA: wa_merrdat LIKE merrdat, lt_centro TYPE TABLE OF marc, wa_centro LIKE LINE OF lt_centro, wa_mara LIKE LINE OF t_mara_ueb, wa_marc LIKE LINE OF t_marc_ueb, wa_makt LIKE LINE OF t_makt_ueb, wa_mbew LIKE LINE OF t_mbew_ueb, vl_error TYPE char1.

* verifico que no existan errores LOOP AT amerrdat INTO wa_merrdat WHERE msgty NA 'SDHWI'. EXIT. ENDLOOP. IF sy-subrc = 0.* exitio error genero mensaje EXIT. ENDIF.* recorro los centros del material LOOP AT t_marc_ueb INTO wa_marc. CLEAR: wa_mara, wa_makt, wa_mbew.

* realizo la lectura del material READ TABLE t_mara_ueb WITH KEY matnr = wa_marc-matnr

Page 6 of 17 document.docVersion 1.0

Page 7: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

INTO wa_mara.

* realizo la lectura del texto material READ TABLE t_makt_ueb WITH KEY matnr = wa_marc-matnr INTO wa_makt.

* realizo la lectura de la valoracion material READ TABLE t_mbew_ueb WITH KEY matnr = wa_marc-matnr INTO wa_mbew.

* verifico si viene de la interfaz de CCH, si para los centros 1000 y* 1100 tiene el camp SAUFT y SFEPR con valores entonces quiere decir que* viene el campo del legado "Prod Lisa/Proc Comp" = 01 “Procesos Complementarios”. IF wa_mara-nsnid EQ '01' OR wa_mara-nsnid EQ space.* IF wa_marc-werks EQ '1100' OR wa_marc-werks EQ '1000' AND* ( wa_marc-sauft EQ 'X' AND wa_marc-sfepr EQ 'ZZ01' ).

* verifico que no genere dos veces para el mismo centro READ TABLE lt_centro WITH KEY werks = wa_marc-werks TRANSPORTING NO FIELDS.

IF sy-subrc NE 0.* genero el BI para generar la version PERFORM ejecutar_bi_version_mat TABLES amerrdat USING wa_marc wa_makt wa_mara vl_error.

* verifico que exista error CHECK vl_error EQ space.

* genero el BI para el colector de costo PERFORM ejecutar_bi_colector_costos TABLES amerrdat USING wa_marc wa_makt wa_mbew.

* almaceno para que no se vuelva a repetir el centro wa_centro-werks = wa_marc-werks. APPEND wa_centro TO lt_centro. ENDIF. ENDIF. ENDLOOP.ENDFUNCTION.*&---------------------------------------------------------------------**& Form ejecutar_bi_version_mat*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** -->P_MATERIAL text* -->P_ERROR text*----------------------------------------------------------------------*

Page 7 of 17 document.docVersion 1.0

Page 8: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

FORM ejecutar_bi_version_mat TABLES lt_amerrdat STRUCTURE merrdat USING value(wa_marc) TYPE marc_ueb value(wa_makt) TYPE makt_ueb value(wa_mara) TYPE mara_ueb value(p_error) TYPE char1. DATA: wa_amerrdat LIKE LINE OF lt_amerrdat, wa_tranc LIKE LINE OF lt_amerrdat, wa_messtab LIKE LINE OF tg_messtab, vl_laeda TYPE char10, vl_verid TYPE mkal-verid.

REFRESH tg_bdcdata.

* convierto el material a formato interno CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT' EXPORTING input = wa_marc-matnr IMPORTING output = wa_marc-matnr EXCEPTIONS length_error = 1 OTHERS = 2.

* verifico si existe version del material, si existe evito el batch input* y detallo el mensaje SELECT SINGLE verid FROM mkal INTO vl_verid WHERE matnr EQ wa_marc-matnr AND werks EQ wa_marc-werks. IF sy-subrc EQ 0. CLEAR: tg_messtab, tg_messtab[]. wa_messtab-msgid = '0K'. wa_messtab-msgtyp = 'I'. wa_messtab-msgnr = '000'. wa_messtab-msgv1 = 'Existe versión'. wa_messtab-msgv2 = vl_verid. CONCATENATE 'para el material' wa_marc-matnr INTO wa_messtab-msgv3 SEPARATED BY space. CONCATENATE '/ Centro' wa_marc-werks '.' INTO wa_messtab-msgv4 SEPARATED BY space. APPEND wa_messtab TO tg_messtab. ELSE.* convierto el material a formato externo CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = wa_marc-matnr IMPORTING output = wa_marc-matnr.* cargo los campos del bi

Page 8 of 17 document.docVersion 1.0

Page 9: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

PERFORM bdc_dynpro USING 'SAPLCMFV' '1000'. PERFORM bdc_field USING 'BDC_OKCODE' '=ENTE'. PERFORM bdc_field USING 'BDC_CURSOR' 'MKAL-WERKS'. PERFORM bdc_field USING 'MKAL-WERKS' wa_marc-werks. PERFORM bdc_field USING 'MKAL-MATNR' wa_marc-matnr.

PERFORM bdc_dynpro USING 'SAPLCMFV' '1000'. PERFORM bdc_field USING 'BDC_OKCODE' '=CREA'. PERFORM bdc_field USING 'BDC_CURSOR' 'MKAL-WERKS'. PERFORM bdc_field USING 'MKAL-WERKS' wa_marc-werks. PERFORM bdc_field USING 'MKAL-MATNR' wa_marc-matnr.

CLEAR vl_laeda. IF NOT wa_mara-laeda IS INITIAL. WRITE wa_mara-laeda TO vl_laeda. CONDENSE vl_laeda. ENDIF.

PERFORM bdc_dynpro USING 'SAPLCMFV' '2000'. PERFORM bdc_field USING 'BDC_CURSOR' 'MKAL_EXPAND-SERKZ'. PERFORM bdc_field USING 'BDC_OKCODE' '=CLOS'. PERFORM bdc_field USING 'MKAL_EXPAND-MATNR' wa_marc-matnr. PERFORM bdc_field USING 'MKAL_EXPAND-VERID' '0001'. PERFORM bdc_field USING 'MKAL_EXPAND-TEXT1' wa_makt-maktx. PERFORM bdc_field USING 'MKAL_EXPAND-ADATU' vl_laeda. PERFORM bdc_field USING 'MKAL_EXPAND-SERKZ' 'X'.

PERFORM bdc_dynpro USING 'SAPLCMFV' '1000'. PERFORM bdc_field USING 'BDC_OKCODE' '=SAVE'. PERFORM bdc_field USING 'BDC_CURSOR' 'MKAL-WERKS'. PERFORM bdc_field USING 'MKAL-WERKS' wa_marc-werks. PERFORM bdc_field USING 'MKAL-MATNR' wa_marc-matnr.

PERFORM bdc_transaction USING 'C223'. ENDIF.

* recorro los mensajes ocurridos en el proceso LOOP AT tg_messtab INTO wa_messtab. AT FIRST.* realizo la lectura para obtener el codigo LOOP AT lt_amerrdat WHERE NOT tranc IS INITIAL. wa_tranc = lt_amerrdat. EXIT. ENDLOOP. wa_amerrdat-tranc = wa_tranc-tranc. wa_amerrdat-matnr = wa_marc-matnr. wa_amerrdat-msgid = '0K'. wa_amerrdat-msgty = 'I'. wa_amerrdat-msgno = '0000'. wa_amerrdat-msgv1 = '1) PROCESO: CARGA VERSIÓN MATERIAL trx C223.'.

Page 9 of 17 document.docVersion 1.0

Page 10: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

wa_amerrdat-msgv2 = 'Para Centro'. wa_amerrdat-msgv3 = wa_marc-werks. APPEND wa_amerrdat TO lt_amerrdat. CLEAR wa_amerrdat. ENDAT. IF tg_messtab-msgtyp EQ 'E' OR tg_messtab-msgtyp EQ 'A'. p_error = 'X'. ENDIF.* paso los campo identicos wa_amerrdat-tranc = wa_tranc-tranc. wa_amerrdat-matnr = wa_marc-matnr. wa_amerrdat-msgid = wa_messtab-msgid. wa_amerrdat-msgty = wa_messtab-msgtyp. wa_amerrdat-msgno = wa_messtab-msgnr. wa_amerrdat-msgv1 = wa_messtab-msgv1. wa_amerrdat-msgv2 = wa_messtab-msgv2. wa_amerrdat-msgv3 = wa_messtab-msgv3. wa_amerrdat-msgv4 = wa_messtab-msgv4. APPEND wa_amerrdat TO lt_amerrdat. ENDLOOP.ENDFORM. " EJECUTAR_BI_VERSION_MAT*&---------------------------------------------------------------------**& Form EJECUTAR_BI_COLECTOR_COSTOS*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** <--P_ERROR text*----------------------------------------------------------------------*FORM ejecutar_bi_colector_costos TABLES lt_amerrdat STRUCTURE merrdat USING value(wa_marc) TYPE marc_ueb value(wa_makt) TYPE makt_ueb value(wa_mbew) TYPE mbew_ueb.

DATA: wa_amerrdat LIKE LINE OF lt_amerrdat, wa_tranc LIKE LINE OF lt_amerrdat, wa_messtab LIKE LINE OF tg_messtab, vl_peinh TYPE char10, lt_process_tbl TYPE ckml_t_process, wa_process_tbl LIKE LINE OF lt_process_tbl.

* convierto el material a formato interno CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT' EXPORTING input = wa_marc-matnr IMPORTING output = wa_marc-matnr EXCEPTIONS length_error = 1 OTHERS = 2.

Page 10 of 17 document.docVersion 1.0

Page 11: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

* verifico si existe el colector CALL FUNCTION 'CKML_MGV_PROCESSES_READ' EXPORTING iv_werks = wa_marc-werks iv_matnr = wa_marc-matnr IMPORTING et_process_tbl = lt_process_tbl EXCEPTIONS wrong_characteristics = 1 rule_not_found = 2 multiple_pkosa_found = 3 OTHERS = 4.* busco el colector de costo para la version 0001 de fabricación LOOP AT lt_process_tbl INTO wa_process_tbl WHERE verid_nd EQ '0001'. EXIT. ENDLOOP.

IF sy-subrc EQ 0. CLEAR: tg_messtab, tg_messtab[]. wa_messtab-msgid = '0K'. wa_messtab-msgtyp = 'I'. wa_messtab-msgnr = '000'. IF wa_process_tbl-pkosa IS INITIAL. wa_messtab-msgv1 = 'Existe colector de costo, el mismo no tiene orden'. wa_messtab-msgv2 = 'o tiene peticion de borrado, verif. en la trx KKF6'. ELSE. wa_messtab-msgv1 = 'Existe un colector de costo:'. CONCATENATE 'NºProcFabricación:' wa_process_tbl-proc_kalnr 'Orden' wa_process_tbl-pkosa INTO wa_messtab-msgv2 SEPARATED BY space. ENDIF. CONCATENATE 'para el material' wa_marc-matnr INTO wa_messtab-msgv3 SEPARATED BY space. CONCATENATE '/ Centro' wa_marc-werks '.' INTO wa_messtab-msgv4 SEPARATED BY space. APPEND wa_messtab TO tg_messtab. ELSE. REFRESH tg_bdcdata.* convierto el material a formato externo CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = wa_marc-matnr IMPORTING output = wa_marc-matnr.

* cargo el batch input del colector PERFORM bdc_dynpro USING 'SAPMKOSA' '0101'. PERFORM bdc_field USING 'BDC_OKCODE' '/00'. PERFORM bdc_field USING 'BDC_CURSOR' 'PKOSA-MATNR'.

Page 11 of 17 document.docVersion 1.0

Page 12: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

PERFORM bdc_field USING 'PKOSA-MATNR' wa_marc-matnr. PERFORM bdc_field USING 'PKOSA-WERKS' wa_marc-werks.

PERFORM bdc_dynpro USING 'SAPMSSY0' '0120'. PERFORM bdc_field USING 'BDC_OKCODE' '=&NT1'. PERFORM bdc_field USING 'BDC_CURSOR' '04/13'.

PERFORM bdc_dynpro USING 'SAPMKOSA' '0111'. PERFORM bdc_field USING 'BDC_OKCODE' '=SAVE'. PERFORM bdc_field USING 'BDC_CURSOR' 'PROCPARAM-VERID'. PERFORM bdc_field USING 'PROCPARAM-VERID' '0001'. WRITE wa_mbew-peinh TO vl_peinh. CONDENSE vl_peinh. PERFORM bdc_field USING 'PROCPARAM-LOSGR' vl_peinh.

* convierto el centro de beneficio a formato externo CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = wa_marc-prctr IMPORTING output = wa_marc-prctr.

PERFORM bdc_field USING 'PKOSA-PRCTR' wa_marc-prctr. PERFORM bdc_field USING 'PROCPARAM-PWERK' wa_marc-werks. PERFORM bdc_field USING 'PKOSA-KTEXT' wa_makt-maktx. PERFORM bdc_field USING 'CKMLMV001T-KTEXT' wa_makt-maktx.

PERFORM bdc_transaction USING 'KKF6'. ENDIF.* recorro los mensajes ocurridos en el proceso LOOP AT tg_messtab INTO wa_messtab. AT FIRST.* realizo la lectura para obtener el codigo LOOP AT lt_amerrdat WHERE NOT tranc IS INITIAL. wa_tranc = lt_amerrdat. EXIT. ENDLOOP. wa_amerrdat-tranc = wa_tranc-tranc. wa_amerrdat-matnr = wa_marc-matnr. wa_amerrdat-msgid = '0K'. wa_amerrdat-msgty = 'I'. wa_amerrdat-msgno = '0000'. wa_amerrdat-msgv1 = '2) PROCESO: CARGA COLECTOR DE COSTO trx KKF6'. wa_amerrdat-msgv2 = 'Para Centro'. wa_amerrdat-msgv3 = wa_marc-werks. APPEND wa_amerrdat TO lt_amerrdat. CLEAR wa_amerrdat. ENDAT.* paso los campo identicos wa_amerrdat-tranc = wa_tranc-tranc.

Page 12 of 17 document.docVersion 1.0

Page 13: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

wa_amerrdat-matnr = wa_marc-matnr. wa_amerrdat-msgid = wa_messtab-msgid. wa_amerrdat-msgty = wa_messtab-msgtyp. wa_amerrdat-msgno = wa_messtab-msgnr. wa_amerrdat-msgv1 = wa_messtab-msgv1. wa_amerrdat-msgv2 = wa_messtab-msgv2. wa_amerrdat-msgv3 = wa_messtab-msgv3. wa_amerrdat-msgv4 = wa_messtab-msgv4. APPEND wa_amerrdat TO lt_amerrdat. ENDLOOP.

ENDFORM. " EJECUTAR_BI_COLECTOR_COSTOS*&---------------------------------------------------------------------**& Form bdc_dynpro*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** -->P_PROGRAM text* -->P_DYNPRO text*----------------------------------------------------------------------*FORM bdc_dynpro USING p_program p_dynpro.

CLEAR tg_bdcdata. tg_bdcdata-program = p_program. tg_bdcdata-dynpro = p_dynpro. tg_bdcdata-dynbegin = 'X'. APPEND tg_bdcdata.

ENDFORM. " BDC_DYNPRO*&---------------------------------------------------------------------**& Form BDC_FIELD*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** -->P_FNAM text* -->P_FVAL text*----------------------------------------------------------------------*FORM bdc_field USING p_fnam p_fval.

CLEAR tg_bdcdata. tg_bdcdata-fnam = p_fnam. tg_bdcdata-fval = p_fval. APPEND tg_bdcdata.

ENDFORM. " BDC_FIELD*&---------------------------------------------------------------------**& Form BDC_TRANSACTION*&---------------------------------------------------------------------** text*----------------------------------------------------------------------*

Page 13 of 17 document.docVersion 1.0

Page 14: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

* -->P_0551 text*----------------------------------------------------------------------*FORM bdc_transaction USING p_tcode. DATA: mode TYPE char1 VALUE 'N'. REFRESH tg_messtab. CALL TRANSACTION p_tcode USING tg_bdcdata MODE mode "c_mode UPDATE c_update MESSAGES INTO tg_messtab.

REFRESH tg_bdcdata.

ENDFORM. " BDC_TRANSACTION

1.10 BAPIs

1.11 EnhancementsZXI_ZMATMAS_PTSEDefinicion: ENHANCEMENT-SECTION IDOC_INPUT_MATMAS01_08 SPOTS ES_SAPLMV02.

Codigo:

ENHANCEMENT 31 ZXI_ZMATMAS_PTSE. "active version DATA: LT_MARA_UEB LIKE MARA_UEB OCCURS 0, LT_MAKT_UEB LIKE MAKT_UEB OCCURS 0, LT_MARC_UEB LIKE MARC_UEB OCCURS 0, LT_MBEW_UEB LIKE MBEW_UEB OCCURS 0. CLEAR: LT_MAKT_UEB, LT_MAKT_UEB[], LT_MARC_UEB, LT_MARC_UEB[], LT_MBEW_UEB, LT_MBEW_UEB[], LT_MARA_UEB, LT_MARA_UEB[].* realizo una copia de los datos de materiales LT_MARA_UEB = T_MARA_UEB[]. LT_MAKT_UEB = T_MAKT_UEB[]. LT_MARC_UEB = T_MARC_UEB[]. LT_MBEW_UEB = T_MBEW_UEB[].

* genero el material CALL FUNCTION 'MATERIAL_MAINTAIN_DARK' EXPORTING P_KZ_NO_WARN = 'N' KZ_PRF = 'W' KZ_AEND = 'X' KZ_VERW = 'X'* kz_ale = 'X' " //br160697 CALL_MODE = CALL_MODE_ALE " SPERRMODUS = 'E' MAX_ERRORS = MAX_ERRORS "//br4.0* flag_muss_pruefen = c_false " FLAG_MUSS_PRUEFEN = FLAG_MUSS_PRUEFEN " FLG_MASS = FLG_MASS IV_CHANGE_DOC_TCODE = lv_change_doc_tcode "note1050255* importing* matnr_last =* number_errors_transaction =

Page 14 of 17 document.docVersion 1.0

Page 15: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

TABLES AMARA_UEB = T_MARA_UEB AMAKT_UEB = T_MAKT_UEB AMARC_UEB = T_MARC_UEB AMARD_UEB = T_MARD_UEB AMFHM_UEB = T_MFHM_UEB AMARM_UEB = T_MARM_UEB AMEA1_UEB = T_MEAN_UEB AMBEW_UEB = T_MBEW_UEB ASTEU_UEB = T_STEU_UEB ASTMM_UEB = T_STEUMM_UEB AMLGN_UEB = T_MLGN_UEB AMLGT_UEB = T_MLGT_UEB AMPGD_UEB = T_MPGD_UEB AMPOP_UEB = T_MPOP_UEB AMVEG_UEB = T_MVEG_UEB AMVEU_UEB = T_MVEU_UEB AMVKE_UEB = T_MVKE_UEB AMPRW_UEB = T_MPRW_UEB ALTX1_UEB = T_LTX1_UEB AE1CUCFG_UEB = T_E1CUCFG_UEB "TF4.7/ALE MatVar AE1CUINS_UEB = T_E1CUINS_UEB "TF4.7/ALE MatVar AE1CUVAL_UEB = T_E1CUVAL_UEB "TF4.7/ALE MatVar AE1CUCOM_UEB = T_E1CUCOM_UEB "TF4.7/ALE MatVar AMFIELDRES = T_MFIELDRES AMERRDAT = T_MERRDAT EXCEPTIONS KSTATUS_EMPTY = 01 TKSTATUS_EMPTY = 02 T130M_ERROR = 03 INTERNAL_ERROR = 04 TOO_MANY_ERRORS = 05 UPDATE_ERROR = 06 ERROR_MESSAGE = 11 "40 OTHERS = 10. "

* verifico si proviene del mensaje reducio de XI, en ese caso* ejecuto dos BI, una carga la version del material y otro carga* el colector de costo IF IDOC_CONTRL-MESTYP EQ 'ZMATMAS_PTSE'.* tomo el valor del resultado GENERAL_SUBRC = SY-SUBRC. IF GENERAL_SUBRC IS INITIAL.* llamo a la funcion y genero los dos BI CALL FUNCTION 'ZBAPI_CARGA_ZMATMAS_PTSE' TABLES t_mara_ueb = LT_MARA_UEB t_marc_ueb = LT_MARC_UEB t_makt_ueb = LT_MAKT_UEB t_mbew_ueb = LT_MBEW_UEB amerrdat = T_MERRDAT. ENDIF.* vuelvo a dejar el valor resultado, evitando que el sy-subrc,* fuera cambiado en la funcion Z. SY-SUBRC = GENERAL_SUBRC.

Page 15 of 17 document.docVersion 1.0

Page 16: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

ENDIF.

ENDENHANCEMENT.

1.12 BDT ExtensionsNo posee

1.13 FormulariosNo posee

1.14 ALE configuration and ProgrammingNo posee

1.15 Authorization objectsNo posee

1.16 WorkflowNo posee

1.17 Data MigrationNo posee

1.18 ModificationsSe cambia el escenario, por no soportar el proceso de negocio actual.

2 FUNCIONALIDAD 2

3 FUNCIONALIDAD 3

4 OPEN POINTS AND COMMENTS

5 UNIT TEST PLAN

Page 16 of 17 document.docVersion 1.0

Page 17: Amplaicion IDOc MATMAS

Nombre PROYECTOTitulo

Plan de prueba [Por favour copie las condiciones de test de negocio y los scenarios de control de la especificación funcional]

[Agregue escenearios técnicos relevantes asociados al documento. Los ejemplos incluirían: 1) prueba libre de errores; 2) prueba de los procesos de excepción; 3) pruebas de manejo de errores.]

Escenario # Criterios de selección Resultado esperado

Documentación relacionada (adjuntar notas de SAP OSS e-mails, programa existente, etc)

Page 17 of 17 document.docVersion 1.0