Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Running reports during certain timeframes only?

EMJ
Explorer
0 Kudos

In our environment, custom reports have been created which, when run, potentially have the ability to bring the system to its knees. I would like to set up some type of authorization that allows the running of reports only at a specific times each day so as not to interfere with our heavy demand times. Is this a possibility, and if so, how do I do this? Is this something that would be built into the report itself, or is this an actual authorization? Thank you.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

Schedule the reports as background job using SM36 tcode and mention the timings and date and block the user access to these reports.

Rakesh

5 REPLIES 5

Former Member
0 Kudos

Hi,

Schedule the reports as background job using SM36 tcode and mention the timings and date and block the user access to these reports.

Rakesh

Former Member
0 Kudos

You should be able to schedule running these reports as background jobs.

Goto - SM36,

Come up with a job name for the report that you want to schedule ( having some job naming convention helps )

and enter it in the Job name field.

Click on Start condition and choose when the options of how and when you want to run your report.

Pay attention to period job check box and you can pick and choose your time frame for running the reports.

finally ..click on Step button and enter your report name in the ABAP program section and just follow the steps.

Former Member
0 Kudos

> Is this something that would be built into the report itself, or is this an actual authorization?

The only actual authorization available for this type of thing is to provide the user only with S_BTCH_JOB authority and not any S_BTCH_ADM. This way, only priority C type jobs will be released by them.

You might want to conside a check upfront in the program to ensure that the report only can run in the background.... system field SY-BATCH can be used for that and possibly also not assign object S_BTCH_JOB authority to them for JOBACTION 'RELE' (i.e. they cannot release the job) and then only release the already scheduled jobs at certain times.

If these reports have to run in the foreground as well, then you can use system field SY-UZEIT in the program and a check table to set the times at which it can be executed.

The possibilities of performance tuning your programs and several others also come to mind

Cheers,

Julius

EMJ
Explorer
0 Kudos

Thank you to all who responded, I will take each into account when coming up with a solution for this issue.

Former Member
0 Kudos

Please also update us with the solution which best suited your requirement. This is informative for others as well, and we might have some comments on the solution as well

Cheers,

Julius