"Difference between a check table and a value table
Value Table
This is maintained at Domain Level.
When ever you create a domain , you can entered allowed values. For
example you go to Domain SHKZG - Debit/credit indicator. Here only allowed
values is H or S.
When ever you use this Domain, the system will forces you to enter only these
values.
This is a sort of master check . To be maintained as a customization object.
This mean that if you want to enter values to this table you have to create a
development request & transport the same.
Check table
For example you have Employee master table & Employee Transaction table.
When ever an employee Transacts we need to check whether that employee exists
, so we can refer to the employee master table.
This is nothing but a Parent & Child relationship . Here data can be
maintained at client level , no development involved.
As per DBMS what we call foregin key table, is called as check table in SAP.
There is 1 more important Difference in Value Table and Check Table is
that:
1. The contents of the check will be used as an input help(F4 Help) for a
particular field on which a check table is assigned.
But the contents of Value Table are never used in Input Help.
The Heirarchy which decides from where to used the Input Help is:
1. Input help defined explicitly in ABAP Program or Dialog Module.
2. Input Help Attached to the referenced Database Table field.
3. Using the contents of Check Table as an input help if neither (1) or (2) help
are there.
4. Input help from Fixed value or Value range given in Domain.