You are on page 1of 34

DEPARTAMENTO DE SISTEMAS Y COMPUTACIN

INGENIERA EN SISTEMAS COMPUTACIONALES

INFORME TCNICO DE RESIDENCIAS PROFESIONALES

NOMBRE DEL PROYECTO:


ATENCIN A REQUERIMIENTOS DE FBRICA DE SOFTWARE AN
GLOBAL

PRESENTADO POR:
EDBER JAFET LPEZ VILA

LA PIEDAD, MICHOACN AGOSTO - DICIEMBRE DEL 2017


NDICE

Contenido
1. GENERALIDADES DEL PROYECTO ...................... Error! Bookmark not defined.
INTRODUCCIN .......................................................... Error! Bookmark not defined.
DESCRIPCIN DE LA EMPRESA U ORGANIZACIN ............. Error! Bookmark not
defined.
REA DE TRABAJO DEL ESTUDIANTE ................... Error! Bookmark not defined.
PROBLEMAS A RESOLVER....................................... Error! Bookmark not defined.
OBJETIVOS ................................................................. Error! Bookmark not defined.
JUSTIFICACIN .......................................................... Error! Bookmark not defined.
2. MARCO TERICO ................................................................................................... 5
2.1 SAP ..................................................................................................................... 6
2.1.1 Qu es el Sistema SAP? .......................................................................... 6
2.1.2 Estructura de SAP ...................................................................................... 7
2.1.3 Transacciones SAP .................................................................................... 7
2.2 ABAP ................................................................................................................ 13
2.2.1 Qu es ABAP? ........................................................................................ 14
2.2.2 Programas en ABAP ................................................................................. 14
2.2.2.1 Mdulos Include ................................................................................. 14
2.2.2.2 Subrutinas .......................................................................................... 15
2.2.2.3 Grupos de funciones ......................................................................... 15
2.2.3 Sintaxis ABAP ........................................................................................... 15
2.2.4 Comentarios .............................................................................................. 16
2.2.5 Fin de la instruccin ................................................................................. 16
2.2.6 Operadores lgicos .................................................................................. 17
2.2.7 Sentencias de decisin y ciclos .............................................................. 17
2.2.7.1 Sentencia IF/ELSE .............................................................................. 17
2.2.7.2 Sentencia IF/ELSEIF .......................................................................... 18
2.2.7.3 Sentencia CASE ................................................................................. 18
2.2.7.4 Sentencia DO ...................................................................................... 19
2.2.7.5 Sentencia WHILE ................................................................................ 19
2.2.8 Expresiones regulares ............................................................................. 19
2.2.9 Diccionario de datos ................................................................................ 20
2.2.10 Variables del sistema ............................................................................... 21
2.2.11 Herramienta debug ................................................................................... 22
2.2.12 Estructuras ................................................................................................ 23
2.2.13 Tablas internas ......................................................................................... 23
2.2.14 reas de trabajo........................................................................................ 24
2.2.15 Reportes ALV ............................................................................................ 25
2.2.16 Smartforms................................................................................................ 26
2.2.17 Mdulos de funciones .............................................................................. 27
2.2.18 Entorno de desarrollo .............................................................................. 29
2.2.18.1 Arquitectura del entorno de desarrollo ........................................... 30
2.3 SISTEMA ERP .................................................................................................. 31
2.4 SAP LOGON ..................................................................................................... 31
2.4.1 Datos necesarios ...................................................................................... 32
2.5 CISCO VPN ...................................................................................................... 33
3. DESCRIPCIN Y DESARROLLO DE LAS ACTIVIDADES REALIZADAS ..... Error!
Bookmark not defined.
3.1 INDUCCIN Y CAPACITACIN ........................ Error! Bookmark not defined.
3.1.1 Induccin ..................................................... Error! Bookmark not defined.
3.1.2 Capacitacin ............................................... Error! Bookmark not defined.
3.1.2.1 Crear una conexin .............................. Error! Bookmark not defined.
3.1.2.2 Transaccin SM11 Base de Datos .. Error! Bookmark not defined.
3.1.2.3 Creacin de imgenes de actualizacin o vistas ... Error! Bookmark
not defined.
3.1.2.5 Creacin del reporte ALV .................... Error! Bookmark not defined.
3.1.2.6 Creacin de un SMARTFORM ............. Error! Bookmark not defined.
3.1.2.7 Llamar SMARTFORM Desde Reporte ALV ........ Error! Bookmark not
defined.
3.2 ATENCIN A INCIDENTES ............................... Error! Bookmark not defined.
3.2.1 Problema con Work Center ........................ Error! Bookmark not defined.
3.2.2 Ordenar datos en tabla interna .................. Error! Bookmark not defined.
3.2.3 Error en activo transferido ......................... Error! Bookmark not defined.
3.2.4 Error de ejecucin en reporte ZCOMMITS Error! Bookmark not defined.
3.2.5 Correcin de informacin en tabla ILOA .. Error! Bookmark not defined.
3.3 REVISIN DE CDIGO (CODE REVIEW) ......... Error! Bookmark not defined.
3.3.1 Revisin de programa para transferencia de fondo fijoError! Bookmark
not defined.
3.4 DESARROLLO DE REQUERIMIENTOS............ Error! Bookmark not defined.
3.4.1 Validacin de asignacin organizativa ..... Error! Bookmark not defined.
3.4.2 Copia y modificacin de programa Z ........ Error! Bookmark not defined.
3.4.3 Mejora al mdulo de contratos .................. Error! Bookmark not defined.
3.4.3.1 Botn para guardar en pantallas de posiciones .... Error! Bookmark
not defined.
3.4.3.2 Cambio de perodo presupuestal ....... Error! Bookmark not defined.
3.4.4 Correo con destinatario oculto.................. Error! Bookmark not defined.
3.4.5 Restriccin de solicitud de pedido ........... Error! Bookmark not defined.
3.5 DOCUMENTACIN ............................................ Error! Bookmark not defined.
3.5.1 ET de validacin de asignacin organizativa .......... Error! Bookmark not
defined.
4. RESULTADOS ......................................................... Error! Bookmark not defined.
5. CONCLUSIONES ..................................................... Error! Bookmark not defined.
6. RECOMENDACIONES ............................................. Error! Bookmark not defined.
7. COMPETENCAS APLICADAS Y DESARROLLADAS ........... Error! Bookmark not
defined.
8. FUENTES DE INFORMACIN ................................. Error! Bookmark not defined.
BIBLIOGRAFA ............................................................ Error! Bookmark not defined.
ANEXOS .......................................................................... Error! Bookmark not defined.
1. MARCO TERICO
2.1 SAP
SAP inici en 1972 por iniciativa de cinco ex empleados de IBM en Manheim, Alemania.
Es considerada la compaa de software inter empresarial ms grande del mundo y el
cuarto mayor proveedor de software independiente del mundo. El nombre original de SAP
fue Systeme, Anwendungen, Produkte, que en ingls se traduce como Systems
Applications and Products.

La idea original de SAP era proporcionar a los clientes la capacidad de interactuar con
una base de datos corporativa comn para una gama amplia de aplicaciones. Al pasar el
tiempo, las aplicaciones se han posicionado y hoy en da, muchas empresas en el mundo,
incluyendo IBM y Microsoft, utilizan productos SAP.

El sistema SAP consta de varios mdulos, entre los que se encuentran:


FI: Finanzas.
SD: Ventas y Distribucin.
MM: Gestin de Materiales.
PP: Gestin de Produccin.
WF: WorkFlow.
HR: Planificacin y Recursos Humanos. (CVOSOFT IT ACADEMY (1), 2017)

2.1.1 Qu es el Sistema SAP?


El Sistema SAP es un Potente Sistema informtico creado por la compaa con
el mismo nombre, que administra los recursos de las principales empresas del
mundo, brindando una gestin eficiente de los recursos financieros, recursos
humanos, canales de ventas, procesos de logstica, manejo de inventarios, entre
otras cosas.
Cada mdulo de SAP realiza una funcin diferente, algunos de encargan de las
finanzas de una empresa, otros de la logstica, otros de gestionar las ventas, del
manejo de los recursos humanos, etc. Estos mdulos estn totalmente integrados
entre si y al combinarse ofrecen a la empresa una solucin de gestin global y
completa a sus necesidades de planificacin de los recursos con los que cuenta.
(CVOSOFT IT ACADEMY (2), 2017)

2.1.2 Estructura de SAP


Los sistemas SAP R/3 tienen la siguiente estructura:

Imagen 2.1.2.1 Ambientes de SAP.

Aunque podra variar en cada una de las empresas, en la imagen 2.1.2.1, se


observan los tres ambientes bsicos que conforman la estructura de los sistemas
SAP R/3, en los cuales se encuentran:

Ambiente de desarrollo (DEV): es donde se realizan los desarrollos y se modifica


el sistema. Al realizar un nuevo desarrollo, se debe de generar una orden de
transporte y mediante la misma, ste pasar a los otros ambientes.

Ambiente de Testing / Calidad (QAS): en este ambiente se realizan las pruebas


integrales para verificar el correcto funcionamiento de los programas y las
modificaciones realizadas.

Ambiente Produccin (PRO): aqu es donde se encuentran los datos reales de los
clientes, siendo este el que opera la compaa que posee el sistema SAP,
bsicamente es la vista del cliente al sistema.

2.1.3 Transacciones SAP


El sistema SAP opera por medio de transacciones, las cuales se pueden definir
como la ejecucin de un programa en especfico, en general, se podra decir que
SAP est conformado por cientos de transacciones o programas que trabajan en
conjunto y que realizan las funciones ya mencionadas.
Existen muchas transacciones propias de SAP, algunas de ellas nos sirven para
creacin de tablas, ingresar datos, ingresar facturas, entradas y salidas de
mercanca, realizar pedidos, entre muchas otras. Tambin los desarrolladores SAP
pueden crear las propias de acuerdo a las necesidades presentadas por un cliente.
Estas transacciones pueden ser llamadas a travs de mens definidos por el
sistema, o por los creados por el usuario. Las transacciones tambin pueden ser
invocadas por cdigo mediante las sentencias ABAP CALL TRANSACTION y
LEAVE TO TRANSACTION.

Las siguientes transacciones son las que se consideran las ms utilizadas o las
principales al momento de desarrollar en el sistema SAP:

CDIGO DE TRANSACCIN DESCRIPCIN


SE11 Mantenimiento del Diccionario de Datos
(Base de Datos)
SM30 Actualizacin de Vistas (Introducir
Datos)
SE38 Editor ABAP
SE80 Navegador de Objetos (incluye otras
funciones adems del editor)
SMARTFORMS Administrador de SMARTFORMS
SE93 Creacin de Transacciones
SE10 Organizador de Ordenes de Transporte
SMOD/CMOD Administrador de Ampliaciones
Imagen 2.1.3.1 Transacciones Principales de SAP.

Los cdigos de las transacciones listados en la imagen 2.1.3.1 son solo algunos de
los cientos de cdigos de transacciones utilizados en el sistema SAP, aunque los
anteriores son las transacciones (TX) principales. A continuacin, se mostrar ms
a fondo cada una de ellas:

SE11

Imagen 2.1.3.2 Vista Transaccin SE11.

En la imagen 2.1.3.2 vemos la vista de la transaccin SE11 que realiza la


administracin de todas las definiciones de datos existentes en el sistema tanto a
las definiciones estndar del sistema y tambin a las definiciones de datos creadas
por el usuario, lo que se conoce como "Z".

SM30

Imagen 2.1.3.3 Vista Transaccin SM30.


En la imagen 2.1.3.3 vemos la vista de la transaccin SM30 la cual es una
transaccin que nos permite realizar mantenimiento (Create, Update, Delete) de
los datos de alguna tabla o vista que hayamos creado.

SE38

Imagen 2.1.3.4 Vista Transaccin SE38.

En la imagen 2.1.3.4 tenemos la transaccin SE38, que es la ms importante de


todas, porque mediante ella podremos crear, modificar y visualizar los programas
ABAP Z que desarrollamos, as como tambin los programas ABAP estndar que
ya vienen incorporados en el sistema.

SE80

Imagen 2.1.3.5 Vista Transaccin SE80.


En la imagen 2.1.3.5 vemos la transaccin SE80, que nos permitir crear, modificar
o visualizar los diferentes tipos de objetos, como son los programas ya sean los
clsicos o los modulpool, un paquete o clase de desarrollo, un grupo de funciones,
una jerarqua de aplicaciones, una clase o interface, entre otros componentes ms.

SMARTFORMS

Imagen 2.1.3.6 Vista Transaccin SMARTFORMS.

En la imagen 2.1.3.6 vemos la transaccin SMARTFORMS, que sirve para crear y


modificar formularios, los cuales son una de las ltimas tcnicas de SAP para la
impresin y que da la posibilidad de enviar va correo electrnico y fax reportes e
informacin. Los formularios creados son diseados a partir de formas como
ventanas, tablas y texto, el cul puede contener las variables que tomarn la
informacin desde la base de datos del sistema.

SE93

Imagen 2.1.3.7 Vista Transaccin SE93.


En la imagen 2.1.3.7 vemos la transaccin SE93, la cual ofrece la posibilidad de
crear transacciones personalizadas que apunten a programas Z (los que son
creados por el usuario) que se deben ejecutar con los parmetros apropiados. La
transaccin comienza indicando el cdigo de la transaccin, el paquete en el que
se va a almacenar y el texto o ttulo de transaccin que va a tener.

SE10:

Imagen 2.1.3.8 Vista Transaccin SE10.

En la imagen 2.1.3.8 vemos la transaccin SE10, con ella accedemos al Transport


Organizer que es la herramienta que nos proporciona SAP gestionar el transporte
de rdenes dentro del sistema.

SMOD/CMOD
Imagen 2.1.3.9 Vista Transaccin SMOD/CMOD.

En la imagen 2.1.3.9 vemos la transaccin CMOD que sirve para la administracin


de nuevas ampliaciones para el cliente, tambin conocidas como Enhancements,
en las cuales podemos agregar funciones extra en algn programa estndar de
SAP, pero nicamente en zonas permitidas.

2.2 ABAP
El lenguaje de programacin ABAP es un lenguaje propio de SAP y su uso slo se puede
ser a travs de ste software empresarial. Como lenguaje de programacin propietario
de SAP, ABAP se ha utilizado y se utiliza como elemento de programacin especfico
para la mayor parte de sus productos.

Originalmente fue definido como un lenguaje estructurado de cuarta generacin, y en la


actualidad ha incorporado elementos propios de lenguajes orientados a objetos.
(Alcalde, 2017)

Las principales caractersticas del lenguaje ABAP son:

Contiene sentencias y palabras clave propias del lenguaje.


Es un lenguaje orientado a eventos bien definidos.
Es interpretado, no compilado.
Se utiliza tanto en programacin de informes como en programacin de dilogo
para SAP.
Se encuentra completamente integrado dentro del entorno de desarrollo de SAP.
Al ser un lenguaje orientado a objetos, ABAP contiene clases, objetos, atributos,
mtodos e interfaces.
Desde ABAP tendremos acceso directo a la base de datos mediante la utilizacin
de OPEN SQL.
ABAP proporciona una ayuda muy potente sobre la semntica y sintaxis de su
lenguaje.
ABAP nos permite crear aplicaciones en mltiples idiomas.
2.2.1 Qu es ABAP?
SAP ABAP es el lenguaje de programacin propiedad del Sistema SAP, que se
utiliza para programar en la mayora de los productos de la empresa. ABAP
significa Advanced Business Application Programming, que en espaol significa
Programacin Avanzada de Aplicaciones Empresariales y tiene muchos
elementos en comn con el lenguaje C. (CVOSOFT IT ACADEMY (3), 2017)

2.2.2 Programas en ABAP


Los usuarios interactan con SAP a travs de transacciones (TX). Estas
representan procesos y funcionalidades propias del negocio o de las empresas
que instalan SAP. Los programadores ABAP pueden crear nuevas transacciones
que no existan en el estndar de SAP o tambin, ampliar transacciones existentes
en el estndar cuando la funcionalidad de sta sea insuficiente para la empresa.

Estas transacciones pueden ser realizadas o modificadas mediante alguna de las


formas que SAP permite, como lo son user exits, BADIs, Enhancements, BTEs,
entre otros.

ABAP distingue entre dos tipos de programas; Informes y Module Pool. Los
informes siguen un modelo de programacin relativamente simple, donde el
usuario introduce una serie de parmetros y el programa los procesa para entregar
un informe en forma de lista interactiva. Los informes tambin pueden ser
diseados para manipular los datos.

Los programas Module pool definen unos patrones ms complejos de interaccin


con el usuario a travs de una coleccin de informes o pantallas, llamadas Dynpro.
Cada pantalla tiene su propio flujo lgico que, al ser llamada, ejecuta diferentes
procesos para realizar una accin y mostrarla al usuario. Los programas ABAP
pueden estar compuestos por otros programas que no se ejecutan directamente,
sino que proveen de servicios al programa principal. (Cruz del Valle (1), 2017)
2.2.2.1 Mdulos Include
Son utilizados para dividir programas muy largos en secciones ms
entendibles y mejor estructuradas. Se pueden crear los mdulos que sean
necesarios para la correcta estructuracin del programa, por ejemplo, hacer
un mdulo especficamente para subrutinas, otro para entradas de datos del
sistema, otro para las salidas, etc.

En general, los Include son programas cuyo objetivo es modularizar los


programas ABAP de manera que sea ms fcil su mantenimiento. La
mayora de las veces se utilizan 4 Includes principales: TOP (para las
declaraciones de datos), F01 (para todas las subrutinas), I01 (para la
interaccin del usuario con el sistema) y O01 (salida del sistema hacia la
pantalla).

2.2.2.2 Subrutinas
Estas estructuras estn conformadas por palabras las reservadas FORM /
ENDFORM. Nos sirven para poner parte de nuestro cdigo fuente que
posiblemente utilizaremos ms de una vez o que ser invocado desde otra
parte del cdigo (por ejemplo, si est dentro de un Include). Las subrutinas
son invocadas por medio de la sentencia PERFORM.

El programa principal y la subrutina tambin se pueden comunicar mediante


parmetros pasados por valor o referencia, siendo recomendable especificar
el tipo de dato al definirlo.

2.2.2.3 Grupos de funciones


Son libreras de mdulos de funciones encerradas entre las sentencias
FUNCTION / ENDFUNCTION y son llamadas con la instruccin CALL
FUNCTION. Es un repositorio que agrupa mdulos de funciones y que se
utiliza entre otras cuestiones para compartir subrutinas y declaraciones de
variables entre los distintos mdulos de funciones pertenecientes al grupo
de estas funciones.
2.2.3 Sintaxis ABAP
Los programas bsicos inician con la instruccin REPORT y un nombre, luego
declaramos variables, constantes, se pueden agregar grupos de Includes para
escribir el cdigo fuente de nuestro programa por secciones o si no escribimos el
cdigo del programa debajo.

Imagen 2.2.3.1 Sintaxis bsica ABAP.

En la imagen 2.2.3.1 podemos ver un programa muy sencillo que sigue una
estructura bsica de ABAP, cabe aclarar que si se van a declarar dos objetos o ms
ponemos : despus de la palabra clave como DATA o TABLES y cada objeto debe
ir separado por una coma, no es algo obligatorio pero es parte de las buenas
prcticas de programacin.

2.2.4 Comentarios
En ABAP hay dos formas de agregar comentarios a un programa, si colocamos un
asterisco (*) como primer carcter en una lnea, toda la lnea se trata como un
comentario, para que funcione, el asterisco debe ser el primer carcter, no funciona
si antes del asterisco hay un espacio en blanco. Si agregamos unas comillas dobles
(), todo despus de las comillas es tratado como un comentario en esa lnea.

Ya sea el asterisco o las comillas dobles solo afectan la lnea en la que se


encuentran, no existen comentarios de bloque.

2.2.5 Fin de la instruccin


Todas las instrucciones de ABAP deben de finalizar con un punto (.), es obligatorio
siempre, o saltar un error. El punto en ABAP es equivalente al punto y coma (;)
que se usa en otros lenguajes como C/C++, Java, etc.

2.2.6 Operadores lgicos


Existen dos formas de utilizar a los operadores lgicos, una puede es utilizando la
simbologa de cada uno de los operadores (=, <, >, etc.), o por letras, por ejemplo,
EQ (igual).

OPERADOR DESCRIPCIN
=, EQ Igual
>, GT Mayor que
>=, GE Mayor o igual que
<, LT Menor que
<=, LE Menor o igual que
CP, LIKE Por patrn, se utiliza % para completar
el patrn
<>, NE Diferente de
BT, BETWEEN Entre (intervalo)
Imagen 2.2.6.1 Operadores Lgicos ABAP.

2.2.7 Sentencias de decisin y ciclos


Como en cualquier otro lenguaje de programacin en alto nivel, ABAP cuenta con
instrucciones para trabajar con Condiciones y Ciclos. La estructura que siguen es
muy similar, nicamente con algunas diferencias por la sintaxis especfica de ABAP
como la terminacin con un . o el cuidado especial que se debe tener con los
espacios entre instrucciones, por ejemplo, no es lo mismo escribir algo como
A=(B*C). a escribir A = B * C., y no necesariamente es incorrecto, pero puede
tomar otro significado diferente al deseado o simplemente por respetar las buenas
prcticas de programacin.

2.2.7.1 Sentencia IF/ELSE


Imagen 2.2.7.1.1 Sintaxis de la sentencia IF/ELSE.

En la imagen 2.2.7.1.1 vemos un ejemplo de una sentencia IF/ELSE, la cual


realiza una comparacin o validacin, si la condicin se cumple, se ejecuta
un cdigo especfico dentro de la sentencia IF, si no, ejecuta otra instruccin
indicada despus del ELSE. Termina con un ENDIF.

2.2.7.2 Sentencia IF/ELSEIF

Imagen 2.2.7.2.1 Sintaxis de la sentencia IF/ELSEIF.

En la imagen 2.2.7.2.1 vemos un ejemplo de una sentencia IF/ELSEIF, la cual


ejecuta un cdigo si la condicin dentro del IF se cumple, si no, ejecuta otro
cdigo realizando una segunda comparacin y ejecuta el cdigo si la segunda
condicin se cumple. Se puede utilizar tambin un ELSE debajo del ELSEIF
como tercer caso. Termina tambin con un ENDIF.

2.2.7.3 Sentencia CASE

Imagen 2.2.7.3.1 Sintaxis de la sentencia CASE.


En la imagen 2.2.7.3.1 vemos un ejemplo de una sentencia CASE, la cual
evala una variable y ejecuta el cdigo segn el valor de la variable, por
ejemplo, si variable tiene un 1, ejecuta codigo 1, si contiene un 2 ejecuta
codigo 2, si es cualquier otro valor ejecuta codigo 3. Termina con un
ENDCASE.

2.2.7.4 Sentencia DO

Imagen 2.2.7.4.1 Sintaxis de la sentencia DO.

En la imagen 2.2.7.4.1 vemos un ejemplo de una sentencia DO, la cual


ejecuta un cdigo n cantidad de veces, de acuerdo a lo que nosotros le
especifiquemos. Termina con un ENDDO.

2.2.7.5 Sentencia WHILE

Imagen 2.2.7.5.1 Sintaxis de la sentencia WHILE.

En la imagen 2.2.7.5.1 vemos un ejemplo de una sentencia WHILE, la cual


ejecuta el cdigo si y solo si la condicin que se est evaluando se cumple.
Termina con un ENDWHILE.

2.2.8 Expresiones regulares


Tanto para una sentencia LIKE, un parmetro de seleccin (select-option) o rangos
que contengan un valor que deba contener un patrn en especfico o mejor dicho
una expresin regular existen dos caracteres que son utilizados y son los
siguientes:
Carcter _: indica que en esa posicin puede haber cualquier carcter
(nicamente en la posicin del guion bajo).
Carcter %: indica que a partir de esa posicin puede haber cualquier
carcter, pero tambin que puede haber ms de uno.

Imagen 2.2.8.1 Ejemplo de una expresin regular.

En la imagen 2.2.8.1 podemos observar una sentencia SELECT en la cual se pide


que en la quinta y sexta posicin haya un 1 y un 7 respectivamente, y adems que
lo que se ponga despus del 7 no importa.

Cabe recordar que haciendo uso de los caracteres _ y % podemos acomodar


nuestra Expresin Regular a nuestro gusto de acuerdo al patrn que sea requerido.

2.2.9 Diccionario de datos


El diccionario de datos ABAP contiene todos los metadatos acerca del sistema
SAP. Es la fuente de informacin en la que los datos del sistema se definen de una
manera lgica, estructurada y centralizada para las aplicaciones comerciales y se
comporta como el centro de un entorno de desarrollo bien estructurado.

Permite crear, modificar o borrar definiciones de los datos. Es al mismo tiempo una
gran fuente de informacin no solo para el entorno, sino tambin para el usuario.

Cuando un objeto del diccionario de datos es modificado, el programa que hace


referencia a ste automticamente cambia al nuevo estado del objeto la prxima
vez que sea ejecutado.

Algunos de los tipos de datos ms importantes dentro del diccionario de datos son:

Tablas: son contenedores de datos que existen en la base de datos dentro


del sistema SAP.
ndices: proporcionan accesos rpidos a los datos de las tablas para
aquellas selecciones usadas con mayor frecuencia. Todas las tablas de
SAP tienen un ndice primario, el cual se crea implcitamente a lo largo de
que la tabla es usada, forzando as que estos sean nicos y ayudando al
desarrollador a consultar la informacin ms fcilmente.
Vistas: Una vista es una tabla virtual que no contiene ningn dato
fsicamente. Ocupan muy poco espacio puesto que solo contienen la
definicin del dato.
Estructuras: son tipos de datos complejos que contienen varios campos.
Elementos de datos: proporcionan contenido semntico a una tabla o
campo estructurado. (Cruz del Valle E. (2), 2017)

El diccionario de datos ABAP est muy ligado con la plataforma de trabajo de ABAP
en el que cualquier referencia a los datos se obtiene del diccionario (por ejemplo,
tablas, vistas, tipos de datos). Los desarrolladores usan el diccionario de
transacciones de ABAP para encontrar y mantener los metadatos, aunque tambin
existen metadatos estndar de SAP que los desarrolladores no crean pero que
pueden ser utilizados por stos.

2.2.10 Variables del sistema


SAP cuenta con una estructura llamada SY con valores del sistema. Estas variables
se almacenan en la estructura de datos SYST. Algunas de las variables del sistema
son:

VARIABLE DESCRIPCIN
SY-DATUM Fecha del sistema.
SY-TIMLO Hora del sistema.
SY-UNAME Usuario de la sesin actual.
SY-SUBRC Devuelve el cdigo de retorno de la
ltima sentencia ejecutada. Si retorna un
0, es porque la ltima sentencia se
ejecut exitosamente.
SY-TABIX Lnea actual de una tabla interna.
SY-INDEX Cantidad de ejecuciones en un ciclo.
SY-UCOMM Entrada del ltimo comando utilizado.
Imagen 2.2.10.1 Variables del sistema.

En la imagen 2.2.10.1 podemos ver algunas de las variables del sistema ms


utilizadas por los desarrolladores. Los campos de sistema SY son variables internas
que SAP carga en memoria cada vez que se ejecuta un programa. Da igual que no
las hayamos declarado en ningn punto del programa, siempre estn disponibles
para ser utilizadas. Por lo tanto, si estamos programando y las necesitamos bastar
con incluirlas en nuestro cdigo ABAP.

2.2.11 Herramienta debug


En el modo debug de SAP podemos ejecutar un programa lnea por lnea y
examinar los valores de las variables y el camino que toma un programa con el fin
de encontrar errores. Hay diferentes formas que podemos utilizar para activar el
modo debug, algunas de estas son:

Presionando Ctrl + Shift + F12 en la lnea dnde queramos poner un


BreakPoint y al ejecutar el programa ste se detendr abriendo el modo
debug en este punto en especfico.
Escribiendo /H en el campo dnde insertamos nuestras transacciones y la
siguiente accin que hagamos despus de haber hecho esto se ejecutar
en modo debug.
Ejecutando directamente el programa en modo debug.
Escribiendo como un comando o instruccin en el programa break
tu_usuario.. (Cruz, 2017)
Algunas tcnicas tiles para el uso del modo debug:

F5, avanza paso a paso por instruccin.


F6, avanza paso a paso por instruccin sin entrar en las funciones o
subrutinas.
F7, se va hasta el final del programa, subrutina o funcin actual.
F8, interrumpe el debug y continua la ejecucin del programa hasta finalizar
o encontrar otro breakpoint.
Shift + F8, continuar hasta el cursor.

2.2.12 Estructuras
Las estructuras son un conjunto de definiciones de campos almacenados en el
diccionario de SAP. Una estructura puede ser cargada con registros de
informacin asociada en la base de datos. Su uso se sita solamente dentro de la
programacin ABAP.

Generalmente las estructuras hacen referencia a alguna tabla dentro de las


definiciones de datos de SAP. stas no contienen los datos especficos, ya que
solo se utilizan para llenarlas temporalmente con los datos necesarios y as
disponer de ellos durante la ejecucin de un programa.

Imagen 2.2.12.1 Ejemplo de una estructura.

En la imagen 2.2.12.1 podemos ver un ejemplo sencillo de una estructura. En la


mayora de los casos, no es necesario que una estructura contenga los mismos
campos que contiene la tabla determinada en la definicin de datos. sta puede
contener solo los campos relacionados con la informacin con la que se estar
trabajando para la funcionalidad del programa.

2.2.13 Tablas internas


Una tabla interna es una tabla temporal en la memoria del servidor de aplicaciones.
Es creada y mantenida por un programa durante la ejecucin del mismo y es
eliminada cuando termina el programa. (Karjch, 2017)
Imagen 2.2.13.1 Declaracin de una TI con cabecera.

Imagen 2.2.13.2 Declaracin de una TI sin cabecera.

En las imgenes 2.2.13.1 y 2.2.13.2 vemos dos ejemplos de declaracin de tabla


interna con y sin cabecera respectivamente. Normalmente cuando se habla de tabla
interna, se habla del cuerpo de la tabla, y la cabecera es un nico registro que se
utiliza para aadir y recoger datos del cuerpo de la tabla interna. El cuerpo es el
encargado de almacenar los registros de la tabla interna.

2.2.14 reas de trabajo


Las Work Area o reas de trabajo son estructuras con la misma forma que un
registro de una tabla interna, similar a sus lneas de cabecera. Si declaramos una
tabla interna sin cabecera, la mejor manera para poder manipular los datos de una
tabla interna y con su misma estructura, es declarando una Work Area de la
siguiente manera:

Imagen 2.2.14.1 Declaracin de una Work Area.


En la imagen 2.2.14.1 vemos un ejemplo de una declaracin de una Work Area
llamada wa_area del mismo tipo que la estructura de nuestra tabla interna
declarada ah mismo. Las siguientes son operaciones de una Work Area:

Insertar registros:
Append: aade registros al final de la tabla interna.
Insert: inserta nuevos registros antes de una lnea existente en la tabla
interna.
Collect: aade o modifica registros de la tabla interna en funcin de la clave
estndar de la tabla. Es utilizado para calcular totales de campos
numricos.

Leer registros:
Read: lee un registro de la tabla interna usando un ndice o clave.
Loop-Endloop: se recorre la tabla interna y se realiza la lectura registro a
registro.
Sum: suma los campos numricos de los registros de una tabla interna.

Modificar registros:
Modify: modifica el contenido de un registro.
Write: modifica el contenido de un registro.
Delete: borra registros de la tabla.

Ordenar registros:
Sort: ordena los registros de la tabla segn los criterios indicados.
2.2.15 Reportes ALV
Los reportes ALV son una herramienta exclusiva de SAP para el lenguaje ABAP,
que sirven para crear reportes de manera rpida, eficaz y estandarizada. Las
principales ventajas que tienen los reportes ALV son:

Simplifican el desarrollo de los reportes, ya que se reducen tiempos de


programacin.
Proporcionan a los reportes generados una gran variedad de
funcionalidades estndar, lo que simplifica la manera de visualizacin de la
informacin en pantalla.
La salida de informacin en pantalla siempre ser de manera estandarizada
y uniforme, sin importar el tipo de informacin que se est visualizando.

La creacin de un reporte ALV se basa en la utilizacin de funciones. Los tipos ms


comnmente utilizados en ste son tres:

Grids.
Listas.
Jerrquico. ("Consultor_EH", 2017)

Los grids y las listas pueden utilizarse en cualquier reporte, pero el jerrquico se
utiliza solo en los casos donde se muestran datos de cabecera y detalle.

Imagen 2.2.15.1 Ejemplo de un reporte ALV.

En la imagen 2.2.15.1 vemos un ejemplo de un reporte ALV desplegado con


informacin extrada de tablas creadas en el diccionario de datos. SAP provee el
formato ALV para poder sacar listados mucho ms elegantes y con ms
funcionalidades ya que cuenta con botones para poder realizar ordenamientos,
filtros, exportacin a Excel, etc.

2.2.16 Smartforms
Un Smartform es una herramienta de interfaz grfica para el usuario, la cual es
utilizada para disear los documentos de la empresa tales como notas de entrega,
rdenes de compra, facturas, etc. Los Smartforms son una versin avanzada de
los SAP Scripts, objetos independientes del cliente y una herramienta muy
amigable con el usuario.

Imagen 2.2.16.1 Ejemplo de un Smart Form.

En la imagen 2.2.16.1 vemos un ejemplo de Smart Form diseado a partir del


ejemplo de reporte ALV, usando los datos de ste se crea un reporte de la factura
seleccionada, donde se muestran datos del cliente, el folio y la lista de productos.
El formulario Smart form siempre estar compuesto por un programa impresor y
un formulario. Soportan impresoras, fax, emails y el uso de archivos xml.
2.2.17 Mdulos de funciones
Los mdulos de funciones son objetos que se crean para ser utilizados en distintos
programas, para no tener que generar nuevamente el mismo cdigo en cada uno
de los programas ABAP.

Estos mdulos de funcin permiten encapsular y reusar funciones globales en el


sistema SAP, y son manejados en una biblioteca central de funciones, que es
llamada mediante la transaccin SE37 como vemos en la imagen 2.2.17.1:
Imagen 2.2.17.1 Vista de la transaccin SE37.

El sistema SAP estndar contiene muchos mdulos de funciones predefinidos que


tambin pueden ser llamados por cualquier programa ABAP desarrollado por el
usuario. Siempre que se define un mdulo de funcin, es necesario primero crear
un grupo de funciones que lo pueda contener. (CVOSOFT IT ACADEMY (4),
2017)

Una buena prctica consiste en agrupar funciones relacionadas por algn tpico.
El grupo de funciones se crea tambin mediante la transaccin SE37. Estos grupos
de funciones no son un objeto ejecutable, pero cuando se invoca a un mdulo de
funcin, el sistema carga en la sesin interna del programa que lo llama, el grupo
de funciones completo que contiene a la funcin invocada. Cabe destacar que
todos los mdulos de funciones que estn dentro de un grupo de funciones en
particular, pueden acceder a datos globales del grupo. Por tal motivo, se pueden
ubicar todos los mdulos de funciones que usan los mismos datos en un grupo de
funciones nico.
Imagen 2.2.17.2 Ejemplo de llamada a un mdulo de funciones.

En la imagen 2.2.17.2 vemos una llamada a un mdulo de funciones previamente


creado por el desarrollador pidindole como parmetro P_MATNR, el cual es del
tipo del mismo nombre perteneciente a la tabla MARA (estndar de SAP), y
finalmente llamando a la funcin ZSAPN_GET_MATERIAL envindole el
parmetro introducido, har el proceso del mdulo y retornar WA_MARA.

2.2.18 Entorno de desarrollo


Dentro de SAP, el lenguaje ABAP posee su propio entorno de desarrollo
denominado ABAP Workbench. Este entorno no es ms que un conjunto de
transacciones necesarias para poder programar ABAP, todas ellas agrupadas bajo
un rea comn.

Las caractersticas principales del entorno de desarrollo ABAP se encuentran la


distribucin de las aplicaciones entre distintos servidores, el soporte de interfaces
grficas comunes y estndar, la comunicacin transparente con otros sistemas y
el manejo transparente y abierto del sistema de gestin de la base de datos y en
general, el modo de trabajo por mdulos.
2.2.18.1 Arquitectura del entorno de desarrollo

Imagen 2.2.18.1.1 Arquitectura del entorno de desarrollo.

En la imagen 2.2.18.1.1 podemos ver las tres capas de la arquitectura


del entorno de desarrollo de SAP, las cuales van a ser explicadas a
continuacin:

La capa de base de datos es la capa ms baja. En esta capa, los


datos se gestionan con la ayuda de un sistema de gestin de base de
datos relacional (RDBMS). Adems de los datos de aplicacin, incluye
programas y los metadatos que el sistema SAP requiere para el
funcionamiento.
La capa de servidor de aplicacin es la capa intermedia. Los
programas ABAP, como las aplicaciones estndar o cualquiera que haya
creado un desarrollador, se ejecutan en el servidor de aplicacin. Los
programas ABAP leen datos de la base de datos, los procesan y, si es
necesario, almacenan datos nuevos en la base de datos.
La capa del servidor de presentacin es la capa ms alta. Esta capa
contiene la interfaz de usuario, desde donde cualquier usuario puede
acceder al programa, introducir datos nuevos y recibir los resultados de
un proceso de trabajo.
2.3 SISTEMA ERP
El propsito de un ERP es apoyar a los clientes de la empresa, dar tiempos rpidos de
respuesta a sus problemas, as como un eficiente manejo de informacin que permita la
toma de decisiones y minimizar los costes. Los ERP funcionan en todo tipo de empresas
y su seleccin depende de cosas como el tamao de la empresa, el tipo de empresa,
procesos, recursos, etc.. (Arenal Laza, 2016)

Imagen 2.3.1 Significado de las siglas ERP.

En la imagen 2.3.1 podemos ver el significado de ERP (Enterprise Resource Planning


Planificacin de Recursos Empresariales). Un ERP es un conjunto de sistemas de
informacin que permite la integracin de ciertas operaciones de una empresa,
especialmente las que tienen que ver con la produccin, la logstica, el inventario, los
envos y la contabilidad.

El ERP funciona como un sistema integrado, y aunque pueda tener mdulos, es un todo.
Es decir, es un nico programa con acceso a una base de datos centralizada. Un ejemplo
claro lo tenemos en SAP ERP.

2.4 SAP LOGON


El Logon es el programa que utilizamos para iniciar sesin en los sistemas SAP en
nuestra computadora. El Logon nos sirve para enlazar al servidor SAP y el usuario, as
ste pueda entrar dentro de un ambiente. Tambin posee herramientas muy tiles para
mejorar su trabajo dentro del sistema SAP.
Imagen 2.4.1 Interfaz de SAP Logon.

En la imagen 2.4.1 vemos la pantalla inicial de SAP Logon, ste acta como mediador
entre el sistema SAP y la interfaz de usuario, esa interfaz se denomina SAP GUI. Cuando
el usuario inicial el sistema SAP Logon, puede observar las opciones para acceder a los
distintos sistemas que tenga configurado.

2.4.1 Datos necesarios

Imagen 2.4.1.1 Pantalla para una conexin con SAP Logon.

En la imagen 2.4.1.1 podemos ver el formulario de acceso dnde nos pide los
datos y/o credenciales necesarias para poder ingresar al sistema de SAP, estos
datos se describen a continuacin:
Mandante: Es un rea de trabajo dentro de un ambiente de SAP. En el
ambiente de desarrollo podemos tener distintos mandantes, ya sea uno
para desarrollo y otro para pruebas. El mandante tambin es el primer
campo que se suele indicar al momento de crear una nueva tabla en el
sistema (Mandt). Este campo nos ayuda a restringir el acceso de un usuario
o grupo de usuarios a los datos de las tablas.
Usuario: Es el nombre con el que se identifica a la persona que est
manipulando el sistema.
Contrasea: Por seguridad del sistema y proteccin de datos, es necesario
contar con una contrasea para cada usuario.
Idioma: SAP provee diversos idiomas para ingresar al sistema. Este campo
puede aparecer como vaco o bien estar lleno automticamente con algn
idioma predeterminado. Las opciones usadas generalmente son ES
(espaol), o EN (English). Si el campo lo dejamos vaco, el sistema toma
el idioma de acuerdo a la configuracin del usuario dentro de SAP.

2.5 CISCO VPN

Imagen 2.5.1 Cliente Cisco VPN.

En la imagen 2.5.1 podemos ver al cliente de Cisco AnyConnect Secure Mobility para
Windows, el cual proporciona acceso remoto seguro y sin problemas a la red de los
clientes de la empresa. AnyConnect permite que cualquier aplicacin instalada pueda
comunicarse, tal y como si se encontrara conectado directamente a la red.
Imagen 2.5.2 Datos necesarios para el VPN.

En la imagen 2.5.2 podemos ver los datos necesarios del cliente VPN de Cisco Systems,
utiliza nicamente una contrasea y un usuario dados por el cliente para el acceso remoto
en su red privada virtual. No es necesario conectarse a una VPN para cada uno de los
clientes de la empresa, eso depende de ellos, se puede conectar directamente con SAP
Logon, pero si un cliente necesita o quiere tener un poco ms de seguridad para la
administracin de su sistema se hace uso de la conexin VPN.

Imagen 2.5.3 Cliente Cisco VPN conectado.

En la imagen 2.5.3 podemos ver al cliente de Cisco AnyConnect Secure Mobility despus
de haber realizado una conexin exitosa al VPN de uno de los clientes, una vez
completado esto lo nico que se hace es conectar al sistema SAP como normalmente lo
haramos en el SAP Logon.

You might also like