Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 1 / 17
Mdulo SAP Area Negocio
Organizacin SAP Prioridad
Lder Proceso Ricardo Palma Telfono e-mail
Capacitador Pavel Garca Telfono e-mail
Fecha Inicio/Fin Plan Fecha Inicio/Fin Real
Hrs/Das Estimada Hrs/Das Facturadas
Seguimiento Aprobacin Fecha Nombre Comentario Firma
Lder Proyecto Ricardo Palma Capacitador
Objetivo .......................................................................................................................................................2 1 Alcance .................................................................................................................................................2 2 Temario.................................................................................................................................................2
2.1 Marco Terico BAPI (Dirigido a Todos los participantes) ....................................................................2 2.2 Marco Terico BadIs (Dirigido a Todos los participantes) ....................................................................2 2.3 Taller de BAPI (Dirigido a Consultores ABAP) ....................................................................................2
2.3.1 Nomenclatura a usar. ................................................................................................................2 2.3.2 Creacin del modelo datos. .......................................................................................................2 2.3.3 Casos 1: Creacin de un Object Type (Supertype). .....................................................................5 2.3.4 Casos 2: Creacin de un Object Type (Subtype). ......................................................................13 2.3.5 Casos 3: Adicionar Funcionalidad. ...........................................................................................17
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 2 / 17
Objetivo Workshop de introduccin a la tecnologa de BAPI (Business Application Program Interface) y BadIs (Business Add-Ins).
1 Alcance Grupo Objetivo:
o Consultores ABAP con conocimientos slidos en: Remote Function Call (RFC) y conocimientos
bsicos de programacin orientada a objetos. o Consultores Funcionales y usuarios clave que requieren integrar sus mdulos a travs de
BAPIs.
o Consultores Funcionales y usuarios clave que requieren ampliar la funcionalidad de sus mdulos a travs de BAdIs.
2 Temario
2.1 Marco Terico BAPI (Dirigido a Todos los participantes)
2.2 Marco Terico BadIs (Dirigido a Todos los participantes)
2.3 Taller de BAPI (Dirigido a Consultores ABAP)
2.3.1 Nomenclatura a usar.
Nro. Grupo Participantes
01 ...
02 ...
03 ...
99 Instructor
Objeto Nomenclatura
Paquete (Antes Clase Desarrollo) ZCUS00[Nro. Grupo]
Data Model ZAERO[Nro. Grupo]
Business Object Type (Supertype) ZAERO[Nro. Grupo]
Business Object Type (Subtype) ZAERO[Nro. Grupo]_1
Function Group ZAERO[Nro. Grupo]
Function Module Z_BAPI_AERO[Nro. Grupo]_GETLISTFLIGHT
2.3.2 Creacin paquete de transporte (Antes Clase Desarrollo)
Ruta SAP Easy Acces: Tools ABAP Workbench Overview Object Navigator
Transaccin: SE80
Ingresar Nombre del paquete ZCUS00[Nro. Grupo] y presionar crear.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 3 / 17
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 4 / 17
2.3.3 Creacin del modelo datos.
Ruta SAP Easy Acces: Tools ABAP Workbench Development Data Modeler
Transaccin: SD11 Ingresar Nombre del modelo de datos ZAERO[Nro. Grupo]
Ir a para ingresar las entidades.
Para efectos prcticos y por no ser propsito de esta prctica no crearemos entidades, adicionaremos al
modelo las siguientes entidades:
BC_SFLIGHT Flight
BC_PLANFLI Flight schedule
BC_CARRIER Airline
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 5 / 17
2.3.4 Casos 1: Creacin de un Object Type (Supertype).
Ruta SAP Easy Acces: Tools ABAP Workbench Development Business Object Builder Transaccin: SWO1
Ingresar Nombre del modelo de datos ZAERO[Nro. Grupo] y crear el Object Type.
Ingresar los datos generales.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 6 / 17
Ingresar el paquete creado
Ingresar datos para la creacin del object type.
Crear Key Fields y Attributes. Usar la tabla SCARR.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 7 / 17
Escoger la opcin de YES.
Key Fields
Attributes
Crear un Function Group ZAERO[Nro. Grupo].
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 8 / 17
Crear las siguientes estructuras
ZRANGEAIRLINE Rango de Aerolneas
ZRANGECONNID Rango de Nmero de Conexin
ZRANGEDATE Rango de Fechas Vuelos
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 9 / 17
ZVUELO[Nro. Grupo] Rango de Fechas Vuelos
Component K Type Length TypName Text
MANDT X CLNT 3 S_MANDT Client for WB train. data model BC_Travel
CARRID X CHAR 3 S_CARR_ID Airline Code
CONNID X NUMC 4 S_CONN_ID Flight connection number
FLDATE X DATS 8 S_DATE Flight date
PRICE CURR 15 S_PRICE Airfare
CURRENCY CUKY 5 S_CURRCODE Local currency of airline
PLANETYPE CHAR 10 S_PLANETYE Plane type
SEATSMAX INT4 10 S_SEATSMAX Maximum capacity in economy class
SEATSOCC INT4 10 S_SEATSOCC Occupied seats in economy class
PAYMENTSUM CURR 17 S_SUM Total of current bookings
SEATSMAX_B INT4 10 S_SMAX_B Maximum capacity in business class
SEATSOCC_B INT4 10 S_SOCC_B Occupied seats in business class
SEATSMAX_F INT4 10 S_SMAX_F Maximum capacity in first class
SEATSOCC_F INT4 10 S_SOCC_F Occupied seats in first class
CARRNAME CHAR 20 S_CARRNAME Airline name
CURRCODE CUKY 5 S_CURRCODE Local currency of airline
URL CHAR 255 S_CARRURL Airline URL
COUNTRYFR CHAR 3 LAND1 Country key
CITYFROM CHAR 20 S_FROM_CIT Departure city
AIRPFROM CHAR 3 S_FROMAIRP Departure airport
COUNTRYTO CHAR 3 LAND1 Country key
CITYTO CHAR 20 S_TO_CITY Arrival city
AIRPTO CHAR 3 S_TOAIRP Destination airport
FLTIME INT4 10 S_FLTIME Flight time
DEPTIME TIMS 6 S_DEP_TIME Departure time
ARRTIME TIMS 6 S_ARR_TIME Arrival time
DISTANCE QUAN 9 S_DISTANCE Distance
DISTID UNIT 3 S_DISTID Mass unit of distance (kms, miles)
FLTYPE CHAR 1 S_FLTYPE Flight type
PERIOD INT1 3 S_PERIOD Arrival n day(s) later
Crear Modulo de Funcin Z_BAPI_AERO[Nro. Grupo]_GETLISFLIGHT
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 10 / 17
Ingresar los parmetros y adicionar cdigo para extraer datos de las tablas: SCARR, SPFLI, SFLUGHT.
Opcin de Crear Mtodo.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 11 / 17
Crear mdulo de funcin.
Ingresar el nombre del mtodo y que es independiente de la instancia.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 12 / 17
Se carga automticamente en el BAPI los parmetros del mdulo de funcin.
Aceptar la peticin de la pantall.
Una vez terminado de realizar todos las modificaciones al mtodo , es necesario cambiar el estado Detl Object Type a Implementado, para poder generar el programa.
Ejecutar prueba del BAPI con la tecla .
El metodo GEETLISTFLIGHT es independiente de la instancia por lo que se puede ejecutar antes de crear la instancia.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 13 / 17
Ingresar un valor..
Atributos del BAPI con valores de las base da datos.
Los mtodos DISPLAY y EXISTENCECHECK son dependientes del mandante.
2.3.5 Casos 2: Creacin de un Object Type (Subtype).
Ingresar el nombre del Object Type y presionar
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 14 / 17
Completar los datos de acuerdo al grupo.
Los campos en rojo indican que los Keys, Attributes, Metodos y eventos son heredados del supertype.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 15 / 17
Creacin de campo virtual
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 16 / 17
Ir al botn de programas
Se crea automticamente el siguiente cdigo.
Curso Capacitacin Workshop BAPIs
Taller de creacin BAPI Versin1.1 17 / 17
Se calcula el total de Plan de Vuelos por Aerolnea Antes de generar se debe cambiar el estado del BAPI .
Despus de validado y depurado el programa se procede a cambiar el estado a Released.
2.3.6 Casos 3: Adicionar Funcionalidad.