jueves, 2 de agosto de 2012

Conseguir acceso a un servidor SAP - 2º parte

SAPGUI 

SAP R/3 es un software basado en la arquitectura cliente/servidor. SAPGUI o SAP FRONTEND es el programa cliente de SAP y hace las funciones de interfaces entre el usuario y el servidor sap. Trabaja en la capa de presentación y "presenta" la información al usuario, interactua con el usuario y le permite navegar por las diferentes aplicaciones integradas en SAP R/3 



Existen dos SAPGUI: 
- SAPGUI for Windows: Como su propio nombre indica, para sistemas operativos windows.
- SAPGUI for Java: Es un cliente multiplataforma ( Mac OS X, Windows, Linux, Solaris y AIX ).

Actualmente puedes encontrar 4 versiones para SAPGUI for windows:
   - SAPGUI 6.20  sin soporte por parte de SAP desde 31.12.2010
   - SAPGUI 7.10  sin soporte por parte de SAP desde 31.04.2011
   - SAPGUI 7.20  con soporte por parte de SAP hasta 09.04.2013
   - SAPGUI 7.30  con soporte por parte de SAP hasta 15.07.2015

Y 3 versiones para SAPGUI for Java:
   - SAPGUI 7.10  sin soporte por parte de SAP desde 31.04.2011
   - SAPGUI 7.20  la ultima versión liberada es SAPGUI for Java rev11, no soporta Java SE 7.
                              Soporta OpenSUSE 12.1 y Fedora 16.
                              En la Nota 1400273 tenéis la lista completa de sistemas operativos que soporta.
   SAPGUI 7.30  Soporta Java 7 y  Java de 64bits para windows
                              Soporta los siguientes sistemas operativos: 

          • OpenSUSE 12.2
          • Fedora 17
          • Red Hat Enterprise Linux 6
          • Ububtu 12.04
          • OS X 10.8
          • Microsoft Windows 8   
Aparte de la versión tenemos que tener en cuenta el nivel de parcheado, a mayor nivel de parcheado, menos bugs. Para ver el nivel de parcheado, hacer click en la esquina superior izquierda de la ventana del  SAPGUI-> Acerca de SAP Logon.



Para Windows 7 y Oficce 2012, necesitáis la versión 7.20 que va ya por el nivel de parcheado 14.
Para Windows XP, os vale con la 7.10 pero el nivel de parcheado dependerá de vuestro Explorer y Oficce.

SAP ,en la nota 30460, informa que siempre es posible conectarse a un sistema SAP R/3 antiguo con una versión mas actual de SAPGUI ya que  sus productos tiene retro-compatibilidad. Pero no aseguran que lo contrario, conectarnos con un SAPGUI antiguo a un sistema SAP R/3 mas actual,  funcione o si funciona no se responsabilizan de los fallos que puedan suceder.

Por ejemplo, es posible conectarse y trabajar  con un sistema SAP R/3  3.11I con SAPGUI 7.20, pero conectarse con un  SAPGUI inferior a 6.20 a un SAP ECC 6, puede dar problemas, ya que el sistema sap puede  llevar aplicaciones que no sean soportadas por el cliente SAPGUI antiguo .

Si vais a usar el "SAPGUI for Java", tenéis que utilizar la 7.30, las anteriores versiones han dejado de ser soportadas por SAP.
¿ Donde puedo conseguir e SAPGUI ?

El único problema es que para descargarlo, necesitas una cuenta en el  SAP Service Marketplace

Pero aquí os dejo un par de enlaces para conseguir la 7.20 con el parche 14 y la versión 7.30 de Java:

SAPGUI 7.20 for Windows + parche 12,13 y 14
SAPGUI 7.30 for Java - MAC OS 10.8
SAPGUI 7.30 for Java - Windows
SAPGUI 7.30 for Java - Linux

Crear una conexión a un servidor SAP

Lo primero, necesitas la dirección IP del servidor y un usuario/password.

En la anterior entrada ya explique como conseguir un acceso a un servidor sap para practicas.

Para crear la conexión al servidor sap, click en "Nuevo" -> "Continuar"


- Descripción: Descripción de la conexión
- Servidor de Aplicación: Ip del servidor del sistema SAP R/3
- Nº de Instancia: Pueden convivir varios sistemas SAP R/3 en un mismo servidor
- Id del sistema: Cadena de 3 caracteres que identifica el sistema

Una vez creada la nueva conexión, aparecerá su descripción en el SAPGUI.
Doble click en la descripción y se lanzara la conexión, si no hay errores, aparecera la pantalla de identificación del sisteam SAP R/3 solicitando que nos identifiquemos con un usuario/password valido.


Si hay otra persona usando nuestro usuario/password en el sistema cuando intentemos conectarnos. Aparecera una ventada informado sobre los usuarios conectados con el mismo usuario/passwd y tres opciones


  • Cerrar todas las entradas con el mismo usuario y entrar nosotros en el sistema.
  • Mantener el resto de entradas con el mismo usuario y entrar en el sistema
  • Cerrar y salir del sistema


Navegando por SAP una guia rapida

Una vez autentificados, nos aparece la pantalla de inicio de SAP


En SAP, cuando queremos ejecutar  aplicación ( crear un pedido, facturar, etc... ) tenemos que ejecutar la transacción correspondiente. Una transacción es como un acceso directo del sistema, llama  a un programa con unos parámetros iniciales y se ejecuta dentro de la ventana o modo. Se pueden tener varias ventanas o modos abiertos en el escritorio, ejecutando diferentes transacciones en cada una y el limite por defecto , suele ser de 7 ventanas o modos abiertos para un usuario. Podríamos tener un modo para crear pedidos de compras, otro para la entrada de mercancías en el almacén, otro para facturación, hasta el máximo permitido por el sistema a cada usuario.

Se puede seleccionar la transacción desde el árbol de transacciones ( como los accesos directos del escritorio ) o introducir el nombre de la transacción directamente en el campo comandos (seria parecido a ejecutar un programa desde la linea de comandos del sistema ).


Para ejecutar una transacción desde el campo de comandos, primero se escribe el comando y después el código de la transacción,  por ejemplo, para acceder al editor ABAP:


- /n : Cierra la transacción actual, los datos no salvados se pierden y vuelve a la pantalla de inicio.
- /nXXXX  : Cierra la transacción actual y ejecuta la nueva transacción en la misma ventana.
- /o : Abre una nueva ventana en el sistema.
- /oXXXX : Abre una nueva ventana donde se ejecutara la nueva transacción.
- /i : Cierra la ventana actual, si es la única ventana, sale del sistema.
- /h : Activa el modo debugger.
- /nend : Pide confirmación del usuario y cierra todas las ventanas y transacciones y sale del sistema.
- /nex : Mi preferida del viernes, cierra todas las ventanas y transacciones, sale del sistema sin pedir confirmación.


Por ejemplo, para crear, modificar  o visualizar un pedido de venta tenemos las transacciones:
  • VA01: crear pedido de ventas
  • VA02: modificar pedido de venta
  • VA03: visualizar pedido de venta
O si queremos crear, modificar o visualizar un pedido de compra.
  • MM21N: Crear pedido de compra
  • MM22N: Modificar pedido de compra
  • MM23N: Visualizar pedido de compra
Pero estáis aquí por la programación en SAP, algunas de las transacciones que nos interesan son:
  • SE38: editor de programas ABAP
  • SE24: Generador de clases ( prog. orientada a objetos )
  • SE37: Bapis, funciones del sistema
  • SE80: Object Navigator
Encontrareis todas las transacciones para programación y desarrollo, en el árbol de transacciones siguiendo el camino Herramientas->Workbench ABAP -> Desarrollo




Fuentes:
SAP GUI Family

Entradas anteriores:
Conseguir acceso a un servidor SAP

miércoles, 1 de agosto de 2012

ABAP Objects: Introduction to Programming SAP Applications


Unos de mis primeros libros sobre programación en ABAP, el lenguaje de programación de SAP. El libro esta pensado para gente que esta dando sus primeros pasos en la programación con ABAP o que quiere dar el salto a la  la programación orientada a objetos en ABAP, desde la  programación estructurada en ABAP.

Empieza con una breve introducción al  lector al sistema SAP R/3 y a la programación estructurada en ABAP. Después salta a la programación orienta a objetos en ABAP. Incluye muhos ejemplos para que el lectos practique y aprenda.


Este libro solo cubre hasta sistemas SAP R/3 release 4.6, es decir no incluye ni XML, ni Web Dynpro o Web Services, existe una segunda versión que cubre hasta SAP R/3 release 7.10.

No es un típico libro "Aprenda en 21 dias...". Son 600 paginas y solo lo encontrareis en ingles y alemán. Lleva su tiempo leerlo, a mi me costo varios meses, pero cumple su objetivo.


Incluye 2 CD con MiniSAP, una distribución de SAP con lo básico para practicar con los ejemplos del libro, personalmente, prefiero el SAP IDES 4.7 o acceder a un servidor sap para practicas en internet. 


El libro esta estructurado en 8 capítulos:
  1. Introducción
  2. Un introducción practica
  3. Programación en ABAP basica
  4. Elementos Básicos del lenguaje ABAP
  5. Modelos de programación ABAP
  6. Conceptos avanzados de programación orientada a objetos
  7. Programación de pantallas 
  8. Trabajando con datos externos
Poco mas que decir de este estupendo libro, cuando empeze a programar en SAP, su lectura me fue de mucha ayuda durante mi aprendizaje. Después de 6 años programando en ABAP, aun lo consulto cuando tengo alguna duda.

Para los que empezáis a programar con ABAP, encontrareis multitud de código para practicar y desarrollar aplicaciones SA, para los mas expertos , un buen libro de consulta a la hora de desarrolar aplicaciones en SAP.