I spent some time to know the differences between “id” and “value” cross referencing and I was able to get the below points which I thought of worth sharing.
At a high level, these two concepts will look similar. But they operate with few differences.
Here are those.
S.No |
Value Cross Referencing |
Id Cross Referencing |
1 |
These cannot me modified during run-time. |
These may be set at run-time. Set Common ID functoid is used for this. |
2 |
This occurs between app types. |
This occurs between appinstance types. |
3 |
This cross-referencing is commonly between enumeration fields. |
This cross-referencing is commonly between entity unique identifiers. |
4 |
This uses caching mechanism. After any changes in database, we have to restart the corresponding host instances to see the changes. |
In this, we will hit the database for every call. |
5 |
It’s a many-to-one mapping. |
It’s a one-to-one mapping. |
6 |
The mapping is gauranteed in only one direction. |
The mapping is gauranteed in both directions. |
7 |
When you want to use them for the reverse mapping for a value which is mapped to multiple inputs, the first value stored in the xref tables is fetched. |
Reverse mapping is always in synch with the initial mapping. |
8 |
Apple – Fruit |
Apple – Fruit |
9 |
We have to use the GetCommonValue & GetApplicationValue functoids in the maps |
We have to use the GetCommonId & GetApplicationId functoids in the maps |