The information that is held on tables are clearly described on the system. It's good to understand a little on how this was done. Client-dependence ? What's a data element ? A domain ?
Client-dependence
A table is either client-dependent or not. Client dependence comes down to a simple fact: is the first field on the table the MANDT
field, or not. Tables with the "client" field in their key (as first field of the key) can hold values that are applicable to the client. Tables without "client" or client-independent tables can also hold values, but since there is no (key) relation to the client number, settings will be the same on all clients.
Data elements
The field in your table is unique. There can only be a single field with a given name in a single table. Field names can however also be used on other tables, where they could effectively mean something completely different. The type of a field is defined in the data element for that field. Thus the data element for MARA-MATNR
is MATNR
and this data element will have a description (or in fact - 4 descriptions) and a domain. Other tables which also have the MATNR
field and MATNR
data element can be expected to describe the same field: the material number. So if you would like to know whether there are other tables using the MATNR
field, you should really be checking the where-used list of the MATNR
data element. This will reveal that there are tables with field name MAT_NR
or RMATNR
which effectively are material numbers.
Domains
So what's the domain for ? Most fields have a data element that also describes the field type. This can be done as a built-in type, but is can also be done as a domain. In the example of the material number, this is (again) the MATNR
. So the field MATNR
has a data element MATNR
which refers to a domain MATNR
and even though all these object have the same name - they are different objects.
The domain describes the type of the field, whether it's numeric or a character field, what the length is how many decimal places, whether it allows lower cased values. The domain can also describe possible values for the field, or the domain can refer to a table for possible values. Now possible values are very useful: they tell a great tale on what the field is for.