PROCESOS DIALOGO ABAP
1 La capa de presentación
Se pueden loguear por diferentes front ends, el clásico SAP GUI y también un navegador (permite ver las aplicaciones desarrolladas para este tipo de interfaz).
Las aplicaciones web también pueden ser desarrolladas en JAVA por lo que serian procesadas por este entorno. Cuando llega la solicitud al sistema se determina si es ABAP o JAVA y se reenvia al entorno adecuado.
2 Procesando solicitudes de SAP GUI
El procesamiento de una solicitud de usuario (ejemplo: llamar una transacción) involucra diferentes procesos en las tres capas (presentación, aplicación y BD).
Cuando el usuario llama a una transacción o cambia de pantalla, la capa de presentación toma esto y lo convierte en un formato interno y lo envía al AS ABAP.
El dispatcher es el proceso central del AS ABAP. Se encarga de gestionar los recursos para las aplicaciones escritas en ABAP en coordinación con el OS donde corre nuestro SAP.
Las principales tareas del dispatcher:
• Distribución de solicitudes entre los work processes (WP).
• Integracion de la capa de presentación.
• Organización de las comunicaciones.
Las solicitudes son colocadas en una cola en el dispatcher. En cuanto existe un proceso de dialogo disponible, el Disp encia la solicitud a este WP. Para procesar la solicitud el WP necesitara acceder a la BD (lectura/escritura) ya que cada WP esta conectado directamente a la BD.
El dispatcher (ABAP) es el proceso central del AS ABAP. Se encarga de gestionar los recursos para las aplicaciones escritas en ABAP en coordinación con el sistema operativo respectivo donde correo nuestro sistema SAP.
Las principales tareas del dispatcher incluye la distribución de solicitudes entre sus work processes, la integración de la capa de presentación y la organización de las comunicaciones.
La solicitud enviada por el SAP GUI entra en una cola de solicitudes en el dispatcher. En cuanto existe un proceso de diálogo libre, la solicitud es enviada por el dispatcher a este work processes. Esto significa que no hay una relación fija entre los work processes y los usuarios.
Para poder procesar las solicitudes de usuario, frecuentemente el work processes necesitará leer datos desde o escribirlos en la base de datos del sistema. Es por esto que cada work process está conectado directamente a la base de datos.
Finalmente, una vez que la solicitud ha sido completamente procesada por el work process la respuesta es enviada nuevamente a través del dispatcher al SAP GUI. El SAP GUI interpreta la respuesta y genera una pantalla para el usuario.
Los buffers que se muestran dentro de la Memoria compartida ayudan a agilizar el tiempo de la respuesta por parte del AS a la capa de presentación ya que son datos accedidos frecuentemente.
3 Interface con la BD del sistema
ABAP El programador utiliza ABAP Open SQL (SQL Structured Query Language) para acceder a los datos de la aplicación ABAP cuando se elige este método el programador se independiza del RDBMS.
La interfaz de DB que existe en cada work process del AS ABAP traduce la sentencia OPE SQL -> al lenguaje SQL de la DB que es Native SQL.
Los programas ABAP son independientes de la DB
La ventaja de utilizar OPEN SQL es ue cuando la interface de DB del work process interpreta la sentencia intenta utilizar de manera optima los buffers del servidor de SAP para acceso mas rápido a la data. Si se Utiliza Native SQL el buffer local no es utilizado. El programa ABAP no debe contener código native SQL par evitar la independencia de la DB de SAP.
Dentro del código ABAP, el programador puede usar ABAP Open SQL para acceder a los datos. Cuando se elige este método el programador se independiza del RDBMS sobre el cual se instaló el sistema.
La interfaz de base de datos que existe en cada WP traduce la sentencia Open SQL.