PDA

Ver la Versión Completa : Error en cantidad máxima de Modos abiertos


rodisa
21/07/14, 12:42:12
Buenas compañeros,

Tengo un error un poco raro, os comento. Tengo un programa que se ejecuta hacia adelante y hacia atras, haciendo varios o muchos Call Transaction con Batch Imput...
Y con un modo abierto solamente, digamos que cuando ejecuto 7 Batch Input me dice al siguiente que no tengo modos suficientes abiertos. Y sólo tengo una ventana o modo abierto. Es como si dejara los Batch Input los modos abiertos.... y por eso no me deja.

Necesito ayuda, de cómo solucionarlo. Os pongo mi código:

CLEAR ld_opt.
ld_opt-dismode = 'E'.
ld_opt-updmode = 'S'.
ld_opt-racommit = 'X'.
ld_opt-nobinpt = 'X'.
ld_opt-nobiend = 'X'.

CALL TRANSACTION 'F-43'
USING t_bdcdata
OPTIONS FROM ld_opt
MESSAGES INTO t_bdcmsgcoll.


Creía que la clave estaba en la tabla OPT, pero el valor ld_opt-nobinpt = 'X'. es necesario por especificacion y forma de actuar el programa.

Espero ayuda porque llevo varios dias y no sé que hacer...

sconoredhot
25/07/14, 13:02:56
habria que buscar bien donde meter el codigo, bien al final, pero esta funcion cierra el modo actual, si te sirve

CALL FUNCTION 'TH_DELETE_MODE'
EXPORTING
mode = -1.

saludos

rodisa
28/07/14, 12:49:40
GRACIAS pero no.... esa función no vale, porque realmente no tenemos 7 modos abierto físicamente, sino que hay algo detrás que lo deja abierto y no los cierra como tiene que ser.
Si pongo esta función cierra el modo y no sigue el programa.

Muchas gracias de todos modos.

Ddscerezo
29/07/14, 11:01:46
Hola.

Lo mismo, si estás lanzando varios batch, te estás quedando sin 'hilos de ejecución'. En la transacción SM50/SM51, podrás ver los hilos diponibles de tu sistema para las ejecuciones online y las disponibles para ejecuciones batch. Quizás tengas que controlas que no hay más de x ejecuciones de batch inputs en tu sistema para lanzar otro nuevo. La tabla tbtco y las asociadas te pueden servir para realizar ese control.

También puedes probar en los batch, a jugar con las sentencias open-gropup/close-group; para meter todos los batch dentro del mismo grupo (si es posible), o asegurarte de hacer un og/cg en cada batch.

Un saludo.

rodisa
01/08/14, 10:59:28
GRACIAS!!

Gracias voy a probar lo del control de la tabla TBTCO.