Skip to Content
author's profile photo Former Member
Former Member

Back ground processing in Reports

I need to prepare a report, it contains Selection Screen. This report has to run in both foreground and in background. There is no option provided in selection

screen to ideentify whether it runs in Foreground or in Background. In report I need to provide logic so that the report has to run in background if it set for background processing.

How to write logic for this. can anybody suggest.

Regards,

Naseer.

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

1 Answer

  • author's profile photo Former Member
    Former Member
    Posted on Dec 03, 2007 at 07:34 AM

    Hi,

    Method 1: in SE38

    type your program name

    choose Program -> Execute -> Background

    Method 2: in SM36

    Create a job with your program name

    it will run in bg

    Check this thread, it will surely help you.

    https://forums.sdn.sap.com/click.jspa?searchID=5273985&messageID=3151612

    Hi

    Method 1: in SE38

    type your program name

    choose Program -> Execute -> Background

    Method 2: in SM36

    Create a job with your program name

    it will run in bg

    We can Run an ABAP Program in Background but only Executable program i.e Report.

    1. Tcode SE38.

    Create the Variant with Required selection criteria.

    2. Tcode SM36

    Create a Background Job

    Create a Step and Assign the Report and Variant.

    Set the Start Condition (Date & Time )

    Save the Job.

    3. Monitor the jOB Status in Tcode SM37

    This is how to do it through code

    data: lv_job_name like tbtco-jobname,

    lv_job_nr like tbtco-jobcount,

    lv_job_released type c,

    lv_job_start_sofort type c,

    lv_print_parameters type pri_params.

    lv_job_name = 'Z_test'. " your background program name

    call function 'JOB_OPEN'

    exporting

    jobname = lv_job_name

    importing

    jobcount = lv_job_nr

    exceptions

    cant_create_job = 1

    invalid_job_data = 2

    jobname_missing = 3

    others = 4.

    if syst-subrc = 0.

    *submit job with all the selection screen params...

    submit (lv_job_name)

    with applfile = applfile

    with p_lines = p_lines

    with rfc_dest = rfcdest

    with p_selmtd = lv_selmtd

    with px_shsim = px_shsim

    with px_sherr = px_sherr

    user syst-uname

    via job lv_job_name number lv_job_nr and return.

    if sy-subrc = 0.

    call function 'JOB_CLOSE'

    exporting

    jobcount = lv_job_nr

    jobname = lv_job_name

    strtimmed = 'X'

    importing

    job_was_released = lv_job_released

    exceptions

    cant_start_immediate = 1

    invalid_startdate = 2

    jobname_missing = 3

    job_close_failed = 4

    job_nosteps = 5

    job_notex = 6

    lock_failed = 7

    others = 8.

    if syst-subrc <> 0.

    message i162(00) with

    'An error occured while closing the background job.'.

    stop.

    endif.

    endif.

    endif.

    skip 1.

    write: / 'Background process', lv_job_name ,

    'called successfully' no-gap.

    write: / 'You can check the job in transaction SM37'.

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.