Where-Used Lists


A where-used list of an address indicates which database record of an application table references the address. Unless specified otherwise, the information given below also applies to the where-used list for persons (for address types 2 and 3).

Since the where-used list references an application object, it is also commonly called a reference.

Depending on whether the application object is the owner of an address or not, the associated where-used list is called owner reference or usage reference (see Designated Application Objects).


The application must specify a where-used list when it assigns a number to an address. Based on the application table name, the table field for the reference to the address, and the database key of the corresponding record in the database, the address can be exactly assigned to the application object. This is important for:

  • Address data consistency checks. In particular, these checks can determine if references to an address exist. If this is the case, the address cannot be deleted.
  • The distribution of address data. The address numbers in the application tables refer to addresses in BAS tables. For master data, the where-used list is a means of determining the application object that refers to the address. This is important for distribution since address numbers are only unique within one system and therefore must be frequently reassigned in the target system. (See also: Transport of Customizing Addresses, Inbound Processing and Distributing Addresses Using ALE).
  • Application-specific enhancements. The BAS provide function modules that can be used by SAPphone to determine the relevant business partner (that is, the application object) based on a telephone number, for example. Such a function could not be implemented without the where-used list.


The application must register BAS usage in table TSADRV, which contains data about the usage of the address. Based on this data, the BAS check if the application has filled the structure correctly for each reference passed. This prevents program errors on the application side.

The TSADRV entry enables developers to store information on an associated BOR object (see Preparing to Work with BAS).