SAP® Documentation

Single view

/BKC/SOL21_KLON - Clone&Test! - Copy and anonymization of personnel data

Fill RESBD Structure from EBP Component Structure   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
This documentation is copyright by SAP AG.
SAP E-Book


/BKC/SOL21_KLON is the main program from "Clone&Test!". The report is used to copy personal data (all infotypes from table T582A, clusters PCL1, PCL2, PCL3, related matchcodes and time events (TEVEN)) either directly into an RFC-defined target system or onto a sequential file.

The target system must run on the same SAP-Release as the source system!

With the possibility of changing the personnel number during the copy process, a personnel number can be duplicated within a client.

The names and some other data of the personnel numbers can be changed (anonymized) while being copied. The corresponding data, which are saved along with the payroll results, are anonymized, too.

In order to anonymize the data, a name for an anonymization set must be provided. A set contains all anonymization rules for different tables and their fields. Anonymization sets should be maintained by the report /BKC/SOL21_ANON.

Before the data are copied, the existence of the personnel number in the target system is checked. If the personnel number already exists and the option 'Overwrite existing data' is not set, the copy process will abort.

Always a check against the table T000 is made to make sure, that the target client is not productive. Into productive clients no data can be transferred!

If the data is stored into a sequential file, the upload can be done using the report /BKC/SOL21_KLUP. This should only be done on a system which runs the same SAP-Release as the source system. If the releases differ, the upload could work, but the data may be corrupted.

Another reason for errors could be a difference between source and target system concerning the state of customizing and/or development. If such an error occurs, the affected infotypes or clusters should be excluded from the copy.

Together with this 'Clone', the report /BKC/SOL21_PDEL is shipped, which deletes personnel numbers with all their data.

New with release 2.4.0

  1. Copy of incentive wage groups
Further information is given in the section 'Parameters'
  1. Multiplication of master data
Master data can be multiplied to create multiple identical data within one run of the 'Clone'.

New with release 2.4.2

  1. Even if the 'Anonymize'-option is set and the personnel number is changed during the copy, the employees can be identified with the PD- related data in infotype 1 (fields 'Job', 'Position', 'Org Unit'). This information can now be deleted.

New with release 2.5.0

  1. The procedure of anonymizing data was completely redesigned.
It is now possible to define varying options of anonymization for different ranges of personnel numbers. For further information, please read the documentation of the parameter 'Anonymization set' below.
It is now possible to anonymize data by calling an extern routine. A full functional example for the conversion of the german insurance number which is stored in infotype 13 is given in the report /BKC/SOL21_EXTF.

New with release 2.6.0

  1. The country grouping (MOLGA) must now be provided in the selection screen to avoid problems with the clone when running in batch mode.
  2. All personnel numbers that do no belong to the given country grouping are not copied.
  3. After the collection of all personnel numbers that should be copied, an additional authorization check can be made in an external program. An example and the needed interface are given in the modulpool /BKC/SOL21_EXTF with the routine CHECK_AUTH. In order to redirect the call to an user-defined routine, an entry in the table /BKC/S21_EXT_F must be made with these values:
,,MOLGA ,, ,, ,,country-dependent, e.g. 10 for USA or 07 for Canada
ARBGB ,, ,, ,,'AUTH'
PROGRAMM ,, ,,report name
FORMROUTINE ,,name of an existing routine in this report
  1. The anonymization of clusters is made MOLGA-dependent externally.
  2. The determination of the needed cluster relids is made according to RPUDELPN.
  3. The calculation of the target personnel number is made in an external routine and can be controlled by the user. An example and the needed interface are given in modulpool /BKC/SOL21_EXTF with the routine CREATE_NEW_PERNR.
    The target of the call is defined by an entry in table /BKC/S21_EXT_F in which the fields must be filled with the following values:
MOLGA ,, ,, ,,empty
PROGRAMM ,, ,,report name
FORMROUTINE ,,name of an existing routine in this report
  1. The selection values for the personnel numbers can be filled from an sequential file which can be read from the local workstation.

New with release 2.6.2

  1. Field from the tables ADR (Address), NAME (Name), BT (Bank transfer), and PERM (Personal features) of the american and canadian payroll clusters RU and RK, respectively, can now be made anonymous using an anonymization set. The needed entries are added to the example set.
  2. Texts from infotype 19 (Monitoring data) are stored in the cluster TX of table PCL1 and must be copied along with the data of the infotype. It is now checked if the user has selected this cluster. If not, the cluster TX is added to the selection automatically.

New with release 2.6.3 (for SAP-release 4.6x only)

  1. With release 4.6, SAP introduced two new tables in the payroll environment: HRPY_WPBP and HRPY_RGDIR. The content of these tables is now copied for the selected personnel numbers.
  2. Both the read and the write process for the table PTQUODED have been rewritten to avoid memory problems with large internal tables.
  3. Errors in the processing of 'DATE'-fields during the maintenance of anonymization sets have been fixed.

New with release 2.7.0

  1. The country grouping (MOLGA) does not need to be provided by the user. It will be read from the master data of the copied personnel numbers.
  2. There are no more country-dependent modules for the anonymization of payroll cluster data. According to the current MOLGA, the needed routines will be created and called dynamically. Now any fields of all tables stored in the clusters can be anonymized.
  3. The contents of table T5B2A is now considered during the selection of all clusters that must be copied.
  4. The routines for table PTQUODED have been rewritten in order to remove errors during the creation of new assignment numbers.
  5. The definition of structures can be compared between source and target system for those tables that have been selected for the copy process. If any difference is detected, the affected table will be reported and will not be copied. This helps to avoid crashes of the copy program.
  6. The routine for the deletion of data in the target system has been rewritten. Now either all data of the selected personnel numbers can be deleted or only those data that will be copied during this execution of the copy program.
  7. The protocol function has been expanded significantly in order to support the investigation of possible errors.

New with release 2.7.1

  1. The exported files now contain a timestamp. This prevents the system from importing two files that do not belong together.
  2. The read-routines for the german-specific tables P01CABR, P01CVD and and P01CVH have been rewritten. The 'Personnel number' is not the first field of the key and may have therefore lead to reading errors under certain circumstances.
  3. The cluster Q0 (statements) is copied only on user demand.
  4. The fields VSNR and AZVU of the german-specific table PD3DSME can now be anonymized.
  5. The routine for the anonymization of (almost) all fields has been extended.
  6. The 'old' and the 'new' personnel number are now available in external routines. They can be read directly from the memory.
  7. The newly created table /BKC/S21_PARAMS can be filled with parameters which will control the copy program. Currently supported parameters are
DIR_DEFAULT Default value of the path in which the export files of the copy program should be created. If no value is given or if this parameter is not in the table, then a subdirectory within the standard SAP-transport directory will be proposed.
The content of the field is interpreted as a string of characters.
MAX_MEMORY Default value for the determination of the memory size which can be used for SQL-statements. If no value is given for this parameter, the copy program will assume the empirically determined value of '12', the prior standard.
This value of '12' can be decreased if the copy program aborts with an error indicating there it is not enough memory for all the results of a SQL-statement.
The value of MAX_MEMORY modifies the package size used for SELECT-statements. An increase of the value may reduce necessary number of physical read processes and may therefore lead to an increase in performance. These are general responses to memory problems: However, no specific advice can be given because the optimal value of this parameter strongly depends on the hardware used (mainly memory) and on the inter-operation between the SAP-system and database.
The value in this field is interpreted as an integer.
  1. The tables PCALAC, PPOIX and PPOPX are deleted in the target system for the selected personnel numbers.
  2. For SAP-Release 4.6x only: The content of the table T52MCW is copied for the selected personnel numbers.

New with release 3.0.1

  1. The PD data of the selected personnel numbers can be copied.
For further information, please read the documentation for this option and the corresponding explanations for the input parameters.
  1. Customer specific database tables can be copied.
This option is limited to two types of tables:
Either the table must have a structure like

or the table is a user-defined cluster and must therefore have a structure equal to table PCL2.
  1. Enhanced authorization check.
If the current user is not allowed to read one of the selected infotypes and clusters, independent of the selected personnel numbers, this infotype or cluster will not be copied.
Fix: The links in infotype 128 still pointed to the old personnel number, even if the 'Create new personnel numbers' option has been checked by the user. The error has been fixed.
  1. The filename for download may now contain symbolic names like or . These values will be replaced by real names during runtime. Please refer to the help for the field 'Filename' for more information.

Enhancements and corrections with Release 3.0.2

  1. Customer-defined clusters are now copied correctly. One of the main preconditions has changed: the customer-defined cluster may now have a different structure than table PCL1. Only the key fields must be exactly the same as in PCL1. The length of the data area must not exceed 16384 bytes.
  2. If the data of the PD environment were copied along with the master data, the anonymization of the data could have failed under certain circumstances. The error has been removed.
  3. During the copy of PD data an overflow of numerical fields could have occured. The error has been removed.
  4. The tables of the travel management could have been corrupted during the copy process if the download/upload option was chosen. The error has been removed.
  5. The authorization check for the objects P_ORGIN, P_ORGXX and P_PCLX is now done the SAP standard way. To copy data, only the 'Read' permission is necessary.
  6. Unnecessary protocol information has been removed.

Enhancements and corrections with Release 3.1.0

  1. Non-payroll clusters can now be made anonymous. The tables /BKC/S21_RXTAB and /BKC/S21_RXVERS control the generation of the needed export and import routines during runtime. For every cluster which has to be anonymized, the appropriate entries have to be added.
As a valid example, entries for cluster B2 (time evaluation results) and ZV (Supplemetary benefits for the Public Service in Germany) are shipped with Clone&Test!.
  1. 'Supplementary Benefits for the Public Service in Germany' are treated as a separate selection parameter.
  2. The authorization checks have been revised.
  3. Only if the area identifier changes, a new subroutine pool will be created (program /BKC/SOL21_KLON_ANON).


The neccessary RFC-destinations must be defined. The "RFC-User" must have the appropriate rights in the target system/client.

The report and all needed function modules must exist in both the source and the target system.

Input parameters:

Screen: Options for personnel numbers

Screen: Data selection

Master data

Cluster data

Additional data

User-defined tables

Germany specific data

Screen: Target options

Options for existing data in the target system

Screen: PD data

Screen: Anonymization

Screen: Incentive wage groups

Screen: Protocol options

Fill RESBD Structure from EBP Component Structure   CPI1466 during Backup  
This documentation is copyright by SAP AG.

Length: 14981 Date: 20191213 Time: 090151     sap01-206 ( 67 ms )

Our Service

Looking for Support? Questions?




Leave us your contact details and we will call you back. Panels marked with * are mandatory.