🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP La ejecución de fondo

ABAP La ejecución de fondo

ABAP La ejecución de fondo

EJECUCIÓN DE PROGRAMAS

Existen dos formas de ejecutar un programa en ABAP, Online y Batch Input. En la ejecución Online el programa se ejecuta al momento de presionar F8. Para realizar ejecuciones en fondo y como ver las ejecuciones en fondo que están previstas, activas, ya finalizadas, se utilizara la transacción SM37.

El batch input nace de la necesidad de introducir datos en una transacción dentro del repositorio de SAP, emulando acciones que un usuario debería hacer en cada una de las pantallas que se le presentan, por lo que, en resumen es una herramienta muy útil que sirve para cargar en una transacción cualquiera, datos de forma masiva asegurándose, eso si, de que los chequeos y controles que la transacción hace por defecto se cumplan consiguiendo la integridad de los datos.

Batch Input y CALL TRANSACTION son ambos métodos de transferencia de datos. La entrada por lotes generalmente se usa para transferir gran cantidad de datos. Por ejemplo, está implementando un nuevo proyecto de SAP y, por supuesto, necesitará alguna transferencia de datos del sistema heredado al sistema SAP. Si no hay un programa de entrada por lotes estándar, programa de entrada directa, necesitaría escribir su propio programa de transferencia de datos y será un programa de entrada por lotes. Los métodos CALL TRANSACTION son métodos en tiempo real, cada vez que se ejecuta el programa CALL TRANSACTION se puede activar. CALL TRANSACTION se utiliza especialmente para acciones de integración entre dos sistemas SAP o entre diferentes módulos.

Usando CALL TRANSACTION se haces todo automáticamente, se recolectan los datos necesarios, se hace una transacción y también se hace con la actualización de la base de datos. Si se produce algún error, se muéstra al usuario.

Entrada por lotes

Con el método de entrada por lotes, un programa ABAP lee los datos externos que se introducirán en el Sistema R/3 y almacena los datos en una "sesión de entrada por lotes". La sesión registra las acciones que se requieren para transferir datos al sistema utilizando transacciones SAP normales.

Cuando el programa ha generado la sesión, puede ejecutar la sesión para ejecutar las transacciones de SAP en ella. Puede iniciar y supervisar explícitamente una sesión con la función de administración de entrada por lotes (seleccionando Sistema - Servicios - Entrada por lotes) o hacer que la sesión se ejecute en la sesión de procesamiento en segundo plano.

Ofrece administración de sesiones, soporte para reproducir y corregir sesiones que contienen errores y registro detallado. Su programa prepara los datos y los almacena en una sesión de entrada por lotes. Una sesión es una colección de datos de transacción para una o más transacciones. El sistema mantiene las sesiones de entrada por lotes en la cola de entrada por lotes. Puede procesar sesiones de entrada por lotes en el sistema de procesamiento en segundo plano.

El programa debe abrir una sesión en la cola antes de transferir datos a ella, y debe volver a cerrarla después. Todas estas operaciones se realizan haciendo llamadas a módulos de función desde el programa ABAP.

Los aspectos más importantes de la interfaz de sesión son:

  • Procesamiento asíncrono
  • Transferencia de datos para múltiples transacciones
  • Actualización síncrona de la base de datos. Durante el procesamiento, no se inicia ninguna transacción hasta que la transacción anterior se haya escrito en la base de datos.
  • Se genera un registro de procesamiento de entrada por lotes para cada sesión
  • Las sesiones no se pueden generar en paralelo. El programa de entrada por lotes no debe abrir una sesión hasta que haya cerrado la sesión anterior.

TRANSACCIÓN DE LLAMADA

En el segundo método, el programa usa la instrucción ABAP CALL TRANSACTION USING para ejecutar una transacción SAP. Los datos externos no tienen que depositarse en una sesión para su posterior procesamiento. En cambio, todo el proceso de entrada por lotes se lleva a cabo en línea en su programa. Con CALL TRANSACTION USE, el sistema procesa los datos más rápidamente que con las sesiones de entrada por lotes. A diferencia de las sesiones de entrada por lotes, CALL TRANSACTION USING no admite automáticamente funciones de corrección o registro interactivas.

El programa prepara los datos y luego llama a la transacción correspondiente que luego se procesa inmediatamente.

Las características más importantes de CALL TRANSACTION USING son:

  • Procesamiento sincrónico.
  • Transferencia de datos de una transacción individual cada vez que se llama la instrucción CALL TRANSACTION USE.
  • Puede actualizar la base de datos de forma sincrónica y asíncrona. El programa especifica el tipo de actualización.
  • LUW (unidades lógicas de trabajo) separadas para la transacción. El sistema ejecuta una confirmación de la base de datos inmediatamente antes y después de la instrucción CALL TRANSACTION USING.
  • No hay registro de procesamiento de entrada por lotes.

SUBMIT

Ejecuta un programa.

Sintaxis:

SUBMIT { <programa> | (<programa>) } [ LINE-SIZE <columnas> ] [ LINE-COUNT <filas> ]

[ TO SAP-SPOOL

[ DESTINATION <destino> ]

[ COPIES <copias> ]

[ LIST NAME <nombre> ]

[ COVER TEXT <texto> ]

[ LIST AUTHORITY <autorización> ]

[ INMEDIATELY <flag> ]

[ KEEP IN SPOOL <flag> ]

[ NEW LIST IDENTIFICATION <flag> ]

[ DATASET EXPIRATION ]

[ LINE-COUNT <líneas> ]

[ LINE-SIZE <columnas> ]

[ LAYOUT <layout> ]

[ SAP COVER PAGE <modo> ]

[ COVER PAGE <flag> ]

[ RECEIVER <receptor> ]

[ DEPARTMENT <departamento> ]

[ ARCHIVE MODE <modo> ]

[ ARCHIVE PARAMETERS <parámetros> ]

[ WITHOUT SPOOL DYNPRO ] ]

[ SPOOL PARAMETERS <parámetros> ]

[ ARCHIVE PARAMETERS <parámetros> ]

[ WITHOUT SPOOL DYNPRO ]

[ VIA SELECTION-SCREEN ]

[ AND RETURN ]

[ EXPORTING LIST TO MEMORY ]

[ USER <usuario> VIA JOB <job> NUMBER <número> ]

[ USING SELECTION-SETS OF PROGRAM <programa1> ].

Esta sentencia llama al report <programa>. El nombre del programa se puede especificar dinámicamente utilizando una variable entre paréntesis.

El significado de las cláusulas es el siguiente:

LINE-SIZE -> El programa se visualiza con el número de columnas definido en <columnas>.

LINE-COUNT -> El programa se visualiza con el número de líneas definido en <filas>.

TOP SAP-SPOOL -> Especifica los parámetros de impresión. El significado de las cláusulas es el siguiente:

    • DESTINATION -> Dispositivo de salida.
    • COPIES -> Número de copias.
    • LIST NAME -> Nombre del listado.
    • LIST DATASET -> Nombre del spool dataset.
    • COVER TEXT -> Título de la cubierta.
    • LIST AUTHORITY -> Autorización de display.
    • INMEDIATELY -> Impresión inmediata.
    • KEEP IN SPOOL. Guardar el listado después de la impresión.
    • NEW LIST IDENTIFICATION -> Identificación del nuevo listado.
    • DATASET EXPIRACION -> Fecha de expiración.
    • LINE-COUNT -> Líneas por página.
    • LINE-SIZE -> Columnas del informe.
    • LAYOUT -> Formato de impresión.
    • SAP COVER PAGE -> Con carátula de impresión.
    • COVER PAGE -> Selección de cubierta.
    • RECEIVER -> Usuario receptor.
    • DEPARTMENT -> Nombre del departamento.
    • ARCHIVE MODE -> Modo de archivo.
    • ARCHIVE PARAMETERS -> Parámetros de archivo.
    • WITHOUT SPOOL DYNPRO -> Salta la pantalla de control de impresión.
    • SPOOL PARAMETERS -> Parámetros de impresión.

VIA SELECTION-SCREEN -> Aparece al usuario la pantalla de selección.

AND RETURN -> El programa llamador permanece en espera mientras se ejecuta el programa llamado. Cuando el programa llamado termina se devuelve control al programa llamador. Para ello se crea una sesión interna.

EXPORTING LIST TO MEMORY -> El listado de salida del programa llamado no aparece en pantalla. En su lugar se guarda en memoria. El programa llamador puede leer el listado de la memoria. Esta cláusula no puede ser utilizada en combinación con la cláusula TO SAP-SPOOL.

USER <usuario> VIA JOB <job> NUMBER <n> -> Se utiliza para incluir un paso de job en un proceso de background.

USING SELECTION-SETS OF PROGRAM -> El programa llamado utiliza las variantes del programa <programa1>. Si los parámetros y criterios de selección de ambos programas no coinciden, las variables de <programa1> se pueden borrar.

Los mensajes de error que se pueden producir son los siguientes:

LOAD_PROGRAM_NOT_FOUND -> El programa específico no existe.

SUBMIT_WRONG_TYPE -> El programa especificado no es un report.

SUBMIT_IMPORT_ONLY_PARAMETER -> Valor inválido pasado por parámetro.

SUBMIT_WRONG_SIGN -> Valor inválido pasado a un criterio de selección.

SUBMIT_IN_ITAB_ILL_STRUCTURE -> Tabla pasado como criterio con estructure errónea.

La sentencia submit, con una determina cláusula también nos permite añadir pasos a un job creado con el módulo de función JOB_OPEN.

SUBMIT <report> AND RETURN

USER <usuario>

VIA JOB <nombre_job> NUMBER <id_job>

TO SAP-SPOOL SPOOL PARAMETERS <parámetros_impresión>

ARCHIVE PARAMETERS <parámetro_archivo>

WITHOUT SPOOL DYNPRO.


 

 

 


Sobre el autor

Publicación académica de Sergio Armando Beltran Castaneda, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Sergio Armando Beltran Castaneda

Profesión: Ingeniero de Sistemas con Especialización en Gerencia de Proyectos - Colombia - Legajo: WK55K

✒️Autor de: 70 Publicaciones Académicas

🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado

🎓Egresado del módulo:

Disponibilidad Laboral: FullTime

Presentación:

Soy ingeniero de sistemas desde hace mas de 10 años y quiero enfocarme en el mundo sap, iniciando en el lenguaje abap, con miras a ampliar mi conocimiento profesional y laboral.

Certificación Académica de Sergio Beltran

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "La ejecución de fondo" de la mano de nuestros alumnos.

SAP Expert


ejecución de fondo: on line: se ejecuta de manera innmediata batch: ejecución de programa de fondo

Acceder a esta publicación

Creado y Compartido por: Edwar Antonio Reyes Reyes / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

FORMAS DE EJECUCIÓN DE UN PROGRAMA ABAP: existen 2 formas de ejecutar un programa Ejecución online: presionando la tecla f8 , los programas se ejecutan de manera online , esta se utiliza con los porgramas que tienen interacción con el usuario y son de ejecución corta. Ejecución batch o de fondo : se utiliza la tecla f9 , cuando los programas son grandes y toman mucho tiempo de ejecución. Para planificar la fecha de inicio existen varias posibilidades: Inmediata Fecha/hora Tras jobs Tras evento La transacción SM37 se utiliza para ver los jobs (programas ejecutados a fondo) procesados en el sistema SP01: administra todas las solicitudes de impresión CREACIÓN...

Acceder a esta publicación

Creado y Compartido por: Valentina Muñoz Medina / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Las formas de ejecución de un programa ABAP Ejecución online para los programa que interactúa el usuario y tardan poco. Suele ser F8 Ejecución de batch o de fondo cuando el programa tarda mucho. Suele ser F9 Transacción SM37 para visualizar los jobs procesados en SAP Jobs son los programas o procesos ejecutados de fondo en SAP Transacción SP01 para visualizar órdenes de spool La creación de un programa ABAP de fondo Se hará de otra manera si se hace de fondo o no. Por ejemplo, no tendrá interacción con el usuario, sin interfaz Creamos un programa que ejecute el programa de fondo a través un SUBMIT al que se le puede pasar parámetros...

Acceder a esta publicación

Creado y Compartido por: David Brito Melado

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Tipos de ejecución de programas en ABAP: es importante conocer el tipo de ejcución requerida antes de programar, ya que esta condiciona la programación misma. 1. On-line: con F8 2. BATCH o de fondo: se realiza mediante la creación y ejecución de JOBS que son uno o más programas que se lanzan consecutivamente en proceso de fondo.

Acceder a esta publicación

Creado y Compartido por: Pedro Ernesto Maldonado

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

ejecución de fondo: existen dos casos, ejecución al momento de presionar F8, esto genera resultados de manera inmediata, es conveniente en programas que interactuan con el usuario. Pero en otros casos, el tiempo d ejecución del programa puede ser muy alto, esto por solicitudes a base de datos, por estar procesando millones de registros entre otras,para estos casos se utiliza la ejecucion batch o de fondo. Mediante la sentencia submit, se le puede pasar datos a otro programa siempre y cando existan en este.

Acceder a esta publicación

Creado y Compartido por: Christian Camilo Alzate Duque

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

EJECUCIÓN EN FONDO. Existen dos formas de ejecutar un programa ABAP: 1- En linea el programa se ejecuta tan pronto como el usuario hace clic sobre el icono ejecutar y los resultados son visualizados de inmediato en pantalla. 2- En Proceso de fondo se planifica cuando se va a realizar la ejecución de programa se utiliza esta opción cuando el tiempo de ejecución es muy alto esto se puede deber a varias razones. JOB: Es un conjunto de uno o más programas ABAP que se lanzan consecutivamente en proceso de fondo. JOB_OPEN: Módulo de función estándar ABAP que se utiliza para la apertura de jobs. SUBMIT: Sentencia ABAP que se utiliza para la ejecución de programas ABAP. AND RETURN: Esta...

Acceder a esta publicación

Creado y Compartido por: Juan Santamaria Borja

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior


La Ejecución de Fondo Existen 2 formas en Abap de ejecución la de Fondo y la Online La Online se recomienda o es mejor cuando el procesamiento del programa es poco, así el usuario interactúa tocando algún botón. La ejecución de fondo, no hay interacción con el usuario, hacemos el proceso y sapgui nos devuelve el control, aunque el programa este o no terminado de ejecutarse. Los resultados de esta no se visualizan en pantalla como la online, los resultados se observan en otra transacción de SAP. En Abap según se vaya a programar para que sea online o de fondo el procesamiento se debe tener en cuenta desde el inicio como será ya que la declaración de variables...

Acceder a esta publicación

Creado y Compartido por: Josue Espinoza / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

7| EJECUCIÓN DE FONDO 2 TIPOS DE EJECUCIÓN DE UN PROGRAMA ABAP: Ejecución online – básica, con F8 Ejecución batch o de fondo Ejecución de un programa sin interacción con el usuario, lanzamos el proceso y el SAP GUI nos devuelve el control, aunque el programa todavía no ha acabado de ejecutarse. * se utiliza cuando el tiempo de procesamiento de un programa es muy alto. Procesamiento online en tiempo real - 1 min Procesamiento Batch - 20 min programa > ejecutar en proceso fondo (F9) opciones de inicio: >inmediato: en el momento de acabar su definición >fecha/hora: debemos indicarle día/hora....

Acceder a esta publicación

Creado y Compartido por: Maximiliano Andres Fraga / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Unidad 4 - Ejecución de Fondo Existen dos formas de ejecutar un programa en ABAP. Online y Batch En la ejecucion online al momento de presionar f8 el resultado es en forma inmediata. Normalmente utilizada para los programas que requiere interaccion con el usuario. Pero cuando en un programa el procesamiento puede ser muy alto, cuando tienen muchos accesos a base de datos que tienen millones de registros, multiples txs o varias razones. Es conveniente utilizar la ejecuion Bacth o de fondo. la programacion cambia cuando es un programa es de fondo o online. Las sentencias difieren. Los reporte de fondo, no tienen sentido utilizar tecnicas de reporte tipo ALV. Se puede pedir que un programa se pueda correr de fondo y on line. Para eso...

Acceder a esta publicación

Creado y Compartido por: Matias Ciutat

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


1) Ejecución de fondo Existen 2 formas de ejecutar un programa en Abap: Online - La ejecución se obtiene de una manera inmediata, sirve para programas que interactuan con el usuario. Batch - Se ejecuta en proceso de fondo, muy útiles cuando accesan varias tablas muy grandes de la BD. Para crear un programa que se ejecute en proceso de fondo: Se debe crear un JOB con la función JOB_OPEN Después es lanzar el JOB , la cual la realizaremos con la sentencia SUBMIT con el agregado VIA JOB NUMBER SUBMIT aprueba_fondo_b VIA JOB v_jobname NUMBER v_jobcount AND RETURN. 3. Ahora cerrar el job con la función...

Acceder a esta publicación

Creado y Compartido por: Maria Guadalupe Gonzalez Sanchez

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!