
- Landscape de SAP
Cuando se implementa el sistema SAP en una empresa los administradores del sistema, también llamados SAP BASIS establecen lo que se conoce como landscape del sistema SAP.
Landscape del sistema SAP
Es la disposición y configuraciones de los servidores de SAP en una empresa que implementa el sistema, es decir cómo será la arquitectura, cuantos servidores se van a utilizar, para que se va a utilizar cada uno de estos, entre otras cuestiones.
Dentro de un landscape de SAP, los administradores del sistema, van a definir Ambientes, también llamados sistemas en SAP.
Ambiente
Es un servidor donde ha sido instalado el sistema SAP.
En conclusión:
Ambiente = Sistema = Servidor en donde se instala SAP Es un servidor donde ha sido instalado el sistema SAP.
En conclusión:
Ambiente = Sistema = Servidor en donde se instala SAP
Ambiente de desarrollo: es utilizado principalmente para programación y configuración del sistema.
Aquí es donde se crean los nuevos programas ABAP que son solicitados a los programadores, ya que el sistema estándar no satisface las necesidades específicas de la empresa. También aquí se modifican los programas estándar del sistema utilizando
alguna de las herramientas disponibles por SAP.
El ambiente de desarrollo también es utilizado por los consultores funcionales para realizar configuraciones del sistema.
Ambiente de pruebas o testing: este ambiente es utilizado principalmente, como su nombre lo indica, para realizar pruebas.
Los programadores acceder al ambiente de testing para realizar las llamadas pruebas unitarias de sus desarrollos. También acceden a este ambiente los consultores funcionales para realizar las llamadas pruebas integrales de cada uno de los requerimientos. Cuando se realizan capacitaciones o entrenamiento a usuarios de SAP se utiliza este ambiente para trabajar
con datos actualizados.
Ambiente de producción: es donde el usuario final utiliza las transacciones estándar del sistema y aquellas transacciones Z
creadas a medida que han sido desarrolladas y probadas satisfactoriamente.
Los datos existentes en el ambiente de producción son sumamente sensibles para la empresa, por eso se restringe al máximo el acceso a todos los usuarios.
En ocasiones los consultores funcionales acceden al ambiente productivo para realizar pruebas puntuales sobre algún error que haya surgido en el sistema y que no se pueda reproducir en el ambiente de pruebas. Menos frecuentemente el ambiente de producción es accedido por los programadores ABAP, en caso de que se haya reportado alguna incidencia o error, que
requiere ser detectado y solucionado desde el punto de vista técnico.
Ahora que sabemos que son los landscapes y los ambientes, analicemos a continuación, las diferentes opciones de landscapes que se pueden implementar en SAP:
Landscape de SAP con 1 ambiente o sistema
El más básico de todos los landscapes consiste en implementar todo el sistema SAP en un solo servidor o equipo, en donde todos los roles están alojados en el mismo sistema.
En esta opción, las operaciones de desarrollo, pruebas y producción se ejecutan en paralelo en un solo sistema.
La ventaja de esto radica principalmente en la reducción de los costos de hardware y soporte, y que el hardware existente puede ser utilizado, pero implica algunos problemas y riesgos serios.
Con todas las actividades en un solo sistema, toda la personalización y el desarrollo se realizan en el sistema de producción, y los nuevos paquetes de soporte y las notas de SAP se aplican directamente en producción.
Las pruebas y la capacitación también tienen lugar en el sistema de producción.
Los datos de prueba y capacitación se mezclan con los datos de producción y existe un alto riesgo de conflictos.
En esta opción, las operaciones de desarrollo, pruebas y producción se ejecutan en paralelo en un solo sistema.
La ventaja de esto radica principalmente en la reducción de los costos de hardware y soporte, y que el hardware existente puede ser utilizado, pero implica algunos problemas y riesgos serios.
Con todas las actividades en un solo sistema, toda la personalización y el desarrollo se realizan en el sistema de producción, y los nuevos paquetes de soporte y las notas de SAP se aplican directamente en producción.
Las pruebas y la capacitación también tienen lugar en el sistema de producción.
Los datos de prueba y capacitación se mezclan con los datos de producción y existe un alto riesgo de conflictos.
Landscape de SAP con 2 ambientes o sistemas
Otra posibilidad consiste en implementar un landscape con dos ambientes o sistemas, es decir todo el sistema SAP se encuentra instalado en dos servidores diferentes.
Esta opción de dos ambientes o sistemas supera algunos de los riesgos inherentes a la opción del sistema único, al dividir la
producción de los entornos de prueba y desarrollo.
Las pruebas y la capacitación ahora están separadas de la producción, lo que resulta en la separación de los datos de prueba
y capacitación de los datos de producción.
Los nuevos requisitos, las tareas de optimización y los paquetes de soporte y las notas de SAP también se crean primero en el entorno de desarrollo.
Este enfoque conduce a un sistema más estable y proporciona una infraestructura de soporte de mayor calidad para el cliente.
Los inconvenientes de esta opción son que las actividades de prueba y capacitación tienen lugar en el sistema de desarrollo.
No es posible separar completamente las actividades de desarrollo y los datos de las actividades de prueba y capacitación.
Los nuevos requisitos, las tareas de optimización y los paquetes de soporte y las notas de SAP también se crean primero en el entorno de desarrollo.
Este enfoque conduce a un sistema más estable y proporciona una infraestructura de soporte de mayor calidad para el cliente.
Los inconvenientes de esta opción son que las actividades de prueba y capacitación tienen lugar en el sistema de desarrollo.
No es posible separar completamente las actividades de desarrollo y los datos de las actividades de prueba y capacitación.
Un escenario o empresa para la que el landscape de dos ambientes sería suficiente es aquella en donde:
- No se producen actividades significativas de desarrollo, pruebas y capacitación al mismo tiempo en el sistema combinado de desarrollo y calidad QA
- Hay muy pocas modificaciones al estándar SAP
- Hay un número limitado de usuarios concurrentes, es decir que acceden al mismo tiempo, en el ambiente de desarrollo y calidad QA
Landscape de SAP con 3 ambientes o sistemas
En esta disposición del landscape, todas las actividades de desarrollo, capacitación, prueba y productivas, y sus datos, están completamente separados, en sistemas o ambientes dedicados.
Landscape de SAP con 3 ambientes o sistemas
En esta disposición del landscape, todas las actividades de desarrollo, capacitación, prueba y productivas, y sus datos, están completamente separados, en sistemas o ambientes dedicados.
Esta opción presenta el menor riesgo, ya que todas las actividades se pueden realizar en paralelo en
ambientes o sistemas.
El nuevo desarrollo está separado de los entornos de prueba y producción.
El tiempo de inactividad del sistema de producción se minimiza.
La desventaja de esta opción son los mayores costos de infraestructura y administración.
SAP recomienda utilizar el landscape de tres ambientes o sistemas para empresas en donde los procesos comerciales se utilizan a diario.
- Los mandantes
Dentro de cada ambiente o sistema de SAP, existen distintos mandantes, siendo independientes los datos que se visualizan en cada mandante dentro del mismo ambiente.
Mandante
Es una instancia creada dentro de un ambiente, que se utiliza para configuración, desarrollo, capacitación o pruebas.
Se lo conoce también en SAP con el nombre de cliente.
Dentro del ambiente de desarrollo tenemos:
- El mandante 101 que se utiliza para configuración y programación.
- El mandante 102 de sandbox que se utilizará para pruebas inusuales.
- El mandante 103 que se utiliza para pruebas unitarias de programación.
Dentro del ambiente de pruebas tenemos:
- El mandante 210 que se utiliza para pruebas integrales, realizadas tanto por los consultores como por los usuarios clave
- de la empresa.
- El mandante 220 que se utiliza para la capacitación de los recursos humanos.
Dentro del ambiente de producción tenemos:
• El mandante 410 que es donde acceden los usuarios finales del sistema para realizar las operaciones del día a día de la empresa.
El concepto de mandante se puede definir desde 2 puntos de vista distintos pero complementarios: la Visión Lógica y
la Visión Física.
Desde el punto de vista lógico: el mandante no es más que una unidad organizativa divisoria de la empresa, que permite que distintos usuarios estén trabajando en el mismo sistema, sin ningún tipo de interferencia mutua, ya que cada usuario sólo dispondrá de acceso para visualizar y actualizar los datos de aplicación de la empresa, que estén asociados al mandante al
cuál están conectados.
Esto es así, porque en el sistema SAP existen dos tipos de datos diferentes:
Datos dependientes de mandante: se engloban aquí los datos de aplicación de la empresa (datos de clientes, proveedores, pedidos, facturas, cuentas contables, etc.) así como la mayoría de los datos de parametrización de la empresa.
Se llaman dependientes de mandante porque sólo son accesibles desde el mandante en el que se crearon. Estos tipos de datos son los más habituales en un sistema SAP.
Datos independientes de mandante: se engloban aquí ciertos datos de la parametrización de la empresa que son
accesibles desde cualquier mandante creado. Este tipo de datos son los menos numerosos.
Cada vez que se va a proceder a la modificación de este tipo de datos, el sistema avisa con un mensaje informativo informándonos de que la modificación afectará a todos los mandantes. Se debe ser especialmente cuidadoso al modificar la parametrización independiente de mandante.
Desde el punto de vista físico: la base de datos de SAP está formada por tablas. Cuando el usuario navega por las pantallas de SAP, es el sistema el que accede a dichas tablas para mostrarle al usuario la información pedida. El mandante es el primer campo clave de la mayoría de las tablas que conforman la base de datos de SAP.
Las tablas de la base de datos que contienen al campo mandante como primer campo dentro de su clave son las llamadas dependientes de mandante.
Las tablas que no contienen al campo mandante dentro de su clave se llaman independientes de mandante.
Cuando un usuario se conecta a un mandante, el sistema le está asignando en ese momento el valor del mandante elegido, con lo que el usuario sólo podrá acceder a visualizar o modificar los datos de cada tabla que tengan como mandante el que ha elegido en tiempo de conexión.
Sin embargo, si una tabla es independiente de mandante, esta puede ser accedida desde cualquier mandante al que se conecte el usuario. Esto se consigue de manera transparente para el usuario e incluso para el desarrollador ya que es el propio sistema el que traduce los accesos a las tablas.
2.1 Los mandantes estándar
Dentro del mundo de los mandantes, podemos decir que existen dos tipos bien diferenciados: por lado tenemos los mandantes estándar, que son aquellos que ya vienen con SAP cuando se instala inicialmente el sistema y luego tenemos los mandantes propios que son aquellos mandantes creados por el usuario, es decir por los administradores de SAP de la
empresa cliente.
Cualquier sistema SAP se instala inicialmente con tres mandantes estándar.
Mandates estándar:
000 de referencia
001 de ejemplo
066 de EarlyWatch
Las funciones de los mandantes estándar son las siguientes:
Mandante 000: es el mandante de referencia. No contiene datos de parametrización empresarial y por lo tanto las creaciones de mandantes propios se deben hacer como copias de este para asegurarnos que empezamos la parametrización desde cero.
Durante un cambio de versión de SAP los datos dependientes de mandante se actualizan
automáticamente en el 000 y los cambios al resto de mandantes se deben hacer desde aquí.
No debe borrarse o modificarse ningún aspecto del mandante estándar 000
Mandante 001: es el mandante de ejemplo. Inicialmente es idéntico al 000 y salvo que lo cambiemos nosotros, ninguna actualización de SAP lo va a modificar, al contrario de lo que ocurre con el 000. Siempre lo podemos tener como ejemplo de la instalación inicial, aunque SAP no impone ninguna prohibición de cambiarlo o borrarlo.
Mandante 066: es el mandante del servicio EarlyWatch, cuyo objetivo es garantizar la confidencialidad de nuestros datos
2.2 Los mandantes propios
A partir del mandante de referencia 000 podemos crear tantos mandantes como queramos (siempre que el tamaño de nuestra base de datos nos lo permita). En el ambiente de desarrollo se suelen crear varios mandantes, en pruebas o testing algunos
menos y en el ambiente de producción solo debe existir un mandante propio.
A continuación, vamos a describir los mandantes que se crean habitualmente y cuáles son sus funciones. Aunque vemos que tienen un número asignado, esto se ha hecho para facilitar la diferenciación entre ellos.
Mandantes propios:
MANDANTE 200 Desarrollo y Parametrización
MANDANTE 210 Sandbox
Mandante 220 pruebas unitarias
MANDANTE 300 Pruebas Integrales
MANDANTE 310 Formación a usuarios finales
MANDANTE 320 Maestro de Parametrización
MANDANTE 400 Productivo
“Cada empresa que utiliza SAP puede asignarle el número que quiera a cada mandante propio”.
Es posible implementar SAP con más o menos mandantes de los indicados, pero hay que buscar el equilibrio entre muchos y pocos. Con pocos mandantes podemos tener conflictos durante la parametrización, el desarrollo de programas o las pruebas, pero con muchos mandantes estaremos aumentando el tamaño de la base de datos y empeorando el rendimiento además de requerir un mayor esfuerzo en los procedimientos de administración de sistemas.
Las funciones de los mandantes propios son las siguientes:
Mandante 200 Desarrollo y Parametrización: aquí se crean los desarrollos a medida que sean necesarios. Los consultores técnicos y funcionales trabajan en este sistema. No tendremos datos maestros ni transaccionales de manera que la pruebas las realizaremos en el mandante 220 después de pasar todos los cambios hechos aquí.
Mandante 210 Sandbox: las pruebas inusuales de parametrización las realizaremos en el 210 de manera que no interrumpamos el trabajo normal del mandante 200. Los cambios que hagamos aquí no se registran en ningún sitio de manera que si probamos algo en lo que nos va bien debemos repetirlo a mano en el 200 para que quede grabado en una orden de transporte (concepto que veremos más adelante) y se pueda pasar al mandante de pruebas unitarias. Periódicamente y para mantener el mandante limpio se hará una copia o refresh desde el mandante 220.
Mandante 220 Pruebas unitarias: los responsables de desarrollo y parametrización efectuarán aquí las pruebas unitarias de los programas. Aquí sí que tendremos datos maestros y transaccionales, aunque no serán muy fiables debido a que la
parametrización puede cambiarse.
Mandante 300 Pruebas integrales y control de calidad: la función de este mandante es similar a la del 220 pero con la diferencia de que las pruebas incluyen la interacción entre los diferentes módulos, el rendimiento y la aprobación del usuario.
También se comprueba que el paso de las órdenes de transporte desde el ambiente de desarrollo sea correcto como garantía de que el paso de esas mismas órdenes a producción también lo sea.
Mandante 310 Formación a usuarios finales o capacitación: una vez superadas las pruebas correspondientes al mandante 300, pasamos el prototipo aquí para que los usuarios finales reciban los cursos de formación y tengan un sitio donde poder seguir practicando después. De esta manera, los datos maestros y transaccionales que crean no nos interfieren en nuestro trabajo habitual.
Mandante 320 Maestro de parametrización: este mandante se usa únicamente como referencia para poder consultar la parametrización que tenemos en productivo, sin tener que acceder al sistema productivo, no obligándonos a dar acceso a la misma, a personal no autorizado.
Para que cumpla su función se deben transportar los cambios al mandante 400 y al 320 al mismo tiempo y mantenerlos siempre sincronizados.
Mandante 400 Productivo: aquí es donde se lleva a cabo la explotación real del sistema. Este es el único mandante propio que debe existir en el ambiente productivo. Antes del arranque en productivo realizaremos aquí las cargas iniciales de datos maestros, movimientos e históricos.
- Las clases de desarrollo de paquetes
La clase de desarrollo o también llamadas paquetes es una forma de organizar todos los nuevos objetos que se crean en SAP, clasificándolos generalmente por módulos o áreas funcionales del sistema.
Existe la Clase de Desarrollo STMP, que se utiliza para los objetos temporales que no se van a transportar entre
ambientes, es decir para pruebas.
Al momento de crear un nuevo objeto en el sistema, SAP nos proporcionará la pantalla que vemos a continuación para que le
asignemos el Paquete al que pertenece. En este caso, el paquete es Z_ _WEB_SERVICE.
Transacción SE80
Las clases de desarrollo o paquetes se crean a través de la transacción estándar SE80.