Conversion de Orden de Spool

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • amam2605
    Senior Member
    • ene
    • 150

    #1

    Conversion de Orden de Spool

    Hola a Todos !!! Estoy presentando un detalle al convertir una orden de spool a pdf y su posterior envio, se generan 5 ordenes y justo la primera que se genera cuando llega al correo y le doy abrir me dice que no tiene informacion y da error, que podria revisar?
    FORM f_get_spool_covert_pdf.

    SELECT rqclient rqo1name INTO (vg_client, vg_name)
    FROM tsp01
    WHERE rqident = I_TSP01-RQIDENT.


    CALL FUNCTION 'RSTS_GET_ATTRIBUTES'
    EXPORTING
    authority = 'SP01'
    client = vg_client
    name = vg_name
    part = 1
    IMPORTING
    * CHARCO =
    * CREATER =
    * CREDATE =
    * DELDATE =
    * MAX_CREDATE =
    * MAX_DELDATE =
    * NON_UNIQ =
    * NOOF_PARTS =
    * RECTYP =
    * SIZE =
    * STOTYP =
    type = vg_tipo
    objtype = vg_tipo_obejto
    EXCEPTIONS
    fb_error = 1
    fb_rsts_other = 2
    no_object = 3
    no_permission = 4.

    * Convierto el spool en pdf, desde una tabla de sap
    CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
    EXPORTING
    src_spoolid = I_TSP01-RQIDENT
    no_dialog = ' '
    * DST_DEVICE = 'LOCL'
    * PDF_DESTINATION =
    IMPORTING
    pdf_bytecount = vg_numbytes_pdf
    pdf_spoolid = vg_pdf_spool_id
    * LIST_PAGECOUNT =
    btc_jobname = vg_job_name
    btc_jobcount = vg_job_id
    TABLES
    pdf = t_pdf
    EXCEPTIONS
    err_no_abap_spooljob = 1
    err_no_spooljob = 2
    err_no_permission = 3
    err_conv_not_possible = 4
    err_bad_destdevice = 5
    user_cancelled = 6
    err_spoolerror = 7
    err_temseerror = 8
    err_btcjob_open_failed = 9
    err_btcjob_submit_failed = 10
    err_btcjob_close_failed = 11.


    Muchas Gracias de antemano

    AMAM
  • Octaviano
    Junior Member
    • mar
    • 18

    #2
    Hola amam2605,
    Intenta agregar lo siguiente al final del código que mostraste:

    **//.. Variable obtenida CALL FUNCTION 'RSTS_GET_ATTRIBUTES'
    IF vg_tipo_obejto(3) = 'OTF'. " Si es OTF
    lt_pdf_aux[] = t_pdf[].

    **//.. convierte a XSTRING el PDF Obtenido
    CLEAR vl_pdf.
    CLEAR lw_pdf_aux.
    LOOP AT lt_pdf_aux INTO lw_pdf_aux.
    ASSIGN lw_pdf_aux-char TO <f_src> TYPE 'X'.
    CONCATENATE vl_pdf <f_src> INTO vl_pdf IN BYTE MODE.
    ENDLOOP.
    ELSE. " Si no es OTF
    lt_pdf_aux[] = t_pdf[].

    **//.. convierte a XSTRING
    CALL FUNCTION 'SCMS_TEXT_TO_XSTRING'
    IMPORTING
    buffer = vl_pdf
    TABLES
    text_tab = lt_pdf_aux
    EXCEPTIONS
    failed = 1
    OTHERS = 2.
    IF sy-subrc NE 0.
    CLEAR pdf.
    ENDIF.
    ENDIF.

    Lo que esta en la variable vl_pdf es lo que debes enviar por correo.

    **//.. Donde
    TYPES: BEGIN OF ty_linea,
    char TYPE char134,
    END OF ty_linea.

    DATA: vl_pdf TYPE XSTRING,
    lt_pdf_aux TYPE TABLE OF ty_linea.

    FIELD-SYMBOLS: <f_src>.

    Espero sea de ayuda.
    Editado por última vez por Octaviano; 29/09/2014, 17:53:46.

    Comentario

    Trabajando...