Jueves, 05 Junio 2014 00:00

SPOOL : La cola de impresión en SAP

Escrito por 
Valora este artículo
(2 votos)

El Sistema SAP distingue dos partes en un trabajo de impresión :

Orden de Spool: Es un documento para el que se ha seleccionado una función de impresión. Sin embargo, aún no ha salido por una impresora u otro dispositivo. Los datos de salida del documento se almacenan temporalmente hasta que se crea una petición de salida, es decir, hasta que se envía a un dispositivos de salida en particular.

● Petición de salida : Desde el punto de vista del sistema SAP, una petición de salida contiene los parámetros de impresión de una orden de spool. Pueden existir múltiples peticiones de salida para una única orden de spool. Cada una representa una instancia de la salida de la misma orden de spool, y cada una de estas peticiones de salida pueden tener diferentes atributos, como la impresora de destino o el número de copias.

El sistema utiliza una orden SPOOL para almacenar los datos de impresión temporalmente, y para acceder a ellos mientras esté disponible la orden de spool. Se puede acceder a un documento directamente, ya que el sistema asigna automáticamente un número de 10 dígitos que lo identifica.

Al diferenciar entre la petición de salida y orden de spool, el sistema proporciona un medio para almacenar los datos temporalmente, y gestionar su salida de forma independiente. Para administrar las salidas de datos, tanto órdenes de spool como órdenes de salida, usaremos la transacción SP01.

 

La sentencia NEW-PAGE PRINT permite generar un trabajo de impresión, creandose una nueva orden de spool, y usando la petición de salida configurada previamente mediante la estructura PRI_PARAMS.

DATA: print_parameters TYPE pri_params.

DATA: valid_flag TYPE LENGTH 1.
DATAvl_cadena  TYPE syplist,
      vl_num(2).

* Asignamos los parametros de impresión
  CALL FUNCTION 'GET_PRINT_PARAMETERS'
    EXPORTING
      expiration     '1'                " borrado en un día
      immediately    space              " no imprimir de forma inmediata
      in_parameters  print_parameters   " datos por defecto
      new_list_id    'X'                " asigna un nuevo identificador de spool
      no_dialog      'X'                " sin popup de impresión
    IMPORTING
      out_parameters print_parameters
      valid          valid_flag
    EXCEPTIONS
      OTHERS         4.

  CLEAR vl_cadena.
  MOVE p_cont TO vl_num.
  CONCATENATE 'SPOOL_' vl_num INTO vl_cadena.

* Cero impresiones con nombre SPOOL_01, ... (Ver en trans. SP01)
  print_parameters-prcop 0.
  print_parameters-plist vl_cadena.

 

Esto nos permitirá almacenar la orden de spool temporalmente, sin que salga por ningún dispositivo, ni genere un error de impresión.

 * Generamos la spool del ALV sin imprimirla
  NEW-PAGE PRINT ON PARAMETERS print_parameters NO DIALOG.
  gr_table->display).
  NEW-PAGE PRINT OFF.

* Almacenamos los datos de la spool generada
  MOVE sy-spono             TO wa_spools-id.
  MOVE it_intervalos-inicio TO wa_spools-begda.
  MOVE it_intervalos-fin    TO wa_spools-endda.
  APPEND wa_spools TO it_spools.


Si no indicamos en el campo print_parameters-prcop, que no deseamos ninguna impresión, al hacer la llamada a la sentencia NEW-PAGE PRINT ON, o NEW-PAGE PRINT ON NO DIALOG, tomará los parámetros de impresión por defecto, y se realizará una petición de salida automática.

En cambio, si le indicamos que no queremos ninguna copia se almacenará solamente la orden de spool, y podremos rescatar los datos almacenados a través de la función RSPO_DISPLAY_SPOOLJOB.

 

 Ejemplo de la utilidad de este artículo: Ejemplo Práctico

 

En caso de que estemos trabajando con SMARTFORMS, también podremos generar órdenes de spool en lugar de visualizaciones por pantalla, y podremos evitar su impresión, de modo que almacenaremos distintos lanzamientos de documentos, y posteriormente gestionaremos su salida por impresora u otro dispositivo. Para ello deberemos parametrizar los siguientes atributos de salida y control:

 

 DATAoutput_options TYPE ssfcompop,
      control_options TYPE ssfctrlop.

DATAfuncion TYPE rs38l_fnam.

* Parámetros para lanzar el smartform generando una spool               
control_options-no_dialog 'X'.      " Quitar ventana de diálogo
output_options-tdnewid  'X'.      " Crear nueva spool
output_options-tdimmed   ' '.      " Salida inmediata
output_options-tddest    'LOCL'.   " Impresora destino

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
  EXPORTING
    formname    'ZSMARTFORM_NOMBRE'
    variant     ' '
  IMPORTING
    fm_name     funcion.

CALL FUNCTION funcion
  EXPORTING
    control_parameters         control_options
    output_options             output_options
    user_settings              ' '
* IMPORTING
*   DOCUMENT_OUTPUT_INFO       =
*   JOB_OUTPUT_INFO            =
*   JOB_OUTPUT_OPTIONS         =
  TABLES
    tdatos                     it_datos.

 

Posteriormente se puede enviar a impresión cualquier spool almacenada en el sistema, mediante la función RSPO_OUTPUT_SPOOL_REQUEST.

 

Visto 485886 veces Modificado por última vez en Lunes, 19 Octubre 2015 15:08

38714 comentarios

  • Enlace al Comentario Get A Loan Jueves, 19 Octubre 2017 08:39 publicado por Get A Loan

    Clicking Here payday loan online payday loans payday loans online direct lenders only

  • Enlace al Comentario Essay Help Jueves, 19 Octubre 2017 07:16 publicado por Essay Help

    cheap custom essay writing service assignment of contracts school assignments essays writing services

  • Enlace al Comentario Melsnex Jueves, 19 Octubre 2017 06:30 publicado por Melsnex

    cheap substitutes for cialis

    cialis online

    generic cialis

    just try! dose cialis

  • Enlace al Comentario Jorgegus Jueves, 19 Octubre 2017 05:38 publicado por Jorgegus

    what shape is a viagra pill
    cheap viagra
    cuanto sale el viagra en chile
    viagra online
    viagra buy no prescription canada

  • Enlace al Comentario Gawlisovalalierty Jueves, 19 Octubre 2017 05:02 publicado por Gawlisovalalierty

    cialis confezione da 4
    http://cialisloq.com - generic cialis overnight
    prix cialis 20mg boite de 4
    cialis online
    where to buy cialis bangkok
    cialis online
    where can you get cialis over the counter

  • Enlace al Comentario Melsnex Jueves, 19 Octubre 2017 04:10 publicado por Melsnex

    cialis daily cost new zealand

    buy cialis

    cialis cheap

    cialis directions

  • Enlace al Comentario JamesFaiva Jueves, 19 Octubre 2017 03:59 publicado por JamesFaiva

    write an argumentative essay buying essays essay writing services reviews https://essaywritingservice.us.com - essays writing

  • Enlace al Comentario JamesFaiva Jueves, 19 Octubre 2017 03:31 publicado por JamesFaiva

    view site Going Here sex chat room https://freesexchat.us.com - sex chat

  • Enlace al Comentario flUire Jueves, 19 Octubre 2017 03:05 publicado por flUire

    http://viagragkrx.com
    viagra north carolina
    buy viagra online
    viagra i sverige
    generic viagra

  • Enlace al Comentario JamesFaiva Jueves, 19 Octubre 2017 02:59 publicado por JamesFaiva

    EssayWritingService cheap essay writing service uk scholarship essay writing service https://essaywritingservice.us.com - essay writing service

Deja un comentario

Asegúrate de llenar la información requerida marcada con (*). No está permitido el código HTML. Tu dirección de correo NO será publicada.