SAP system refresh and client copy with SCC5 and SCCL
System copy vs client copy vs targeted refresh, and which one a request really needs: the SCCL copy profiles, deleting a client with SCC5 safely, why BDLS is the step everyone forgets, and what can be automated today.
"Refresh QAS from production" is one of the most routine requests a Basis team gets, and one of the easiest to get subtly wrong. The phrase covers a range of operations, from full system copy through local or remote client copy to a targeted data refresh, and the right one depends on what the requester actually needs. This post separates them, walks the client-copy mechanics with the real transactions (SCCL, SCC9, SCC5, SCC3, BDLS), and is clear about what can be automated today versus what still takes hands.
Three things people mean by "refresh"
Pin down which one the request is before you touch anything. The effort and the blast radius are wildly different.
| Operation | Tool | Scope | Use when |
|---|---|---|---|
| System copy | DB backup/restore or SWPM | Whole system: every client, full database | QAS must be a faithful mirror of PRD, all clients included |
| Local client copy | SCCL | One client → another client, same system | Only one client's customizing/data needs refreshing |
| Remote client copy | SCC9 (RFC) or SCC8+SCC7 (transport) | One client from another system | Source client lives on a different SID |
| Targeted refresh | Project tooling (TDMS, custom) | A subset of tables, usually scrambled | You need a slice rather than the whole client, which makes it a project rather than a task |
Choosing wrongly is expensive in both directions: a full system copy where a client copy would do wastes a weekend of downtime; a client copy where the requester needed a true mirror leaves them testing against the wrong baseline.
The copy profile decides what comes across
For any client copy the single most important parameter is the copy profile. It decides which categories of data are copied, and it is where "the refresh looks wrong" usually originates.
| Profile | Customizing | Master + transaction data | User master + auth |
|---|---|---|---|
SAP_ALL | yes | yes | yes |
SAP_APPL | yes | yes | no |
SAP_UCUS | yes | no | yes |
SAP_CUST | yes | no | no |
SAP_USER | no | no | yes |
A common QAS refresh uses SAP_ALL for a true copy, then re-applies the QAS-specific user set separately; a "give me PRD customizing without the users" request is SAP_APPL. Get the profile wrong and you either drag production users into a lower system or leave testers unable to log in.
Before the copy: know your clients
Every client-specific operation reads T000. Confirm exactly which clients exist and which you are about to touch. The number of production incidents that start with "wrong client number" is not small.
# The client list (transaction SCC4 is the UI; the table is the truth)
SE16 -> T000 # MANDT, MTEXT, ORT01, CCCATEGORY (P/T/C/D/S), CCCOPYLOCK
# Roles of the reserved clients (never a copy target)
# 000 SAP reference client
# 001 template / reference
# 066 EarlyWatch (legacy; remove if present)Running the copy (SCCL / SCC9)
Never run a real client copy in a dialog work process. It will hit rdisp/max_wprun_time and die halfway. Schedule it in the background with parallel processes, and give the system enough background work processes for the window.
# SCCL: local client copy, run in BACKGROUND with parallel processes
# Source client : e.g. 100 (the client you are copying FROM)
# Target client : the CURRENT logon client (you copy INTO where you are)
# Copy profile : SAP_ALL / SAP_APPL / ...
# Processes : 4–8 parallel (bounded by free background WPs)
# -> "Schedule as Background Job", not "Start Immediately"
# Make sure the background WPs exist for the window (RZ04 operation mode),
# then watch progress and the log:
SCC3 # copy/transport logs: status, table counts, errors
SM37 # the RSCLICOPY* background job(s)
SM50 / SM66 # the parallel copy processes actually runningA remote client copy (SCC9) does the same across systems over an RFC destination, so the network and the RFC/gateway sizing become the constraint. Where a stable RFC is not available, the transport-based route, using client export SCC8 on the source and SCC7 post-import on the target, moves the client as transport files instead.
Deleting the target first: SCC5, carefully
A copy overwrites, but a clean refresh usually deletes the stale target client first. SCC5 removes a client's data permanently. There is no undo and no "oops" recovery short of a restore.
# SCC5: delete client data. Two rules are non-negotiable:
# 1. a CURRENT, VERIFIED backup of the target system exists
# 2. you have triple-checked the client number (it is the current logon client)
# Options:
# - Delete client from T000 as well, or keep the empty client shell
# - Run in BACKGROUND (large clients take hours)
# Guard 000 / 001 against deletion at the policy level, not by memory.SCC5 is the single operation most worth putting behind pre-checks and an explicit, typed confirmation. Every serious client-copy incident I have seen traces back to SCC5 run against the wrong client, in the wrong system, without a fresh backup.
The step everyone forgets: BDLS
A freshly copied client still carries the source system's logical system names in its ALE / RFC / workflow configuration. If you skip the rename, your refreshed QAS client will happily send IDocs, trigger workflows and post to interfaces as though it were production. Convert them before anyone logs in:
# BDLS: convert logical system names in the copied client
# old: e.g. PRDCLNT100 -> new: QASCLNT100
# Run in BACKGROUND; on a large client it rewrites many tables.
# Pre-check the conversion list; run a test run first if unsure.
# Then the post-copy checklist (all client-specific):
SCC3 # confirm the copy finished with no errors
SM59 # repoint RFC destinations away from production
BD54 / SALE # logical systems and ALE model, post-BDLS
SM37 # released batch jobs: reschedule or delete PRD-scheduled ones
SCOT / SO16 # SMTP/output nodes so the copy doesn't email real users
STMS / SE06 # transport routes, if this client participates in TMSWhat can be automated today
Farrenio automates the two client operations above as agent-executed jobs with guided pre-checks. Local client copy (SCCL) runs with a chosen copy profile, process count and background mode, tracked to completion via the same SCC3/SM37 signals. Client deletion (SCC5) runs behind pre-checks, with clients 000/001 protected and a target-client login verified first, then recorded in the audit trail. Both are role-scoped, so only the people who should be able to run a destructive operation can.
A single guided system refresh that orchestrates SCC5 → SCCL → BDLS → post-checks as one operation is on our roadmap rather than shipped today. The building blocks are automated, the end-to-end wrapper is coming, and we would rather you know that now than discover it in a demo. The full picture is on the SAP Basis automation page.
A short checklist
- Confirm which "refresh" this is, whether a system copy, a client copy or a targeted slice, before scoping downtime.
- Read
T000and confirm the exact client numbers; never target 000/001. - Pick the copy profile deliberately (
SAP_ALLvsSAP_APPLvsSAP_USER). It decides who can log in and what data lands. - Run SCCL/SCC9 in the background with parallel processes and enough background WPs for the window.
- Never run
SCC5without a fresh, verified backup and a triple-checked client number. - Run
BDLSbefore anyone logs in. A copied client that still names production logical systems is a hazard rather than a refresh. - Finish the post-copy checklist (
SM59, batch jobs, output nodes). A half-finished refresh is where the time leaks and the surprises live.
The value of automating this is not that a client copy is hard. It is doing it the same way every time, with the same pre-checks, behind role-based access, with a record of who ran what against which system. That is the same reason the rest of the platform exists: operations across the landscape, on the record. To see SCCL and SCC5 run against a sandbox, write to contact@farrenio.com.
Run Farrenio against your own SIDs.
14-day sandbox tenant. No card. Real data.
Read next
All posts
SAP BasisIntroducing Farrenio Cloud Control: your whole SAP estate in one console
A walk through the platform: what it watches across ABAP, HANA, the instance and the host layer, how the collector connects outbound-only over HTTPS, the path from alert to SLA evidence, the automation it runs, the 92-permission access model, and what it does not do.
SAP BasisSAP transport management: STMS, transport routes, and a clean import strategy
How the SAP transport system really works: the transport domain and STMS, Workbench vs Customizing requests, consolidation and delivery routes, import strategy and return codes, SCC1 and CTS+, and the mistakes that break production.
SAP BasisSAP kernel patching: a practical guide
What a SAP kernel patch involves, how a rolling kernel switch keeps downtime low, how to validate it, and why tracking kernel, patch and DBSL levels across the landscape matters more than any single patch.