The following figure shows selected tables, authorization objects and utility programs that are used in background processing:

Tables in Background Processing
Table TBTCO is often called the batch main table. Each batch job has exactly one entry in this table.
Job steps data are stored in table TBTCP. There is a 1:n relationship between TBTCO and TBTCP. TBTCP contains one entry for each job step.
Table TBTCS contains information of all time based jobs (job, with start condition Date / Time), which have not started yet (job, with start condition Date / Time). There is one entry for each such job. The time based scheduler, which is a part of the batch runtime system, select jobs from this table in small periods of time and start it.
Similar to TBTCS table, table BTCEVTJOBS contains information of each event based job, which is still "waiting" for its event to start.
Table TBTCCNTXT is used for storing the application specific return code of a job and the parent child information of jobs.
Certain activities of the batch runtime system are recorded in table BTCCTL .For example: the time stamp of the last execution of the time scheduler and event scheduler.
The table BTCOPTIONS finally can be considered as a configuration table.
Authorization Objects in Background Processing
A user with BTCADMIN = Y for authorization object S_BTCH_ADM can
Access background jobs in all clients of an SAP system. In the job overview, the system displays all background jobs throughout the system.
Note
Without this authorization, users can only work on background jobs in the clients in which they are logged on.
- Perform all functions on background jobs.
- Execute external programs in job steps.
Other values for BTCADMIN for this authorization object may for example allow to copy other users' jobs or create periodic jobs.
The authorization object S_BTCH_JOB consists of the authorization fields JOBACTION and JOBGROUP. JOBGROUP must always have the value *. For JOBACTION, you can assign the values: PLAN (copy or repeat other users' jobs), DELE (delete other users' background jobs.), RELE (release jobs (including your own)), SHOW (display definitions of other users' jobs), and MODI (modify other users' jobs.).
Note
A user without any specific authorization for jobs may perform the following actions:
- Schedule jobs for which the job class is C and cannot be changed.
- View and change steps of his or her own jobs.
- Delete his or her own jobs.
- View the job details of his or her own jobs.
Authorization object S_BTCH_NAM (with authorization field BTCUNAME – user name that a user can specify as an authorized user) determines the authorized users, which users can choose from when scheduling a background job.
Note
A user can always enter himself or herself as an authorized user when scheduling a job. Thus, an authorization for this object is only required if your users need to use other users as authorized users. This could be the case, for example, if a user requires special authorizations for background jobs.
With authorization object S_BTCH_NA1, an enhancement is available that also checks the program to schedule as well as the user (additional authorization field PROGNAME for the name of the program they want to run in the background).
Hint
Programs can be scheduled without a start authorization check as a job step if they are not assigned to an authorization group. SAP Note 1946079 introduced the supplementary authorization check of the authorization object S_PROGNAM for the dialog-based generic program start. SAP Note 2272827 – Check of S_PROGNAM for scheduling of job step enables the additional authorization check if job steps are scheduled using transaction SM36
or the job API, too.
Finally, authorization object S_LOG_COM (with authorization fields COMMAND for the name of the external commands, OPSYSTEM for the type of operation system on the target host) and HOST (for the hostname of the target host) needs to be assigned to users who want to create job steps with external commands in background processing. For more information, see SAP Note 854060 – Authorizations for external commands.
Note
For the execution of external programs, you need system administrator authorization (authorization object S_RZL_ADM), see SAP Note 859104 – Authorizations for external programs.
Selected Utility Programs
A number of utility programs already exist for certain tasks within background processing. SAP Note 997328 – Utility programs for background processing lists some of them together with specific SAP Notes for each of the programs. These programs have been extended over time. For example, SAP Note 1439806 – Listing jobs according to their frequency ships report BTCAUX14 which (among others) list how often a particular job runs in a certain time period.
In the same way, SAP Note 1180215 – Test programs for the XBP interface also contains a list of programs including a link to additional SAP Notes.