Now accepting guest editorial from SAP, Oracle, Workday and ServiceNow practitioners.Pitch a guide
The Sign-Off Table

Lesson 2 of 5

Clients, client roles and cross-client data

8 min

Listen to this lesson

0:00 / 8:57

Inside one SAP system there can be several clients. SAP describes a client as a self-contained unit in commercial, organizational and technical terms, with its own user master records and its own application and customizing data. When you log on, you type a three-digit client number along with your user and password. The same system can hold a test client and a training client that look completely different, because their data is separate.

System (for example, Contoso QAS)One database, one set of programs and repository objects, one transport target.
Cross-client dataRepository objects (programs, tables, Fiori apps) and cross-client customizing such as factory calendars. Shared by every client.
Client 100 (test)Its own users, master data, documents and client-specific customizing such as pricing procedures.
Client 200 (training)Separate users, master data and documents; the same programs and cross-client settings.
What clients share and what they keep separate.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-102

Client-specific and cross-client

Most data in SAP is client-specific: business partners, products, sales orders, journal entries, users and most customizing. A pricing procedure maintained in client 100 is not automatically visible in client 200. Some data is cross-client: all repository objects (ABAP programs, data dictionary tables, many UI artifacts) and certain customizing tables that apply to the whole system, such as calendars and some technical settings. Change a cross-client object in one client and every client in that system sees the change.

  1. Is the change to a program, enhancement or dictionary object?Yes → repository object: every client in the system sees it · No → go on
  2. Is it cross-client customizing, such as a calendar?Yes → every client in the system sees it · No → go on
  3. Is it client-specific customizing or business data?Yes → only that client has it; other clients need their own transport or copy
Before you trust a result in another client, work out whether the change is shared across the system or local to one client.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-102

That has two consequences for testers. First, because client-specific data is separate, a test that passes in client 100 says nothing about client 200 unless both received the same customizing. Second, because cross-client changes are shared, work in one client can affect tests in another. If a developer changes a program to fix a defect for the training team, your test results in client 100 may change too.

A third consequence is about how clients are created and filled. Basis can copy a client within a system, from another system, or by a client transport, choosing a profile that decides whether to copy customizing only, customizing plus master data, or everything including users. When a new test client appears, ask which profile was used and from which source. A client copied with customizing only will have no business partners or products, and your tests will fail for reasons that have nothing to do with the change you meant to test.

Client copy profileWhat the new client containsWhat it means for testing
Customizing onlyConfiguration, but no business partners, products or usersTests fail for missing data; master data must be created or loaded first
Customizing and master dataConfiguration plus partners and products, but not usersData exists, but test users and roles must be set up
Everything, including usersConfiguration, data and users from the sourceClosest to the source; check that no real personal data came along unprotected
How a client was copied decides what is in it, so ask for the profile and source before blaming the system for failed tests.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-102

Client roles and change settings

Each client is defined in the client administration transaction SCC4. Among its settings are a client role (the technical options are Customizing, Test, Production, Demo, Training/Education and SAP Reference) and change options: whether client-specific customizing may be changed and whether changes are recorded automatically in transport requests, and whether cross-client objects and repository objects may be changed in that client. Client 000 is SAP's reference client and is not used for testing.

Client purposeTypical change settingsWhat it means for testers
Customizing (in DEV)Changes allowed, recorded automatically in transportsWhere configuration is built; unit tests may happen in a separate DEV unit test client
Test (in QAS, Contoso client 100)No direct changes; content arrives by transportWhere formal testing runs; you should not be able to configure here
Training (Contoso client 200)No changes; refreshed between coursesNot a test client; do not post test documents there
ProductionNo changes; protected from client copy toolsLive business; testing in production is limited to agreed verification after go-live

Typical client settings. Basis owns these; testers should know them.

Logical client roles on a project

Beyond the technical role in SCC4, programs label clients by what they are used for: a golden configuration client, a unit test client, a quality test client, a pre-production client, a training master client. SAP training material lists similar logical roles. Whatever your program calls them, the test strategy should state which client each test level uses.

What would you do?

Maria's order-to-cash acceptance test passes in QAS client 100. The training team reports that the same scenario fails in training client 200 on the same system with a missing pricing condition. What is the most likely explanation?

Key points
  • A client is a self-contained unit within a system with its own users and data.
  • Most customizing and all business data are client-specific; repository objects and some customizing are cross-client.
  • Cross-client changes affect every client in the system.
  • SCC4 defines the client role and whether changes are allowed and recorded.
  • Record system and client in every test case and defect.

Check your understanding · not graded

Lesson check

  1. 1. Customizing that applies to all clients in a system is called:

  2. 2. Which of these is client-specific?

  3. 3. Which transaction defines a client's role and change options?

  4. 4. A developer changes a program in client 100 of QAS. What happens in client 200 of the same system?