SM36 spool list problem

Hi all,
I scheduled a report to run in the background and it is working and generating a list in the spool. The thing is i am able to see all the records but all the columns are not being displayed. The list generated when running it in the foreground is coming perfectly correct but the problem comes only when we run it in the background.
<b>Can anyone tell me how to increase the width of the list (in spool).</b>
Urgent requirement
Regards
satish

Hi,
Thank you. Can you please tell me in detail all the steps how to change the width.
'X_65_255" steps to do this and
'SPAD' steps to do this
Thank you once again
Regards
Satish

Similar Messages

  • Spool list recipient in SM36

    Hi All,
    I am using the FM's JOB_OPEN, JOB_SUBMIT and JOB_CLOSE in a report program to create batch jobs.
    Now some of the batch jobs have DL's  to which spools of the batch jobs are sent and are maintained in 'SPOOL LIST RECIPIENT' button of SM36.
    In the report which uses the above FM's to create batch job, is it possible to include this functionality.
    That is when a batch job is created from my report program, the spool list recipient should have the DL provided in my report program.

    Hi Arun,
    Refer This Link
    http://help.sap.com/saphelp_bw21c/helpdata/en/c4/3a7f87505211d189550000e829fbbd/content.htm
    Thanks.

  • Send spool list ceated by Job (SM36) as pdf-file via email

    We are running the report RM06EFLB (Transaktion ME84 - "Create Releases") in the background.
    The Job is creating a spool list with 17 pages.
    I want to send this 17 pages (in a readable form) to a number of persons.
    This did I try so far:
    - Distribution list with Recipient type "via Internet" as Spool list recipients in the Job. (Tried different formats for ABAP List in Transaction SCOT)
    => Email is send to recipients, attachment is readable depending on format.
         Problem: attachment is not complete, it contains only about 15 pages (985 rows).
    - Distribution list with Recipient type "Internal User - SAP-Office" as Spool list recipients in the Job.
    => Document is sent to Business Workplace
         Problem:  attachment is not complete, it contains only about 15 pages
    Any ideas how to get the complete spool list?
    Is there mayby a report around  that is sending a spool list as pdf-file via email to a number of recipients?
    (Would like to maintain this Report as an additional step in the job. The spool-number should be selected from the previous step.)
    Thank you for your help.
    Jens

    Oh sorry - here is the coding which is used in that program:
    First use function module  'CONVERT_ABAPSPOOLJOB_2_PDF' to convert the spool entry into pdf.
    Loop at output table PDF and concatenate all lines into a string. Convert string to xstring.
    Then call mail class:
    DATA: lv_pdf_x TYPE xstring,
            lv_subject TYPE string,
            lv_doc_desc TYPE so_obj_des,
            lv_mail_body TYPE soli_tab.
      DATA: ls_atta TYPE rcf_s_att4mail_hex,
            lt_atta TYPE rcf_t_att4mail_hex.
    * -- Fill parameter
      lv_subject = 'Requested Report'."#EC NOTEXT
      lv_doc_desc = 'Report XXL'."#EC NOTEXT
    *  lv_mail_body = ?
      ls_atta-name = lv_doc_desc.
      ls_atta-extension = 'PDF'.
      ls_atta-content = p_pdf_x. <- This is your xstring
      APPEND ls_atta TO lt_atta.
      TRY.
          CALL METHOD cl_hrrcf_services_mail=>send_web_mail
            EXPORTING
              p_subject              = lv_subject
              p_receiver             = p_receiver->email_address
              pt_atta_hex            = lt_atta
              p_sender               = p_sender->email_address
              p_body_c               = lv_mail_body.
        CATCH cx_hrrcf.
      ENDTRY.
    I hope that you have the above mentioned class in your system but it should work with other email functions as well.
    Regards
    Nicola

  • Problems downloading spool lists to spreadsheet format

    Hi,
    When downloading spool lists to spreadsheet format, individual columns
    are not separated like lists created online.
    How can we solve this problem?
    (Notes 118692 and 650491 don't give any solution)
    Thanks in advance.
    Eduard

    Your subject header says you own CS5 but your message says CS5.5 so I assume you really want CS5.5.
    Download CS5.5 from http://prodesigntools.com/adobe-cs5-5-direct-download-links.html
    Follow the Very Important Instructions on that page first BEFORE you click the download links.
    Install then enter your serial number to license it.

  • Email multiple spools from background job - SM36 using Spool List recipient

    I create a background job using Spool List Recipient to email me the reports. The program that I scheduled to run creates 2 spools. When the spools are sent via email, only the last spool is sent.
    Please advise on how I can get the 2 spools sent via email.

    i would not use the Spool List recipient from Job and use the function RSPO_SPOOLJOB_TO_OFFICE in your Program instead.
    tell me if it helps.
    Regards,
    Laurent

  • How to set multiple receivers in the spool list receipent in SM36 ?

    We want that the result of a background job can be sent to multiple users. The user email address will be the external address such as, zt330300-163.com, zt330300-tom.com?
    Can you help me ? th

    Hi,
    This can be achieved through creating distribution list and assign the distribution list in the spool list recipient.
    Regards,
    Prasana.

  • Spool list receipient in SM36

    Hi,
    I run a report in background that has 220 pages list output.The same is sent to SBWP after I maintain spool list receipient parameters.But when I open the attachment in inbox I can see only 25 pages attachment displaying, of size 17K.Are there any settings that restrict the size or any way to see 220 pages full.
    Thanks,

    Refer to OSS Note 329537(Spool cut off at 1000 lines when sent to recipient) - The resolution is based on the version of SAP you are on. I had the same issue when I sent a large log file via email to a user and the log was truncated.
              Regards,
                  Mike

  • Problem when we dowload spool list into excel.

    Hello Gurus,
    I have developed an custom report, The output contains 15 columns. When i run the report in foreground the output will be displayed in correct format also when i download the report list into excel(List->Save/Send->File) then the records will be downloaded in proper format(Each record under respective column heading).
    But when the report is scheduled in background the spool list(SP01) is displayed in the proper format. But when I download this into excel(SppolRequest->Forward->SaveToLocal) . The excel data will be in improper format and all record value are not under respective column heading.
    Can anyone advice me.
    Thanks and regards,
    Vinod

    Hi,
      Use the FM 'EXCEL_OLE_STANDARD_DAT'.
    In this FM populate the tables parameter 'fieldnames' to get each cloumn below the heading correctly.

  • Send mail to spool list recipient from dynamically generated job

    Hi Friends,
    We are running the SAP payment run daily in background mode using the transaction F110S (program SAPF110S). We have scheduled the program SAPF110S to run in SM36 and have specified an email address there as Spool List Recipient.
    The problem is that SAPF110S itself will dynamically create two new jobs: a job for the Proposal Run and a 2nd job for the Payment Run of F110.  The name the system assigns to these jobs are generated at job release/start time in the format F110_CompanyCode_yyyymmdd - X (for the proposal step) and  F110_CompanyCode_yyyymmdd (for the payment step).
    The proposal and payment steps can create spool output. We want to have that mailed automatically by the system to a spool list recipient.
    The problem is that these proposal and payment job steps which are created do not get a spool list recipient assigned, it is empty in SM37.
    Is there any way to ensure that the spool list recipient which is populated in the calling job in SM36 gets transferred to the dynamically created proposal and payment steps jobs?
    Thanks for your advice.
    regards
    Mike

    Hi,
    At the moment sending custom e-mails from front-end via forms is not a feature on our road-map.
    What information do you want to include in the respective form, what are the fields supposed to be present in the form? You still have the auto-responder and the custom message in the workflow that could hopefully assist.
    Kind Regards,
    Alex

  • Spool list not available from SM37

    Hi All,
    We have scheduled a job and running successfully.
    But spool list not displayed from SM37, whereas spool request generated in SP01 at the same time when the job is completed.
    We've checked with the developer and they dint find anything wrong from program end.
    Kindly suggest what is going wrong here.
    Thanks in advance......

    Hi,
    Apply the following SAP notes to resolve this problem:
    1372936 - Spool lists no longer displayed from SM37 after SP
    1174127 - Job refers to incorrect spool request
    regards,
    Aidan

  • Spool List more than 99 pages to PDF File to Mail

    Hi All,
    I want to convert a big spool list (342 Pages) to PDF file to send it by e-mail.
    I use the following code to convert my spool to PDF file:
    Convert to PDF file*
      CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
        EXPORTING
          src_spoolid              = w_spool_id
          no_dialog                = 'X'
          dst_device               = c_device
        IMPORTING
          pdf_bytecount            = gd_bytecount
        TABLES
          pdf                      = it_pdf_output
        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
          OTHERS                   = 12.
      CHECK sy-subrc = 0.
    Transfer the 132-long strings to 255-long strings*
      LOOP AT it_pdf_output.
        TRANSLATE   it_pdf_output           USING ' ~'.
        CONCATENATE gd_buffer it_pdf_output INTO gd_buffer.
      ENDLOOP.
      TRANSLATE gd_buffer USING '~ '.
      DO.
        it_mess_att = gd_buffer.
        APPEND it_mess_att.
        SHIFT  gd_buffer LEFT BY 255 PLACES.
        IF gd_buffer IS INITIAL.
          EXIT.
        ENDIF.
      ENDDO.
    The problem with the FM 'CONVERT_ABAPSPOOLJOB_2_PDF' is when my spool have more than 99 pages. In this case, the FM generate a backscreen job (sm37) to convert my spool and generate a binary PDF spool.
    After this step, the 'FM SO_DOCUMENT_SEND_API1' send an e-mail with the binary PDF File recovered in the spool list but i can't open the file with Adobe Reader because the format is wrong.
    Someone knows how could i convert my big spool list to PDF file to send it by e-mail adress ?
    Thanks a lot for your precious help that i need so much !

    Generate big spool list
    REPORT  ZGEN_SPOOL.
    tYPE-POOLS: slis.
    TYPES: BEGIN OF str_mara,
    matnr TYPE mara-matnr,
    ersda TYPE mara-ersda,
    ernam TYPE mara-ernam,
    laeda TYPE mara-laeda,
    aenam TYPE mara-aenam,
    vpsta TYPE mara-vpsta,
    END OF str_mara.
    DATA: i_mat TYPE TABLE OF str_mara,
    wa_mat LIKE LINE OF i_mat.
    DATA:params LIKE pri_params.
    DATA: days(1) TYPE n VALUE 2,
    valid TYPE c.
    DATA: obj TYPE REF TO cl_salv_table.
    SELECT matnr
    ersda
    ernam
    laeda
    aenam
    vpsta
    UP TO 4999 ROWS
    FROM mara INTO CORRESPONDING FIELDS OF TABLE i_mat.
    TRY.
    CALL METHOD cl_salv_table=>factory
    IMPORTING
    r_salv_table = obj
    CHANGING
    t_table = i_mat.
    CATCH cx_salv_msg .
    ENDTRY.
    CALL FUNCTION 'GET_PRINT_PARAMETERS'
    EXPORTING
    * destination = 'QAS'
    list_name = 'ZTEST_VERTEX'
    list_text = 'TEST'
    no_dialog = 'X'
    immediately = ' '
    expiration = days
    IMPORTING
    * OUT_ARCHIVE_PARAMETERS =
    out_parameters = params
    valid = valid
    * VALID_FOR_SPOOL_CREATION =
    EXCEPTIONS
    archive_info_not_found = 1
    invalid_print_params = 2
    invalid_archive_params = 3
    OTHERS = 4
    IF sy-subrc ne 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    TRY .
    NEW-PAGE PRINT ON PARAMETERS params NO DIALOG.
    CATCH cx_sy_nested_print_on .
    ENDTRY.
    CALL METHOD obj->display.
    NEW-PAGE PRINT OFF.

  • Spool List output display 255 char when the rpt is run in Background

    Hi Friends,
    I tried executing a program in Background.. The report output has more than 64 columns ( more than 255 char ) ..
    Iam using "REUSE_ALV_GRID_DISPLAY" for displaying the list.
    My Problem:
    1. The spool list is truncated after 255 characters when i run in background.
    2. Th output in Spool List is coming in 2 rows ... not very clear ... becoz of that the grid lines are not getting displayed.
    3. I ve not used any Standard - line size for dislaying ..
    4. In foreground i am able to display all the 64 columns... Y not in Background......
    5. My Printer setting is ..X_255 .... only ...
    Requirement:
    1. What should i do to increase the spool list display to more than 255 characters
    2. Or how to save the background run reports output to an excel sheet as how we 'll take the from the foreground.
    Expecting your answers,
    Thanks in Advance...
    Cheers,
    R.Kripa .........
    Enjoy ABAPing ..........
    new upcoming Abaper ....

    Hello Kripa,
    You need to perform two actions.
    1. set an appropriate format for the printer you are using. As explained from the previous messages you go to: SPAD -> output devives (type the printer you are using) -> from the menu ..-> goto -> device type -> formats. In there create a new format like Z_65_650
    or Z_65_xxxx where xxxx could be up to 1065. This is the length of your report.
    When you give your report in background, do not forget to choose the new format you created.
    2. After the spool request is created, you take its number and use it ar a parameter in the following report.
    Please copy and paste it in a new program, maybe called ZRSPOSHOWSPOOLLIST.
    It should work then.
    roxani
    Display spool list > 255 columns
    This is a SAP utility report to allow display of
    spool request lists with line size more than 255 characters in
    releases 4.6B and 4.6C (4.6D kernel must be used)
    REPORT ZRSPOSHOWLIST LINE-SIZE 80.
    PARAMETERS: RQIDENT LIKE TSP01-RQIDENT,
    FIRSTL TYPE I DEFAULT 0,
    LASTL TYPE I DEFAULT 0.
    global data from LSPOXTOP
    DATA: RC(10) TYPE C,
    ERRMSG(100) TYPE C,
    STATUS LIKE SY-SUBRC,
    DSN_TYPE(8) TYPE C.
    DATA: BEGIN OF DATA_SET_LINE,
    DATA_LENGTH(5),
    PRECOL(1),
    DATA_LINE(1000),
    DATA_LINE(5000), "MODAB
    END OF DATA_SET_LINE,
    DATA_SET_LENGTH(5) TYPE C.
    TABLES: TSP01, TST05, TSPOPTIONS.
    DATA: TEMSE_NAME LIKE TST01-DNAME,
    TEMSE_CLIENT LIKE TST01-DCLIENT,
    TEMSE_HANDLE LIKE RSTSTYPE-HANDLE,
    TEMSE_PART LIKE TST01-DPART,
    TEMSE_OBJTYP LIKE TST01-DTYPE,
    TEMSE_RECTYP LIKE RSTSTYPE-RECTYP,
    TEMSE_CHARCO LIKE TST01-DCHARCOD.
    DATA: IS_OTF.
    global data from LSPOCTOP
    DATA: BEGIN OF SPOC
    , escape
    , prtctrl
    , FIRST_BYTES(4) " collection of the first bytes of the
    " escape sequences, which I am searching for.
    , PRTCTRL_START_LENGTH TYPE I
    , PRTCTRL_TOTAL_LENGTH TYPE I
    , PRTCTRL_START(10)
    , SYMBOL_LOW_START(10)
    , SYMBOL_HGH_START(10)
    , SYMBOL_START_LENGTH TYPE I
    , ICON_START(10)
    , ICON_START_LENGTH TYPE I
    , ICON_SEL TYPE I VALUE 1
    , FRAME_START(10)
    , FRAME_START_LENGTH TYPE I
    , END OF SPOC.
    FIELD-SYMBOLS: <SPOC_PRTCTRL> TYPE C
    , <SPOC_FRAME> TYPE C
    , <SPOC_ICON> TYPE C
    , <SPOC_SYMBOL_LOW> TYPE C
    , <SPOC_SYMBOL_HGH> TYPE C
    copied from RSPO_DISPLAY_ABAP_SPOOLJOB
    DATA: BUFFER LIKE DATA_SET_LINE OCCURS 1000.
    TABLES: TSP02L.
    SELECT SINGLE * FROM TSP01 WHERE RQIDENT = RQIDENT.
    IF SY-SUBRC <> 0.
    WRITE: / 'Spool request does not exist:'(001), RQIDENT.
    EXIT.
    ENDIF.
    CALL FUNCTION 'RSPO_CHECK_JOB_PERMISSION'
    EXPORTING
    ACCESS = 'DISP'
    SPOOLREQ = TSP01
    EXCEPTIONS
    NO_PERMISSION = 1
    OTHERS = 2.
    IF SY-SUBRC <> 0.
    WRITE: / 'No authorization to display'(002).
    EXIT.
    ENDIF.
    PERFORM READ_DATA TABLES BUFFER
    USING TSP01 FIRSTL LASTL.
    IF SY-SUBRC <> 0.
    WRITE: / 'Error reading spoolo request'(003).
    EXIT.
    ENDIF.
    IF IS_OTF = 'X'.
    WRITE: / 'This spool request is not an ABAP list'(004).
    EXIT.
    ENDIF.
    PERFORM DISPLAY_DATA TABLES BUFFER USING TSP01-RQPAPER TSP01-RQIDENT.
    FORM GET_SPOOL_LINE.
    DO.
    IF TEMSE_RECTYP+1(1) = 'Y'.
    CALL 'C_RSTS_READ'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'BUFF' FIELD DATA_SET_LINE
    ID 'BUFFLG' FIELD 1006
    ID 'BUFFLG' FIELD 5006 "MODAB
    ID 'ALLINE' FIELD 'X'
    ID 'BINARY' FIELD ' '
    ID 'SHOWLG' FIELD 'X'
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    STATUS = SY-SUBRC.
    ELSE.
    CALL 'C_RSTS_READ'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'BUFF' FIELD DATA_SET_LINE+1
    ID 'BUFFLG' FIELD 1005
    ID 'BUFFLG' FIELD 5005 "MODAB
    ID 'ALLINE' FIELD 'X'
    ID 'BINARY' FIELD ' '
    ID 'SHOWLG' FIELD 'X'
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    STATUS = SY-SUBRC.
    DATA_SET_LINE(5) = DATA_SET_LINE+1(5).
    DATA_SET_LINE-PRECOL = ' '.
    ADD 1 TO DATA_SET_LINE-DATA_LENGTH.
    ENDIF.
    STATUS = SY-SUBRC.
    IF STATUS <> 6. " EOF, error condition, or got data
    EXIT.
    ENDIF.
    end of this part, try to open next part
    ADD 1 TO TEMSE_PART.
    CALL 'C_RSTS_CLOSE'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    STATUS = SY-SUBRC.
    IF STATUS = 0.
    CALL FUNCTION 'RSTS_GET_ATTRIBUTES'
    EXPORTING
    AUTHORITY = 'SP01'
    CLIENT = TEMSE_CLIENT "hjl
    NAME = TEMSE_NAME
    PART = TEMSE_PART
    IMPORTING
    CHARCO = TEMSE_CHARCO
    CREATER =
    CREDATE =
    DELDATE =
    MAX_CREDATE =
    MAX_DELDATE =
    NON_UNIQ =
    NOOF_PARTS =
    RECTYP = TEMSE_RECTYP
    SIZE =
    STOTYP =
    type =
    OBJTYPE = TEMSE_OBJTYP
    EXCEPTIONS
    FB_ERROR = 1
    FB_RSTS_OTHER = 2
    NO_OBJECT = 3
    NO_PERMISSION = 4
    OTHERS = 5.
    STATUS = SY-SUBRC.
    ENDIF.
    IF STATUS = 0.
    CALL 'C_RSTS_OPEN_READ'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'CLIENT' FIELD TEMSE_CLIENT "hjl
    ID 'NAME' FIELD TEMSE_NAME
    ID 'PART' FIELD TEMSE_PART
    ID 'TYPE' FIELD TEMSE_OBJTYP
    ID 'CONV' FIELD ' '
    ID 'ALLINE' FIELD 'X'
    ID 'BINARY' FIELD ' '
    ID 'RECTYP' FIELD TEMSE_RECTYP
    ID 'CHARCO' FIELD TEMSE_CHARCO
    ID 'PROM' FIELD 'I'
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    STATUS = SY-SUBRC.
    ENDIF.
    ENDDO.
    IF STATUS = 4.
    STATUS = 12. "EOF
    ENDIF.
    IF STATUS = 8.
    STATUS = 40. "Line too long
    ENDIF.
    DATA_SET_LENGTH = DATA_SET_LINE-DATA_LENGTH.
    ENDFORM.
    FORM READ_DATA TABLES BUFFER
    USING TSP01 LIKE TSP01 VALUE(FIRST) TYPE I
    VALUE(LAST) TYPE I.
    DATA: LINES TYPE I.
    REFRESH BUFFER.
    CLEAR IS_OTF.
    TEMSE_CLIENT = TSP01-RQCLIENT.
    TEMSE_NAME = TSP01-RQO1NAME.
    TEMSE_PART = 1.
    CALL FUNCTION 'RSTS_GET_ATTRIBUTES'
    EXPORTING
    AUTHORITY = 'SP01'
    CLIENT = TEMSE_CLIENT
    NAME = TEMSE_NAME
    PART = TEMSE_PART
    IMPORTING
    CHARCO = TEMSE_CHARCO
    CREATER =
    CREDATE =
    DELDATE =
    MAX_CREDATE =
    MAX_DELDATE =
    NON_UNIQ =
    NOOF_PARTS =
    RECTYP = TEMSE_RECTYP
    SIZE =
    STOTYP =
    type =
    OBJTYPE = TEMSE_OBJTYP
    EXCEPTIONS
    FB_ERROR = 1
    FB_RSTS_OTHER = 2
    NO_OBJECT = 3
    NO_PERMISSION = 4
    OTHERS = 5.
    IF SY-SUBRC = 0.
    IF TEMSE_OBJTYP(3) = 'OTF'.
    IS_OTF = 'X'.
    ENDIF.
    ELSE.
    EXIT.
    ENDIF.
    CLEAR TEMSE_HANDLE.
    CALL 'C_RSTS_OPEN_READ'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'CLIENT' FIELD TEMSE_CLIENT "hjl
    ID 'NAME' FIELD TEMSE_NAME
    ID 'PART' FIELD TEMSE_PART
    ID 'TYPE' FIELD TEMSE_OBJTYP
    ID 'CONV' FIELD ' '
    ID 'ALLINE' FIELD 'X'
    ID 'BINARY' FIELD ' '
    ID 'RECTYP' FIELD TEMSE_RECTYP
    ID 'CHARCO' FIELD TEMSE_CHARCO
    ID 'PROM' FIELD 'I'
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    STATUS = SY-SUBRC.
    IF STATUS = 0.
    DO.
    PERFORM GET_SPOOL_LINE.
    IF STATUS <> 0 AND STATUS <> 40 AND STATUS <> 12.
    PERFORM CLOSE_JOB.
    EXIT.
    ENDIF.
    IF STATUS <> 12. " 12 = End
    IF NOT ( DATA_SET_LENGTH IS INITIAL ).
    DATA_SET_LINE-DATA_LENGTH = DATA_SET_LENGTH - 1.
    ENDIF.
    ADD 1 TO LINES.
    IF LINES >= FIRST.
    APPEND DATA_SET_LINE TO BUFFER.
    ENDIF.
    IF ( NOT LAST IS INITIAL ) AND ( LINES >= LAST ).
    EXIT.
    ENDIF.
    ELSE.
    IF LINES = 0.
    PERFORM CLOSE_JOB.
    EXIT.
    ENDIF.
    IF LINES < FIRST .
    PERFORM CLOSE_JOB.
    EXIT.
    ENDIF.
    EXIT.
    ENDIF.
    ENDDO.
    PERFORM CLOSE_JOB.
    ENDIF.
    ENDFORM.
    FORM CLOSE_JOB *
    FORM CLOSE_JOB.
    IF STATUS <> 0 AND STATUS <> 12.
    CALL 'C_RSTS_CLOSE'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    MESSAGE E112(PO) WITH STATUS RC ERRMSG RAISING READ_ERROR.
    ENDIF.
    CALL 'C_RSTS_CLOSE'
    ID 'HANDLE' FIELD TEMSE_HANDLE
    ID 'RC' FIELD RC
    ID 'ERRMSG' FIELD ERRMSG.
    STATUS = SY-SUBRC.
    IF STATUS <> 0.
    MESSAGE E112(PO) WITH STATUS RC ERRMSG RAISING READ_ERROR.
    ENDIF.
    ENDFORM.
    FORM DISPLAY_DATA TABLES BUFFER USING RQPAPER LIKE TSP01-RQPAPER
    RQID LIKE TSP01-RQIDENT.
    DATA: LINE_LENGTH TYPE I, GCOL TYPE I, GLINES TYPE I,
    LINE_LENGTH2 LIKE RSTSTYPE-LINELENGTH,
    V, V2.
    CALL FUNCTION 'RSPO_SPOOLDATA_WRITE_INIT'.
    PERFORM SPOOLDATA_WRITE_INIT. "MODAB
    select single * from tspoptions where spoption = 'REALWIDTH'.
    if sy-subrc = 0.
    V = 'X'.
    endif.
    select single * from tspoptions where spoption = 'REALHEIGHT'.
    if sy-subrc = 0.
    V2 = 'X'.
    endif.
    IF NOT V IS INITIAL OR NOT V2 IS INITIAL.
    GCOL = 0.
    GLINES = 0.
    SELECT SINGLE * FROM TSP02L WHERE PJIDENT = RQID
    AND PJNUMMER = 0.
    IF SY-SUBRC = 0.
    GCOL = TSP02L-COLUMNS.
    GLINES = TSP02L-LINES.
    ELSE.
    CALL FUNCTION 'RSPO_GET_SIZE_OF_LAYOUT'
    EXPORTING
    LAYOUT = RQPAPER
    IMPORTING
    ANSWER =
    COLUMNS = GCOL
    LINES = GLINES
    PFORMAT =
    ENDIF.
    ENDIF.
    IF GCOL < 80 OR V IS INITIAL.
    GCOL = 255.
    ENDIF.
    IF GLINES < 5 OR V2 IS INITIAL.
    GLINES = 0.
    ENDIF.
    IF GCOL >= 1024. "MODAB
    GCOL = 1023.
    ENDIF.
    NEW-PAGE NO-HEADING NO-TITLE LINE-SIZE GCOL
    LINE-COUNT GLINES. " make a wide list
    SET BLANK LINES ON.
    LOOP AT BUFFER.
    DATA_SET_LINE = BUFFER.
    IF DATA_SET_LINE-PRECOL = 'P'.
    IF DATA_SET_LINE(1) = ' '. " Echter Vorschub ?"
    NEW-PAGE.
    ENDIF.
    CONTINUE.
    ENDIF.
    Zeilenlange berechnen, falls unbekannt.
    IF DATA_SET_LINE-DATA_LENGTH IS INITIAL.
    LINE_LENGTH = STRLEN( DATA_SET_LINE-DATA_LINE ).
    ELSE.
    LINE_LENGTH = DATA_SET_LINE-DATA_LENGTH.
    ENDIF.
    IF LINE_LENGTH > 0.
    LINE_LENGTH2 = LINE_LENGTH.
    PERFORM SPOOLDATA_WRITE USING DATA_SET_LINE-DATA_LINE "MODAB
    LINE_LENGTH2
    1.
    ELSE.
    " Leerzeile
    SKIP.
    ENDIF.
    ENDLOOP.
    ENDFORM.
    copied from RSPO_SPOOLDATA_WRITE
    FORM SPOOLDATA_WRITE USING VALUE(SPOOL_DATA)
    VALUE(DATA_LENGTH) LIKE RSTSTYPE-LINELENGTH
    VALUE(START_POS) LIKE SY-COLNO.
    function globals
    DATA: LPOS LIKE SY-COLNO
    , REST_LEN TYPE I
    , AREA_LEN TYPE I
    , NEXT_HOT TYPE I " offset of next special character
    , COLS TYPE I " columns used by special character
    , BYTES TYPE I " bytes used by special character
    , HOT2
    , HOT3
    , HOT4
    , HOT5
    , HOT6
    , HOT7
    , BEGIN OF ESCAPE_TRICK
    , X1(1) TYPE X
    , END OF ESCAPE_TRICK
    , THE_PRTCTRL(5) TYPE C
    Because of a problem within the ABAP listprocessing, I shall
    never output the same icon side by side with the same color
    and without a gap.
    As I don't know the data, I will use two different variables
    alternatively.
    , ICON_ID1 LIKE ICONS-L4
    , ICON_ID2 LIKE ICONS-L4.
    FIELD-SYMBOLS: <LDATA>
    , <PLAIN_TEXT>
    , <PRTCTRL>
    , <HOT_PRTCTRL>
    , <HOT_FRAME>
    , <HOT_ICON>
    , <HOT_SYMBOL>
    IF START_POS < 2.
    write at / ' ' no-gap.
    NEW-LINE.
    LPOS = 1.
    ELSE.
    LPOS = START_POS.
    ENDIF.
    REST_LEN = STRLEN( SPOOL_DATA ).
    DESCRIBE FIELD SPOOL_DATA LENGTH AREA_LEN.
    IF DATA_LENGTH = 0.
    " fine.
    ELSEIF DATA_LENGTH <= AREA_LEN.
    REST_LEN = DATA_LENGTH.
    ELSE.
    WRITE: / 'Fehler beim Decodieren der Listendaten'(005).
    STOP.
    ENDIF.
    CHECK REST_LEN > 0.
    ASSIGN SPOOL_DATA(REST_LEN) TO <LDATA>.
    WHILE <LDATA> CA SPOC-FIRST_BYTES.
    NEXT_HOT = SY-FDPOS.
    IF NEXT_HOT > 0.
    ASSIGN <LDATA>(NEXT_HOT) TO <PLAIN_TEXT>.
    MODAB
    PERFORM WRITE_BIGFIELD USING <PLAIN_TEXT>
    NEXT_HOT
    LPOS.
    WRITE AT LPOS <PLAIN_TEXT> NO-GAP.
    ADD NEXT_HOT TO LPOS.
    SUBTRACT NEXT_HOT FROM REST_LEN.
    ASSIGN <LDATA>+NEXT_HOT(REST_LEN) TO <LDATA>.
    ENDIF.
    IF REST_LEN >= SPOC-PRTCTRL_START_LENGTH.
    ASSIGN <LDATA>(SPOC-PRTCTRL_START_LENGTH) TO <HOT_PRTCTRL>.
    ELSE.
    ASSIGN 'too_short' TO <HOT_PRTCTRL>.
    ENDIF.
    IF REST_LEN >= SPOC-FRAME_START_LENGTH.
    ASSIGN <LDATA>(SPOC-FRAME_START_LENGTH) TO <HOT_FRAME>.
    ELSE.
    ASSIGN 'too_short' TO <HOT_FRAME>.
    ENDIF.
    IF REST_LEN >= SPOC-ICON_START_LENGTH.
    ASSIGN <LDATA>(SPOC-ICON_START_LENGTH) TO <HOT_ICON>.
    ELSE.
    ASSIGN 'too_short' TO <HOT_ICON>.
    ENDIF.
    IF REST_LEN >= SPOC-SYMBOL_START_LENGTH.
    ASSIGN <LDATA>(SPOC-SYMBOL_START_LENGTH) TO <HOT_SYMBOL>.
    ELSE.
    ASSIGN 'too_short' TO <HOT_SYMBOL>.
    ENDIF.
    IF REST_LEN > 1.
    HOT2 = <LDATA>+1(1).
    IF REST_LEN > 2.
    HOT3 = <LDATA>+2(1).
    IF REST_LEN > 3.
    HOT4 = <LDATA>+3(1).
    ELSE.
    HOT4 = '?'.
    ENDIF.
    ELSE.
    HOT3 = '?'.
    ENDIF.
    ELSE.
    HOT2 = '?'.
    ENDIF.
    IF <HOT_FRAME> = <SPOC_FRAME>.
    COLS = 1. " in most cases.
    BYTES = 2. " in most cases.
    CASE HOT2.
    WHEN '0'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '1'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '2'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '3'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '4'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '5'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '6'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '7'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '8'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN '9'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN ':'. WRITE AT LPOS HOT2 AS LINE NO-GAP.
    WHEN ';'. " box_drawings_light_left
    WRITE AT LPOS '4' AS LINE NO-GAP.
    WHEN '<'. " box_drawings_light_up
    WRITE AT LPOS '5' AS LINE NO-GAP.
    WHEN '='. " box_drawings_light_right
    WRITE AT LPOS '4' AS LINE NO-GAP.
    WHEN '>'. " box_drawings_light_down
    WRITE AT LPOS '5' AS LINE NO-GAP.
    WHEN '?'. " drawings_checkbox_off
    WRITE AT LPOS ' ' AS CHECKBOX INPUT OFF NO-GAP.
    WHEN '@'. " drawings_checkbox_on
    WRITE AT LPOS 'X' AS CHECKBOX INPUT OFF NO-GAP.
    WHEN OTHERS.
    BYTES = 0.
    ENDCASE.
    ENDIF.
    IF <HOT_SYMBOL> = <SPOC_SYMBOL_LOW>.
    ESCAPE_TRICK = HOT3.
    SUBTRACT 32 FROM ESCAPE_TRICK-X1.
    IF HOT4 = SPACE.
    WRITE AT LPOS(2) ESCAPE_TRICK AS SYMBOL NO-GAP.
    COLS = 2.
    BYTES = 4.
    ELSE.
    WRITE AT LPOS(1) ESCAPE_TRICK AS SYMBOL NO-GAP.
    BYTES = 3.
    ENDIF.
    ENDIF.
    IF <HOT_SYMBOL> = <SPOC_SYMBOL_HGH>.
    ESCAPE_TRICK = HOT3.
    ADD 32 TO ESCAPE_TRICK-X1.
    IF HOT4 = SPACE.
    WRITE AT LPOS(2) ESCAPE_TRICK AS SYMBOL NO-GAP.
    COLS = 2.
    BYTES = 4.
    ELSE.
    WRITE AT LPOS(1) ESCAPE_TRICK AS SYMBOL NO-GAP.
    BYTES = 3.
    ENDIF.
    ENDIF.
    IF <HOT_ICON> = <SPOC_ICON>.
    IF SPOC-ICON_SEL >< 1.
    SPOC-ICON_SEL = 1.
    ICON_ID1 = '@00@'.
    ICON_ID1+1(1) = HOT3.
    ICON_ID1+2(1) = HOT4.
    ELSE.
    SPOC-ICON_SEL = 2.
    ICON_ID2 = '@00@'.
    ICON_ID2+1(1) = HOT3.
    ICON_ID2+2(1) = HOT4.
    ENDIF.
    IF REST_LEN > 4.
    HOT5 = <LDATA>+4(1).
    IF REST_LEN > 5.
    HOT6 = <LDATA>+5(1).
    IF REST_LEN > 6.
    HOT7 = <LDATA>+6(1).
    ELSE.
    HOT7 = '?'.
    ENDIF.
    ELSE.
    HOT6 = '?'.
    ENDIF.
    ELSE.
    HOT5 = '?'.
    ENDIF.
    IF HOT5 = SPACE.
    IF HOT6 = SPACE.
    IF HOT7 = SPACE.
    IF SPOC-ICON_SEL = 1.
    WRITE AT LPOS(4) ICON_ID1 AS ICON.
    write at lpos icon_id1 as icon no-gap.
    ELSE.
    WRITE AT LPOS(4) ICON_ID2 AS ICON.
    write at lpos icon_id2 as icon no-gap.
    ENDIF.
    COLS = 4.
    BYTES = 7.
    ELSE.
    IF SPOC-ICON_SEL = 1.
    WRITE AT LPOS(3) ICON_ID1 AS ICON.
    write at lpos icon_id1 as icon no-gap.
    ELSE.
    WRITE AT LPOS(3) ICON_ID2 AS ICON.
    write at lpos icon_id2 as icon no-gap.
    ENDIF.
    COLS = 3.
    BYTES = 6.
    ENDIF.
    ELSE.
    IF SPOC-ICON_SEL = 1.
    WRITE AT LPOS(2) ICON_ID1 AS ICON.
    write at lpos icon_id1 as icon no-gap.
    ELSE.
    WRITE AT LPOS(2) ICON_ID2 AS ICON.
    write at lpos icon_id2 as icon no-gap.
    ENDIF.
    COLS = 2.
    BYTES = 5.
    ENDIF.
    ELSE.
    "rite at lpos(1) icon_id as icon.
    WRITE AT LPOS(1) '#' NO-GAP. " Not enough space for any icon.
    COLS = 1.
    BYTES = 4.
    ENDIF.
    ENDIF.
    IF <HOT_PRTCTRL> = <SPOC_PRTCTRL>.
    COLS = 0. " in most cases.
    BYTES = 6. " in most cases.
    IF REST_LEN >= SPOC-PRTCTRL_TOTAL_LENGTH.
    THE_PRTCTRL = <LDATA>+SPOC-PRTCTRL_START_LENGTH(5).
    IF THE_PRTCTRL = 'SABLD'.
    FORMAT INTENSIFIED ON.
    "no 3.0 'SAULN'.
    "no 3.0 FORMAT UNDERSCORED ON.
    ELSEIF THE_PRTCTRL = 'SAOFF'.
    FORMAT INTENSIFIED OFF.
    "no 3.0 FORMAT UNDERSCORED OFF.
    ELSEIF THE_PRTCTRL(3) = 'COL'.
    CASE THE_PRTCTRL+3(1).
    WHEN '0'.
    FORMAT COLOR OFF.
    WHEN '1'.
    FORMAT COLOR 1.
    WHEN '2'.
    FORMAT COLOR 2.
    WHEN '3'.
    FORMAT COLOR 3.
    WHEN '4'.
    FORMAT COLOR 4.
    WHEN '5'.
    FORMAT COLOR 5.
    WHEN '6'.
    FORMAT COLOR 6.
    WHEN '7'.
    FORMAT COLOR 7.
    ENDCASE.
    CASE THE_PRTCTRL+4(1).
    WHEN 'N'.
    FORMAT INTENSIFIED OFF INVERSE OFF.
    WHEN 'H'.
    FORMAT INTENSIFIED ON INVERSE OFF.
    WHEN 'V'.
    FORMAT INTENSIFIED ON INVERSE ON.
    ENDCASE.
    ENDIF. "printcontrol
    ELSE. "??
    ENDIF.
    ENDIF.
    IF BYTES = 0.
    BYTES = 1.
    WRITE AT LPOS(1) '#'.
    COLS = 1.
    ENDIF.
    ADD COLS TO LPOS.
    SUBTRACT BYTES FROM REST_LEN.
    IF REST_LEN > 0.
    ASSIGN <LDATA>+BYTES(REST_LEN) TO <LDATA>.
    ELSE.
    EXIT.
    ENDIF.
    ENDWHILE.
    MODAB
    IF REST_LEN > 0.
    ASSIGN <LDATA>(REST_LEN) TO <PLAIN_TEXT>.
    PERFORM WRITE_BIGFIELD USING <PLAIN_TEXT>
    REST_LEN
    LPOS.
    ENDIF.
    ENDFORM.
    FORM WRITE_BIGFIELD USING VALUE(FIELD) TYPE C
    VALUE(LEN)
    VALUE(POS).
    FIELD-SYMBOLS <P>.
    DATA: CHUNK TYPE I.
    WHILE LEN > 0.
    IF LEN > 255.
    CHUNK = 255.
    ELSE.
    CHUNK = LEN.
    ENDIF.
    WRITE AT POS FIELD(CHUNK) NO-GAP.
    ADD CHUNK TO POS.
    LEN = LEN - CHUNK.
    IF LEN > 0.
    FIELD = FIELD+CHUNK.
    ENDIF.
    ENDWHILE.
    ENDFORM.
    FORM SPOOLDATA_WRITE_INIT.
    DATA: BEGIN OF ESCAPE_TRICK
    , X1(1) TYPE X
    , END OF ESCAPE_TRICK
    FIELD-SYMBOLS: <LDATA>
    , <PLAIN_TEXT>
    , <PRTCTRL>
    ESCAPE_TRICK-X1 = '1C'.
    SPOC-PRTCTRL_START = ESCAPE_TRICK.
    SPOC-PRTCTRL_START_LENGTH = 1.
    SPOC-PRTCTRL_TOTAL_LENGTH = SPOC-PRTCTRL_START_LENGTH + 5.
    ASSIGN SPOC-PRTCTRL_START(SPOC-PRTCTRL_START_LENGTH) TO <SPOC_PRTCTRL>.
    ESCAPE_TRICK-X1 = '1B'.
    SPOC-FRAME_START = ESCAPE_TRICK.
    SPOC-FRAME_START_LENGTH = 1.
    ASSIGN SPOC-FRAME_START(SPOC-FRAME_START_LENGTH) TO <SPOC_FRAME>.
    ESCAPE_TRICK-X1 = '1B'.
    SPOC-ICON_START = ESCAPE_TRICK.
    SPOC-ICON_START+1 = ','.
    SPOC-ICON_START_LENGTH = 2.
    ASSIGN SPOC-ICON_START(SPOC-ICON_START_LENGTH) TO <SPOC_ICON>.
    ESCAPE_TRICK-X1 = '1B'.
    SPOC-SYMBOL_LOW_START = ESCAPE_TRICK.
    SPOC-SYMBOL_LOW_START+1 = '('.
    SPOC-SYMBOL_HGH_START = ESCAPE_TRICK.
    SPOC-SYMBOL_HGH_START+1 = ')'.
    SPOC-SYMBOL_START_LENGTH = 2.
    ASSIGN SPOC-SYMBOL_LOW_START(SPOC-SYMBOL_START_LENGTH)
    TO <SPOC_SYMBOL_LOW>.
    ASSIGN SPOC-SYMBOL_HGH_START(SPOC-SYMBOL_START_LENGTH)
    TO <SPOC_SYMBOL_HGH>.
    SPOC-FIRST_BYTES+0(1) = SPOC-PRTCTRL_START(1).
    SPOC-FIRST_BYTES+1(1) = SPOC-FRAME_START(1).
    SPOC-FIRST_BYTES+2(1) = SPOC-ICON_START(1).
    SPOC-FIRST_BYTES+3(1) = SPOC-SYMBOL_LOW_START(1).
    ENDFORM.

  • Spool list in background

    Hii everybody,
    I am not able to generate the background spool list for this report. When executed in background, the job shows successful execution, but when I see spool status, it shows waiting and the spool has incomplete list. The bottom part of the spool list has all vertical lines... Any guesses what might be the problem? I am able to see the output when report ran in foreground. It is an ALV grid report.
    PLese reply me fast as it is urgent.
    M A

    Hope you have end spool writing with  new-page print off.
    form write_to_spool.
      data : l_params        type pri_params,          "new spool params
               l_destination type pri_params-pdest value 'LOCL'.      "printer name
    *Get the print parameters.
      call function 'GET_PRINT_PARAMETERS'
        EXPORTING
          copies                 = 1
          department             = 'SYSTEM'
          destination            = l_destination
          expiration             = 2
          immediately            = ' '
          layout                 = 'X_65_255'
          line_count             = 65
          line_size              = 255
          list_name              = 'XYZ'
          list_text              = 'ABC'
          mode                   = ' '
          new_list_id            = 'X'
          no_dialog              = 'X'
          receiver               = 'SAP*'
          release                = 'X'
          sap_cover_page         = 'X'
          user                   = sy-uname
        IMPORTING
          out_parameters         = l_params
        EXCEPTIONS
          archive_info_not_found = 1
          invalid_print_params   = 2
          invalid_archive_params = 3
          others                 = 4.
      case sy-subrc.
        when 1.
          raise get_print_info_not_found.
        when 2.
          raise get_print_invalid_prt_params.
        when 3.
          raise get_print_invalid_arch_params.
        when 4.
          raise get_print_others.
      endcase.
    *start spool writing.
      new-page print on parameters l_params no dialog.
      uline.
      skip.
    write  your contents
      uline.
    *end spool writing.
      new-page print off.
    endform.                    " write_to_spool

  • Create job via program with spool list recipient

    It is quite easy to create a job via SM36 and specify a "spool list recipient" to send the resulting spool in attachment to a distribution list.
    I haven't find the way to have this 'spool list recipient' when I create the job via program (JOB_OPEN or BP_JOB_CREATE ...)
    May be a smart abapper could help me ...

    hi,
    check this sample program which will help u.
    *& Report  ZRC_JOB_TEST                                                *&                                                                     *
    REPORT  ZRC_JOB_TEST                            .
    data : jobcount like TBTCJOB-JOBCOUNT ,
           JOB_WAS_RELEASED like BTCH0000-CHAR1 ,
           SDLSTRTDT like TBTCJOB-SDLSTRTDT ,
           SDLSTRTTM like TBTCJOB-SDLSTRTTM .
    data : l_ebeln like ekko-ebeln ,
           l_ebelp like ekpo-ebelp .
    l_ebeln = '0071005915' .
    l_ebelp = '00010' .
    CALL FUNCTION 'JOB_OPEN'
    EXPORTING
      DELANFREP              = ' '
      JOBGROUP               = ' '
       JOBNAME                = 'job1'
      SDLSTRTDT              = NO_DATE
      SDLSTRTTM              = NO_TIME
      JOBCLASS               =
    IMPORTING
       JOBCOUNT               = JOBCOUNT
    CHANGING
      RET                    =
    EXCEPTIONS
       CANT_CREATE_JOB        = 1
       INVALID_JOB_DATA       = 2
       JOBNAME_MISSING        = 3
       OTHERS                 = 4
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ELSE .
      submit ZFI_UPD_PO_DELIV_COMP_BDC
      with   ebeln = l_ebeln
      with   ebelp = l_ebelp
      via job 'job1' number jobcount
      and return .
      if sy-subrc = 0 .
         SDLSTRTDT = sy-datum .
         SDLSTRTTM = sy-uzeit + 600 .
         CALL FUNCTION 'JOB_CLOSE'
           EXPORTING
           AT_OPMODE                         = ' '
           AT_OPMODE_PERIODIC                = ' '
           CALENDAR_ID                       = ' '
           EVENT_ID                          = ' '
           EVENT_PARAM                       = ' '
           EVENT_PERIODIC                    = ' '
             JOBCOUNT                          = JOBCOUNT
             JOBNAME                           = 'job1'
           LASTSTRTDT                        = NO_DATE
           LASTSTRTTM                        = NO_TIME
           PRDDAYS                           = 0
           PRDHOURS                          = 0
           PRDMINS                           = 0
           PRDMONTHS                         = 0
           PRDWEEKS                          = 0
           PREDJOB_CHECKSTAT                 = ' '
           PRED_JOBCOUNT                     = ' '
           PRED_JOBNAME                      = ' '
            SDLSTRTDT                         = SDLSTRTDT
            SDLSTRTTM                         = SDLSTRTTM
           STARTDATE_RESTRICTION             = BTC_PROCESS_ALWAYS
            STRTIMMED                         = 'X'
           TARGETSYSTEM                      = ' '
           START_ON_WORKDAY_NOT_BEFORE       = SY-DATUM
           START_ON_WORKDAY_NR               = 0
           WORKDAY_COUNT_DIRECTION           = 0
           RECIPIENT_OBJ                     =
           TARGETSERVER                      = ' '
           DONT_RELEASE                      = ' '
           TARGETGROUP                       = ' '
           DIRECT_START                      =
           IMPORTING
             JOB_WAS_RELEASED                  = JOB_WAS_RELEASED
         CHANGING
           RET                               =
          EXCEPTIONS
            CANT_START_IMMEDIATE              = 1
            INVALID_STARTDATE                 = 2
            JOBNAME_MISSING                   = 3
            JOB_CLOSE_FAILED                  = 4
            JOB_NOSTEPS                       = 5
            JOB_NOTEX                         = 6
            LOCK_FAILED                       = 7
            INVALID_TARGET                    = 8
            OTHERS                            = 9
         IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
         ENDIF.
      endif .
    ENDIF.

  • Bacth job sending email : spool list recipient field

    Hi,
    When creating a batch job via SM36, it is possible to send the results via email (fill "spool list recipient").
    Is there a table where i can find the batch jobs which have the "spool list recipient" field filled?
    Thanks,
    P.

    Pete,
    In my system, I see only 2 values for this field. 'RECIPIENT' and BLANK. Please check if it the same with you, in case of more than these values, try to build your logic on ( not equal to RECIPIENT rather than non-blank).
    Even if these 2 values only, a job (with the same name) can be executed once with the spool list recipient ON and another without spool recipient. So, be careful in your checking that the record you are checking with the non-blank value of  RECOBJTYPE is the SAME execution as in SM37. Use fields SDLSTRTDT, SDLSTRTTM in table TBTCO for it.
    Hope you get my point.
    Regards,
    Diwakar

Maybe you are looking for