Error en cantidad máxima de Modos abiertos

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • rodisa
    Member
    • jul
    • 49

    #1

    Error en cantidad máxima de Modos abiertos

    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
    Senior Member
    • feb
    • 341

    #2
    respuesta

    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
    Sebas

    Desarrollador ABAP.

    Comentario

    • rodisa
      Member
      • jul
      • 49

      #3
      Gracias pero no

      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.

      Comentario

      • Ddscerezo
        Junior Member
        • feb
        • 17

        #4
        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.

        Comentario

        • rodisa
          Member
          • jul
          • 49

          #5
          GRACIAS!!

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

          Comentario

          Trabajando...