Sei sulla pagina 1di 12

Plantilla para la Especificacin Funcional

Pgina 1 de 12
Control de Documento
Cdigo del Requerimiento MM Creacin Material
Nombre del documento Creacin de Material a partir de un Excel
Mdulo SAP MM
Consultor Funcional
Programador
Status
Tiempo de Desarrollo (das)
Prioridad Media
Nivel complejidad Media

Control de Cambios del Documento
Versin Fecha de Modificacin Responsable Observaciones
1 24.09.2013 Cristian Ramos Creacin del documento
2 21.10.2013 Cristian Ramos Se agreg tabla equivalencia


































Plantilla para la Especificacin Funcional



Pgina 2 de 12
1. Introduccin

El propsito de este desarrollo es facilitar al usuario la creacin y modificacin de materiales, utilizando
para ello un archivo Excel y la Bapi BAPI_MATERIAL_SAVEDATA.

2. Descripcin Funcional

El usuario deber seleccionar alguna de las 3 opciones disponible e indicar la ruta del archivo Excel.



Crear Material (Datos bsicos)

RADIO-BUTTON

Datos de Compras

Datos de Ventas

Ruta de
Archivo:



Cada opcion implica una estructura diferente en el archivo(diferente nmero de colummnas) y por lo
tanto se tendr 3 casos diferentes en el programa.


2.1. Casos

La creacin y modificacin de los materiales se realizar utilizando la Bapi
BAPI_MATERIAL_SAVEDATA. Dependiendo el caso seleccionado, solo se le enviar algunas
estructuras como parmetro.

CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
HEADDATA = BAPIMATHEAD
CLIENTDATA = BAPI_MARA
CLIENTDATAX = BAPI_MARAX
PLANTDATA = BAPI_MARC
PLANTDATAX = BAPI_MARCX
STORAGELOCATIONDATA = BAPI_MARD
STORAGELOCATIONDATAX = BAPI_MARDX
VALUATIONDATA = BAPI_MBEW
VALUATIONDATAX = BAPI_MBEWX
SALESDATA = BAPI_MVKE
SALESDATAX = BAPI_MVKEX

IMPORTING
RETURN = IT_RETURN
TABLES
MATERIALDESCRIPTION = BAPI_MAKT
UNITSOFMEASURE = BAPI_MARM
UNITSOFMEASUREX = BAPI_MARMX
TAXCLASSIFICATIONS = BAPI_MLAN
ENDFUNCTION.




Plantilla para la Especificacin Funcional



Pgina 3 de 12
OBSERVACIONES:

1. Todos los campos del archivo Excel son obligatorios, a no ser que se indique lo
contrario. El * indica que el campo no es obligatorio.
2. En todos los casos se leer la tabla RETURN (TYPE = E) para verificar si hubo algn
error. Al finalizar se mostrar todos los errores en una lista ALV.

A. CASO 1: CREACION DEL MATERIAL

Este aplica para la creacin del material, por lo que ser necesario leer el archivo Excel y completar la
siguiente tabla interna.

TABLA EXCEL 1
CAMPO DESCRIPCION TIPO
P_MATL_DESC Texto breve de material MAKTX
P_DESC_HIS Descripcion del Material HIS ZMAKTX
P_IND_SECTOR Ramo MBRSH
P_ MATL_TYPE Tipo de material MTART
P_MATL_GROUP Grupo de artculos MATKL
P_BASE_UOM Unidad de medida base MEINS
P_PO_UNIT Unidad de medida de pedido BSTME*
P_ BASIC_MATL Materia WRKST
P_ DSN_OFFICE Laboratorio/Oficina de proyectos LABOR*
P_DIVISION Sector SPART
P_BATCH_MGMT Indicador: Sujeto a lote XCHPF*
P_ALT_UNIT Unidad medida alternativa p.unidad medida
almacn
LRMEI*

P_NUMERATOR Contador para la conversin en unidades de
medida base
UMREZ*

P_DENOMINATR Denominador para la conversin en unidades de
medida base
UMREN*


OBSERVACIONES:
Por cada registro de la tabla, se completan las siguientes estructuras que servirn como parmetros para
la Bapi:

BAPIMATHEAD
BAPI_MARA
BAPI_MAKT
BAPI_MARM

La Bapi ha de llamarse una vez por cada registro ledo del Excel, por lo que es muy importante
reinicializar los valores de las estructuras.

GENERAR CDIGO MATERIAL

El primer paso es generar el cdigo del material, para ello utilizaremos la Bapi
BAPI_MATERIAL_GETINTNUMBER, la cual se describe a continuacin.




Plantilla para la Especificacin Funcional



Pgina 4 de 12


CALL FUNCTION 'BAPI_MATERIAL_GETINTNUMBER'
EXPORTING
material_type = P_ MATL_TYPE
industry_sector = P_IND_SECTOR
required_numbers = 1
IMPORTING
return = gv_bapireturn1
TABLES
material_number = gt_bapimatnr.
IF gv_bapireturn1-type EQ 'S'.
READ TABLE gt_bapimatnr INTO gs_bapimatnr INDEX 1.
IF sy-subrc EQ 0.
P_MATERIAL = gs_bapimatnr-material.
ENDIF.
ENDIF.

CREAR MATERIAL

Una vez tengamos el cdigo, podemos completar las dems estructuras.


BAPIMATHEAD

ESTRUCTURA BAPIMATHEAD

CAMPO DESCRIPCION VALOR
MATERIAL Nmero de material P_MATERIAL
IND_SECTOR Ramo P_IND_SECTOR
MATL_TYPE Tipo de material P_ MATL_TYPE
BASIC_VIEW Vista de datos bsicos X


VISTA DE DATOS BASICOS:

ESTRUCTURA BAPI_MARA
CAMPO DESCRIPCION VALOR
MATL_GROUP Grupo de artculos P_MATL_GROUP
BASE_UOM Unidad de medida base P_BASE_UOM
PO_UNIT Unidad de medida de pedido P_PO_UNIT
TRANS_GRP Grupo de transporte 0001
BASIC_MATL Materia P_BASIC_MATL
DSN_OFFICE Laboratorio/Oficina de proyectos P_DSN_OFFICE
DIVISION Sector P_DIVISION
BATCH_MGMT Indicador: Sujeto a lote P_BATCH_MGMT

ESTRUCTURA BAPI_MARAX
CAMPO DESCRIPCION VALOR
MATL_GROUP Grupo de artculos X



Plantilla para la Especificacin Funcional



Pgina 5 de 12
BASE_UOM Unidad de medida base X
PO_UNIT Unidad de medida de pedido X
TRANS_GRP Grupo de transporte X
BASIC_MATL Materia X
DSN_OFFICE Laboratorio/Oficina de proyectos X
DIVISION Sector X
BATCH_MGMT Indicador: Sujeto a lote X

MATERIALDESCRIPTION

ESTRUCTURA BAPI_MAKT
CAMPO DESCRIPCION
LANGU_ISO Idioma segn ISO 639 SY-LANGU
MATL_DESC Texto breve de material MAKTX

UNITSOFMEASURE
Los campos de esta estructura son opcionales, por lo que podran estar en blanco.
Si el campo P_PO_UNIT se encuentra vaco, ya no es necesario completar estas estructuras.
ESTRUCTURA BAPI_MARM
CAMPO DESCRIPCION
ALT_UNIT Unidad medida alternativa p.unidad medida
almacn
P_ALT_UNIT
NUMERATOR Contador para la conversin en unidades de
medida base
P_NUMERATOR
DENOMINATR Denominador para la conversin en unidades de
medida base
1

ESTRUCTURA BAPI_MARMX
CAMPO DESCRIPCION
ALT_UNIT Unidad medida alternativa p.unidad medida
almacn
P_ALT_UNIT
NUMERATOR Contador para la conversin en unidades de
medida base
X
DENOMINATR Denominador para la conversin en unidades de
medida base
X

Una vez completadas las estructuras, se llamar a la BAPI de creacin de materiales.

MODIFICAR DESCRIPCIN

Una vez creado el material, mediante un Recording a la Tx MM02, se modificar la descripcin del
material.

Ingresamos el cdigo de material P_MATERIAL y seleccionamos la vista de Datos base1





Plantilla para la Especificacin Funcional



Pgina 6 de 12





En el campo Desc.HIS ingresamos el valor de la variable P_DESC_HIS.
Finalmente, grabamos.




B. CASO 2: DATOS DE COMPRAS
En este caso el material ya existe y solo vamos a modificarlo. El resto de los datos se leern del
archivo Excel que a continuacin se detalla.




Plantilla para la Especificacin Funcional



Pgina 7 de 12
TABLA EXCEL 2
CAMPO DESCRIPCION TIPO
P_MATERIAL Nmero de material MATNR
P_PLANT Centro WERKS_D
P_STGE_LOC Almacn Principal LGORT_D
P_PLND_DELRY Plazo de entrega previsto en das PLIFZ
P_PROFIT_CTR Centro de beneficio PRCTR
P_TAX_IND Identificador de impuestos material (Compras) TAXIM1


Antes de completar las dems estructuras, lo primero que debemos hacer es consultar todos los
almacenes asignados al centro que se indica en el campo P_PLANT.

SELECT WERKS LGORT
FROM T001L
INTO T_ALMACEN
WHERE WERKS = P_PLANT.

Dependiendo del nmero de almacenes que tenga ese centro, se llamar a la Bapi n veces, donde el
nico dato que cambia es BAPI_MARD -STGE_LOC y BAPI_MARDX -STGE_LOC. Por ejemplo, si se pide
modificar el material30001015 en el centro 2102 y este tiene 3 almacenes, se completar todas las
estructuras y se llamar a la Bapi 3 veces cambiando solo el almacn.

OBSERVACIONES:
Por cada registro de la tabla, se ha de completar las siguientes estructuras las cuales servirn como
parmetros para la Bapi:

BAPIMATHEAD
BAPI_MARC
BAPI_MARD
BAPI_MBEW
BAPI_MLAN

La Bapi ha de llamarse una vez por cada registro ledo del Excel, por lo que es muy importante
reinicializar los valores de las estructuras.

BAPIMATHEAD

ESTRUCTURA BAPIMATHEAD

CAMPO DESCRIPCION VALOR
MATERIAL Nmero de material P_MATERIAL
PURCHASE_VIEW Vista de compras X
MRP_VIEW
Vista de planificacin de necesidades X
FORECAST_VIEW Vista de pronsticos X
STORAGE_VIEW Vista de almacn X
ACCOUNT_VIEW Vista de contabilidad X


VISTA DE COMPRAS:




Plantilla para la Especificacin Funcional



Pgina 8 de 12
ESTRUCTURA BAPI_MARC
CAMPO DESCRIPCION
PLANT Centro P_ PLANT
PUR_GROUP Grupo de compras P_PUR_GROUP *Ver
equivalencia
LOADINGGRP Grupo de carga 0001
MRP_TYPE Caracterstica de planificacin de necesidades ND
MRP_CTRLER Planificador de necesidades Z01
PLND_DELRY Plazo de entrega previsto en das P_ PLND_DELRY
PERIOD_IND Indicador de perodo M
LOTSIZEKEY Tamao de lote de planificacin de necesidades HB
PROC_TYPE Clase de aprovisionamiento F
SM_KEY Clave de horizonte para tiempos de holgura 001
PROFIT_CTR Centro de beneficio P_PROFIT_CTR
ISS_ST_LOC Almacn de produccin LGORT_D
SLOC_EXPRC Almacn propuesto para aprovisionamiento
externo
LGORT_D

*Para completar el campo P_PUR_GROUP se debe consultar el tipo de material del campo MTART de la
tabla MARA donde MATNR = P_MATERIAL (del archivo Excel)

Tipo de
Material

Grupo de compras
(P_PUR_GROUP)

Z100 Medicina 002 Medicamentos
Z110 Mercadera 006 Economato
Z200 Embalaje 006 Economato
Z400 Suministros 006 Economato
Z410 Material Mdico 004
Material
Medico
Z420 Material publicitario 001 Marketing
Z500 Repuestos 006 Economato
Z700 Material reactivo 008 Laboratorio



ESTRUCTURA BAPI_MARCX
CAMPO DESCRIPCION
PLANT Centro P_ PLANT
PUR_GROUP Grupo de compras X
MRP_TYPE Caracterstica de planificacin de necesidades X
MRP_CTRLER Planificador de necesidades X
PLND_DELRY Plazo de entrega previsto en das X
PERIOD_IND Indicador de perodo X
LOTSIZEKEY Tamao de lote de planificacin de necesidades X
PROC_TYPE Clase de aprovisionamiento X
SM_KEY Clave de horizonte para tiempos de holgura X
PROFIT_CTR Centro de beneficio X
ISS_ST_LOC Almacn de produccin X



Plantilla para la Especificacin Funcional



Pgina 9 de 12
SLOC_EXPRC Almacn propuesto para aprovisionamiento
externo
X


Vista de almacn

ESTRUCTURA BAPI_MARD
CAMPO DESCRIPCION
PLANT Centro P_ PLANT
STGE_LOC Almacn T_ALMACEN-LGORT

ESTRUCTURA BAPI_MARDX
CAMPO DESCRIPCION
PLANT Centro P_ PLANT
STGE_LOC Almacn T_ALMACEN-LGORT

Vista de contabilidad

ESTRUCTURA BAPI_MBEW
CAMPO DESCRIPCION
VAL_AREA mbito de valoracin P_ PLANT
PRICE_CTRL Indicador de control de precios V
PRICE_UNIT Cantidad base 1
VAL_CLASS Categora de valoracin P_ VAL_CLASS *Ver Equivalencia

*Para completar el campo VAL_CLASS se debe consultar el tipo de material del campo MTART de la tabla
MARA donde MATNR = P_MATERIAL (del archivo Excel)

Tipo de
Material
(MTART)
Categoria (VAL_CLASS)
Z100 Medicina Z001 Referencia para Medicinas
Z110 Mercadera Z002 Referencia para Mercaderas
Z200 Embalaje Z003 Referencia para Embalaje
Z400 Suministros Z004 Referencia para Suministro
Z410 Material Mdico Z007 Referencia Material Mdico
Z420
Material
publicitario Z006 Referencia Mat. Promocional
Z500 Repuestos Z005 Referencia para Repuestos
Z700 Material reactivo Z008 Referencia Material Radiactivo


ESTRUCTURA BAPI_MBEWX
CAMPO DESCRIPCION
VAL_AREA mbito de valoracin P_ PLANT
PRICE_CTRL Indicador de control de precios X
PRICE_UNIT Cantidad base X
VAL_CLASS Categora de valoracin X



Plantilla para la Especificacin Funcional



Pgina 10 de 12

ESTRUCTURA BAPI_MLAN
CAMPO DESCRIPCION
DEPCOUNTRY_ISO Pas suministrador (pas del cual se enva la
mercanca)
PE
TAX_IND Identificador de impuestos material (Compras) P_ TAX_IND

Una vez se completen todas las estructuras, se proceder a llamar a la Bapi para modificar el material.

Finalmente, una vez se haya modificado todos los materiales del archivo, se ha de validar que los
materiales estn sujetos a lote para crear la Vista de Clasificacin. Por cada material debemos validar lo
siguiente.

SELECT XCHPF
INTO V_LOTE
FROM MARA
WHERE MATNR = P_MATERIAL.

Si V_LOTE = X, entonces utilizaremos la funcin BAPI_OBJCL_CREATE para crear la vista.

CALL FUNCTION 'BAPI_OBJCL_CREATE'
EXPORTING

objectkeynew = P_MATERIAL
objecttablenew ='MARA'
classnumnew = CLASE_LOTE1
classtypenew = '023'
status = 1
standarclass = X
TABLES

Allocvalueschar=caract_char
return = return.
ENDFUNCTION.

Para el parmetro Allocvalueschar, solo demos asignar al campo
caract_char-CHARACT = LOBM_VFDAT


C. CASO 3: DATOS DE VENTAS
En este caso vamos ampliar el material para las diferentes reas de Ventas de la sociedad indicada.


TABLA EXCEL 3
CAMPO DESCRIPCION TIPO
P_MATERIAL Nmero de material MATNR
P_ SALES_ORG Organizacin de ventas VKORG
P_SALES_UNIT Unidad de medida de venta VRKME*
P_DELYG_PLNT Centro de Distribucin DWERK
P_TAXCLASS_1 Clasificacin fiscal para el material TAXKM




Plantilla para la Especificacin Funcional



Pgina 11 de 12
A diferencia a los casos anteriores, los primero que tenemos que hacer, por cada registro de la tabla, es
obtener todos los Canales de Distribucin asignadas a la Org. De Venta indicada. Para esto nos vamos a la
tabla TVTA donde:

SELECT VKORG VTWEG
INTO T_A_VENTAS
FROM TVKOV
WHERE VKORG = P_SALES_ORG.

*Eliminar los valores duplicados

Nosotros asumimos que un material solo aparece una sola vez en el archivo. Al leer la Organizacin de
Venta del material, buscaremos todos los canales de ventas con la consulta que se indic anteriormente.

Si por ejemplo, la Organizacin de Venta 1210 tiene 7 canales, una vez completemos todas las estructuras
tenemos que llamar 7 veces a la Bapi. El nico cambio sera el valor P_DISTR_CHAN (estructura
BAPI_MVKE).


OBSERVACIONES:
Por cada registro de la tabla, se completan las siguientes estructuras que servirn como parmetros para
la Bapi:

BAPIMATHEAD
BAPI_MVKE
BAPI_MLAN

La Bapi ha de llamarse una vez por cada registro, por lo que es muy importante reinicializar los
valores de las estructuras.


BAPIMATHEAD

ESTRUCTURA BAPIMATHEAD

CAMPO DESCRIPCION VALOR
MATERIAL Nmero de material P_MATERIAL
SALES_VIEW Vista de Comercial X

VISTA DE COMERCIAL:

ESTRUCTURA BAPI_MVKE
CAMPO DESCRIPCION
SALES_ORG Organizacin de ventas P_ SALES_ORG
DISTR_CHAN Canal de distribucin T_A_VENTAS- VTWEG
SALES_UNIT Unidad de medida de venta P_SALES_UNIT
ITEM_CAT

Grupo de tipos de posicin del maestro de
material
NORM

DELYG_PLNT Centro suministrador P_DELYG_PLNT
ACCT_ASSGT Grupo de imputacin para material 01




Plantilla para la Especificacin Funcional



Pgina 12 de 12
ESTRUCTURA BAPI_MVKEX
CAMPO DESCRIPCION
SALES_ORG Organizacin de ventas P_ SALES_ORG
DISTR_CHAN Canal de distribucin T_A_VENTAS- VTWEG
SALES_UNIT Unidad de medida de venta X
ITEM_CAT

Grupo de tipos de posicin del maestro de
material
X
DELYG_PLNT Centro suministrador X
ACCT_ASSGT Grupo de imputacin para material X


ESTRUCTURA BAPI_MLAN
CAMPO DESCRIPCION
DEPCOUNTRY_ISO Pas suministrador (pas del cual se enva la
mercanca)
PE
TAX_TYPE_1 Tipo de impuesto (IVA, federal, etc.) MWST
TAXCLASS_1 Clasificacin fiscal para el material P_ TAXCLASS_1

Potrebbero piacerti anche