✒️ABAP / La ejecución de fondo Por Jaime Gomez Arango

Selector Alummnos / Empresas

CVOSOFT UNITED STATES OF AMERICA | 17 años de ingeniería dedicados a formación profesional de Consultores SAP | +info

ABAP La ejecución de fondo

ABAP La ejecución de fondo

Background Execution

Programs can be executed in ABAP through the Program menu, either by selecting Execute or Execute in Background. There are two ways to execute a program:

  • Online Execution (F8): The program runs immediately upon pressing F8 or the execute icon, producing results instantly. This method is suitable for user interaction and when program processing is minimal. (1 Minute)
  • Batch Execution (F9): This involves running a process or program without user interaction. A process is launched, and control is returned even before the program finishes execution. This is used for high-processing programs. Results are not visible on the same screen but can be found in transaction SM37. (20 minutes)

When running a background program, a pop-up window for background printing parameters appears. You can modify output devices, Windows printers, etc. Upon execution, the following options are presented:

  • Immediate: Starts the background program as soon as it is defined.
  • Date/Time: Specifies the date and time to initiate background execution, with an option for periodic execution.
  • After job: Chains the execution to start after another job finishes. It's possible to specify that the program should only run if the previous program processed correctly; otherwise, it won't continue.
  • After event: Execution occurs as soon as the specified event starts, either manually or automatically. The event must be defined in table BD.

Transaction SM37

Used to view jobs processed in the SAP system. Information such as ID, executing SAP user, status (planned, released, prepared, activated, completed, or canceled), start date and time, duration, and delay can be viewed for each job.


Transaction SP01

Through the standard transaction SP01, known as "The Spool," we manage all print requests generated in the SAP system. NOTE: Programming a report differs if executed online or in the background, especially when mass loading data into the system.

Creating a Background ABAP Program

When designing and developing an ABAP program that must exclusively run in the background, the approach differs from an online execution due to requirement and system characteristics.

  • The first step is to create a job. Assign a name to the variable V_JOBNAME and then execute the function module JOB_OPEN. To modularize, create the subroutine JOB_CREATION.
  • Next, launch the job. Create the subroutine JOB_EXECUTION, executing the SUBMIT statement. This statement is used to run a program within another program, and with the VIA JOB NUMBER clause, the program runs in the background.
  • Using the SUBMIT statement, parameters can be passed to the called program, which must exist on its selection screen.
  • With the AND RETURN clause in the SUBMIT statement, the calling program remains in wait while the called program executes. Once the called program finishes, control is returned to the calling program.
  • Finally, close the job using the function module JOB_CLOSE. Create the subroutine JOB_END and display the message "Job launched, go to transaction SM37 to view."

Transaction SM36

A job can be created and scheduled with SM36 manually. Steps and configuration can be configured with GUI. Reference: https://www.youtube.com/watch?v=AyFESMyj7O8

E.g

Worker - Actual Logic to be executed

*&---------------------------------------------------------------------*
*& Report ZTEST_ABAP_JEGA_13_JOB
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_abap_jega_13_job.

* Declaration of Structure
DATA: it_users TYPE STANDARD TABLE OF zuser_table_jega,
wa_users LIKE LINE OF it_users.

*---------------------------------------------------------------------*
START-OF-SELECTION.
*---------------------------------------------------------------------*
CLEAR it_users.
REFRESH it_users.

SELECT *
FROM zuser_table_jega
INTO TABLE it_users.

LOOP AT it_users INTO wa_users.
* Content of the Users Table
WRITE:/1(1) sy-vline,
2(8) wa_users-dni,
11 sy-vline,
12(30) wa_users-nombre_ape,
43 sy-vline,
44(20) wa_users-estado,
65 sy-vline,
97(20) wa_users-birthdate,
133 sy-vline.
ENDLOOP.

Job Scheduler - Calling the main logic

*&---------------------------------------------------------------------*
*& Report ZTEST_ABAP_JEGA_13
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_abap_jega_13.

* Data declaration
DATA: v_jobname TYPE btcjob,
v_jobcount TYPE btcjobcnt.

*----------------------------------------------------------------------*
START-OF-SELECTION.
*----------------------------------------------------------------------*
* Job schedule
PERFORM job_creation.

* Job execution
PERFORM job_execution.

* Job end
PERFORM job_end.

************************************************************************
********************* SUBROUTINES ***************************************
************************************************************************
*&---------------------------------------------------------------------*
*& Form job_creation
*&---------------------------------------------------------------------*
FORM job_creation.
* Assign job name
CONCATENATE 'ZTEST_JEGA_JOB_' sy-datum INTO v_jobname.

CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = v_jobname
IMPORTING
jobcount = v_jobcount
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.

IF sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.

*&---------------------------------------------------------------------*
*& Form job_execution
*&---------------------------------------------------------------------*
FORM job_execution.
* Launch the worker program Via de new JOB
SUBMIT ztest_abap_jega_13_job
USER sy-uname " Current user - job activarion
VIA JOB v_jobname
NUMBER v_jobcount
AND RETURN.
ENDFORM.

*&---------------------------------------------------------------------*
*& Form job_end
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM job_end.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = v_jobcount
jobname = v_jobname
strtimmed = 'X' "Starts immediately
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
invalid_target = 8
OTHERS = 9.

IF sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
* If Job was launched, view trought SM37
MESSAGE s000(zclase_test_b) WITH TEXT-001 TEXT-002.
ENDIF.
ENDFORM.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Jaime Eduardo Gomez Arango, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.

SAP Expert


Jaime Eduardo Gomez Arango

Profesión: Ingeniero de Sistemas y Computación - España - Legajo: SW34C

✒️Autor de: 149 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Ingeniero de sistemas y computación con 8 años de experiencia el desarrollo frontend & backend (react/node) y en cloud (aws), actualmente desarrollando habilidades en sap btp, ui5, abap y fiori.

Certificación Académica de Jaime Gomez

✒️+Comunidad Académica CVOSOFT

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

SAP Expert


¿Qué es la ejecución de fondo? En ABAP existen dos formas principales de ejecutar un programa. Mientras que la ejecución online (F8) es interactiva y muestra resultados inmediatos en pantalla, la ejecución de fondo (batch) consiste en procesar un programa sin interacción directa con el usuario. Al lanzar un proceso de fondo, el sistema devuelve el control al usuario inmediatamente, permitiéndole seguir trabajando mientras el programa se ejecuta "detrás de escena". Se utiliza principalmente cuando el tiempo de procesamiento es muy alto o cuando el programa debe acceder a millones de registros en la base de datos. Cómo ejecutar en fondo (Usuario) Para ejecutar un programa...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

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

SAP Master


Las formas de ejecución de un Programa ABAP Se explican las dos formas principales de ejecutar un programa ABAP: ejecución online y ejecución batch (de fondo). Ejecución online: el programa se ejecuta al presionar F8 o el ícono de Ejecutar, los resultados se muestran de inmediato o modifican tablas en SAP. Es adecuada para programas que requieren interacción rápida con el usuario o cuando el tiempo de procesamiento es bajo. Ejecución batch (de fondo): se ejecuta sin interacción del usuario, lanzando el proceso y devolviendo el control al usuario mientras el programa sigue ejecutándose. Es recomendable para cómputos pesados, acceso a tablas con...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

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

SAP Senior

1. Formas de ejecución de un programa ABAP En SAP, un programa ABAP puede ejecutarse de dos maneras principales: a) Ejecución Online (Interactiva) • El programa se ejecuta mientras el usuario está conectado y activo en el sistema. • El usuario ingresa datos a través de pantallas o parámetros de selección. • El programa procesa los datos y muestra los resultados directamente en pantalla. • Es una ejecución síncrona: el usuario debe esperar a que el programa termine para continuar. • Usualmente se usa para tareas cortas o que requieren interacción inmediata, como consultas, mantenimiento de datos, o transacciones. ⸻ b) Ejecución Batch...

Acceder a esta publicación

Creado y Compartido por: Mara Fadua Romero Hernandez

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

SAP Master

Introducción: Los programas ABAP pueden ejecutarse de forma online (interactiva, con salida inmediata) o en fondo (asíncrona, ideal para procesos largos). ¡Domina ambas modalidades para optimizar rendimiento y experiencia de usuario! Comparativo: Online vs. Fondo Característica Ejecución Online Ejecución en Fondo Interacción (Usuario presente) (Sin intervención) Tiempo límite ~30 minutos (default) Sin límite Resultados Pantalla inmediata Spool (SM37/SP01)...

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

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

SAP Expert


La ejecucion de fondo 1 Las formas de ejecución de un programa ABAP En ABAP existen dos formas principales de ejecutar un programa: Ejecución online: Se realiza al presionar la tecla F8 o hacer clic en el botón de ejecutar. Es útil cuando se requiere interacción con el usuario, ya que permite introducir datos en pantalla y ver los resultados de inmediato. Adecuada para programas con bajo tiempo de procesamiento. Ejecución batch o de fondo: Se activa presionando F9. Se utiliza cuando el tiempo de procesamiento es alto, como por ejemplo al trabajar...

Acceder a esta publicación

Creado y Compartido por: Geovanny Martínez Campoverde

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

SAP Expert



1. ¿Qué es la Ejecución de Fondo en SAP? En términos simples, la ejecución de fondo (también conocida como background processing) permite que un programa, reporte o transacción se ejecute automáticamente en segundo plano, en lugar de hacerlo en primer plano (es decir, con el usuario esperando frente al sistema). Es una forma de realizar tareas sin necesidad de interacción humana directa durante la ejecución. Por ejemplo, en vez de ejecutar un reporte extenso que tarda 30 minutos y tener que esperar, se puede programar para que se ejecute en la madrugada y los resultados estén listos al día siguiente. 2. ¿Por Qué es Importante la Ejecución...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

La ejecución de fondo 1. Las formas de ejecución de un programa ABAP En ABAP existen 2 formas de ejecutar un programa > Ejecución online: En donde el programa se ejecuta al momento de presionar la tecla F8 o en el ícono de ejecutar y los resultados de la ejecución se producen de manera inmediata, ya sea mostrándonos por pantalla o modificando las tablas bases de datos SAP. > Ejecución batch o de fondo: Consiste en la ejecución de un proceso o programa sin interacción con el usuario, es decir, que 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...

Acceder a esta publicación

Creado y Compartido por: Yeny Gisela Yanes Bautista

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

SAP Junior

LA EJECUCIÓN DE FONDO En ABAP existen dos formas de ejecutar un programa: Ejecución On-Line: en donde el programa se ejecuta al momento de presionar la tecla F8 o el icono de ejecutar y los resultados de la ejecución se producen de manera inmediata, ya sea mostrándolos por pantalla o modificando las tablas de bases de datos de SAP. La ejecución On-Line es conveniente para los programas en donde se requiere interacción con el usuario, es decir, para poder continuar con el procesamiento del programa se espera que el usuario presione una tecla o haga click en un botón. También es adecuada su utilización cuando el procesamiento del programa es poco. Ejecución Batch o de Fondo:...

Acceder a esta publicación

Creado y Compartido por: Carvajal Encina Franco Erasmo / Disponibilidad Laboral: FullTime

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

SAP Senior

Las formas de ejecucion de un programa ABAP Existen dos formas de ejecutar: Ejecucion online: el programa se ejecuta al momento de presionar F8 o el icono ejecutar y los resultados se muestran inmediatamente, ya sea por pantalla o modificando las tablas de database. Este tipo es conveniente cuando se requiere interaccion con un usuario, osea cuando se espera que este haga algo para seguir con el procesamiento. INFORMACION > SISTEMA Ejecucion batch o de fondo: el programa o proceso no tienen interaccion con el usuario, osea que se lanza el proceso y SAP GUI nos devuelve el control, aunque el prograna no acabe de ejecutarse. Este tipo se usa cuando el tiempo de procesamiento del programa es muy alto, ya sea por que tiene muchos accesos...

Acceder a esta publicación

Creado y Compartido por: Luciano Martinez / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Las formas de ejecucion de un programa ABAP. Existen dos formas de ejecutar un programa ABAP Ejecucion Online: Es el modo de ejecución en donde el procesamiento del programa se realiza inmediatamente después de la ejecución del mismo por parte del usuario. Se utiliza para los programas que tienen poca carga de procesamiento o aquellos que requieren interacción con el usuario. En la ejecución Online el programa se ejecuta al momento de presionar F8 y los resultados de la ejecución se producen de manera inmediata. Esta forma de ejecución es conveniente para los programas donde se requiere interacción con el usuario o cuando el tiempo de ejecución es muy poco. Pero en ciertos...

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.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!