Nombre Documento
SAP NetWeaverDocumento de Especificación Técnica
Nombre Proyecto
Versión 1.0 – Enero, 2011
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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