Crear Job desde un programa, para una hora

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • mvlopez
    Junior Member
    • jul
    • 24

    #1

    Crear Job desde un programa, para una hora

    Hola a todos.
    A ver si me pueden ayudar con esto, necesito desde un programa, crear un Job, pero que no se ejecute de forma inmediata, sino a una hora especifica. Probé pasándole el parametro SDLSTRTTM a la funcion JOB_OPEN, pero al parecer no lo toma en cuenta y lo ejecuta de inmediato. Muchas gracias por su ayuda.
  • agv1976
    Member
    • jun
    • 66

    #2
    Hola

    Hacer eso por código yo lo hice, pero es mejor que lo hagas directamente sobre el programa, o sea en el menu le das ejecutar en proceso de fondo, y hay le indicas el dia y la hora, se puede hacer por codigo pero si el estandar ya lo hace es tonteria perder tiempo en eso, si tienes dudas de como hacerlo me dices y te cuento

    Comentario

    • jtristan
      Senior Member
      • oct
      • 240

      #3
      Hola,

      te paso un ejemplo.


      DATA: v_numero TYPE TBTCJOB-JOBCOUNT,
      v_nombre TYPE TBTCJOB-JOBNAME VALUE 'ZNOMBREjob'.

      * Le indicamos la fecha y la hora a la que queremos que se ejecute el job.
      * Creamos un job
      CALL FUNCTION 'JOB_OPEN'
      EXPORTING
      jobname = v_nombre
      sdlstrtdt = fecha
      sdlstrttm = hora
      IMPORTING
      jobcount = v_numero
      EXCEPTIONS
      cant_create_job
      invalid_job_data
      jobname_missing.

      * Indicamos los parámetros que se deben pasar así como el nombre del * programa que queremos que ejecute el job.

      SUBMIT ZNOMBREPROGRAMA
      WITH sociedad = sociedad
      WITH centro = centro
      WITH material = material
      WITH t_produc = t_produc
      WITH de_versi = de_versi
      WITH a_versio = a_versio
      WITH p_desde = p_desde
      WITH p_hasta = p_hasta
      USER sy-uname
      VIA JOB v_nombre
      NUMBER v_numero
      AND RETURN.

      * Cerramos el trabajo.
      CALL FUNCTION 'JOB_CLOSE'
      EXPORTING
      jobcount = v_numero
      jobname = v_nombre
      sdlstrtdt = fecha
      sdlstrttm = hora.


      Un saludo.

      Comentario

      • mvlopez
        Junior Member
        • jul
        • 24

        #4
        Gracias por la respuesta, fijate que eso fue lo que hice en mi programa, pero no toma en cuenta la fecha ni la hora que le estoy colocando, me fije en la programación que tiene la función Job Open y tiene comentado las líneas donde se supone debe tomar estos parametros, al pareder solo deja el nombre del Job, el resto de las líneas estan comentadas. Estoy en la versión 6.0, no se si en otras versiones no pasa esto. Por eso quería saber si habrá alguna otra forma de hacerlo, no quiero modificar esta función estandar.

        Esto es lo que tiene la función:
        * Uebergabe-Struktur fuer Jobdaten fuellen. Starttermindaten werden
        * absichtlich nicht mehr berücksichtigt, sondern nur aus Kompatibili-
        * tätsgründen in der Schnittstelle belassen ( wird später entfernt )
        *
        global_job-jobname = jobname.
        * global_job-delanfrep = delanfrep.
        * GLOBAL_JOB-SDLSTRTDT = SDLSTRTDT.
        * GLOBAL_JOB-SDLSTRTTM = SDLSTRTTM.
        Saludos.

        Comentario

        • jtristan
          Senior Member
          • oct
          • 240

          #5
          Juraría que la versión en la que utilicé este código también era la seis y si que iba. Si que es cierto, mirandolo ahora, que indica no usar esos parámetros.
          Depurando, lo que veo, es que en en el close, donde está utilizando la fecha y la hora.

          Un saludo.

          Comentario

          • Ariel-StaFe
            Senior Member
            • nov
            • 321

            #6
            submit job sin impresion de reporte

            Estimados.
            Me sumo en su tema para preguntar por una cuestion que tengo que resolver.
            El programa al que llamo a ejecutar con el JOB. Genera un reporte, y lo imprime. Pero yo no quiero que se imprima, que solo se archive.
            Encuentro los parametros que le paso desde el SUBMIT.
            Es decir, tengo primero el JOB_OPEN
            Y luego en el SUBMIT alprograma, le paso
            TO SAP-SPOOL SPOOL PARAMETERS ls_spool_params
            donde dentro de los parametros le paso copia en 0, y armod en 2 para que solo archive.
            Pero igual genera el job y lo manda a imprimir a la impresora x defecto.

            Se puede No sera que debo colocar el parametro para que no imprima y solo grabe en el JOB_OPEN ?
            Cómo sería ?

            Desde ya gracias por su tiempo.
            Ss
            Ariel-StaFe
            Analista Programador Abap Senior
            Santa Fe Capital
            Pcia de Santa Fe
            Argentina

            Comentario

            • funkeeiads
              Member
              • mar
              • 47

              #7
              Estimados.
              Como rescato los valores de los parametros enviados por el submit en el programa de destino?

              Comentario

              • Ariel-StaFe
                Senior Member
                • nov
                • 321

                #8
                funkeeiads
                En el Submit le dices que valores colocas en los parametros..
                El programa destino solo se ejecuta.. y toma los valores que marcaste en el submit automaticamente.
                Saludos
                Ariel-StaFe
                Analista Programador Abap Senior
                Santa Fe Capital
                Pcia de Santa Fe
                Argentina

                Comentario

                Trabajando...