Inicio del área de contenido

Documentación proceso de fondo Inserción de programas propios como tareas Localizar documento en árbol de navegación

Utilización

Se puede incluir directamente la operación propia en el plan de tareas sin tener que hacer modificaciones en la operación.

Si periódicamente se ejecuta el programa propio, éste se podrá ampliar para que se pueda utilizar en definiciones de proceso (workflow) y el status de procesamiento se pueda visualizar en el monitor.

Para que el programa pueda utilizar el pool de trabajo, se deberán cumplir las directrices de programación para el monitor de jobs y la definición de proceso. Se deberán realizar más ampliaciones de programa.

Procedimiento

Conexión del propio programa con el monitor

El programa CUSTOMER_REPORT está disponible en el sistema de forma estándar. Este programa muestra el modo de llamar dos módulos de funciones que permiten la conexión más fácil con el monitor (sin conexión de workflow).

Incorpore los Includes SCHEDMAN_INIT y SCHEDMAN_CLOSE en el programa. El programa está conectado con el monitor de jobs.

Utilización del programa de definición de proceso

Si también se desea utilizar el programa en definiciones de proceso, se deberá incorporar el Include RKASMAWF en la pantalla de selección.

Al inicio del procesamiento, instale la codificación siguiente en vez del Include SCHEDMAN_INIT mencionado arriba:

data: gs_key like schedman_key.

data: ls_detail like schedman_detail_user.

data: ls_appl like schedman_customer.

data: ld_dummy(20) value 'ABCDEFGHIJKL'.

constants: customer_appl like smmain-application value 'CUSTOMER'

ls_detail-application = customer_appl.

ls_detail-repid = sy-repid.

* ls_detail-testflag = true. "Decide if testrun or not

ls_appl-customer_field = ld_dummy.

CALL FUNCTION 'KPEP_MONI_INIT_RECORD'

EXPORTING

LS_DETAIL = ls_detail

* LS_WITEM =

LS_APPL = ls_appl

* LD_WORKLIST_FLAG = ' '

IMPORTING

LS_KEY = gs_key.

* TABLES

* LT_SELKRIT =

* LT_PARAM =

En la estructura SCHEDMAN_CUSTOMER, se pueden definir campos propios, los cuales se completan con valores durante la ejecución.

Al final del procesamiento del programa, instale la codificación siguiente en vez del Include SCHEDMAN_CLOSE:

data: ld_aplstat like smmain-aplstat.

data: LS_SCMA_EVENT LIKE SCMA_EVENT.

constants: c_status_ok value '0'.

constants: c_status_undefined value '2'.

constants: c_status_error value '4'.

constants: c_status_aborted value 'A'.

include schedman_events.

*.decide the status you want to send

ld_aplstat = c_status_ok.

* ld_aplstat = c_status_undefined.

* ld_aplstat = c_status_error.

* ld_aplstat = c_status_aborted.

*.If the report ended with error ® stop whole workflow. Otherwise

*.start the next job

if ld_aplstat = '4' or ld_aplstat = 'A'.

ls_scma_event-wf_event = cs_wf_events-error.

else.

ls_scma_event-wf_event = cs_wf_events-finished.

endif.

*.the variables wf_witem and wf_okey

*.are from include RKASMAWF and are filled AUTOMATICALLY

*.fill them into strcuture ls_scma_event

ls_scma_event-WF_WITEM = wf_witem.

ls_scma_event-WF_OKEY = wf_okey.

CALL FUNCTION 'KPEP_MONI_CLOSE_RECORD'

EXPORTING

LS_KEY = gs_key.

* LS_MESSAGE =

* LD_OBJECTS =

* LS_EXT =

* LS_RL =

LS_SCMA_EVENT = ls_scma_event

* TABLES

* LT_SPOOL =

CHANGING

LD_APLSTAT = ld_aplstat

EXCEPTIONS

NO_ID_GIVEN = 1

OTHERS = 2.

Nota

Para los programas que se deseen incluir en definiciones de proceso, observe lo siguiente:

Si es un programa multiaplicaciones, se deberá copiar el programa almacenado con una aplicación, y a continuación almacenar el nuevo programa en la tabla SCMAPROG con la nueva aplicación.

Introduzca el nombre de su programa como un programa de cliente en el Schedule Manager. Para más información, véase Inserción de programas propios como tareas.

Se puede incluir el programa propio en una definición de proceso utilizando estas opciones y visualizar los resultados en el monitor.

 

 

 

Fin del área de contenido