For one of our custom schemas, an 'Interaction ID' field flows from data systems to ACS.
This field apparently is a large integer value (eg: -7147687652581693114), hence this was setup as type: Integer (64 bits, ±9,223×10^15) at the time of implementation (done by Adobe Consulting).
We have been observing issues with this field for quite some time now and when we dig into troubleshooting, it seems this field has forever been adding extra zeroes at the end of the incoming value.
As an example, -7147687652581693114 becomes -71476876525816931140000.
I understand this is related to data type and ACS tends to add extra digits if the expected number of digits don't turn up in the incoming value.
Is my understanding correct?
If yes, how are we supposed to deal with such long values then?
Is 'Text' a good option or Integer (16 bits, ±32,767) /Integer (32 bits, ±2,147×10^6) could be considered too. How do we know with these 'Integer' data types, the same issue won't happen?
What if at any point in time, this Interaction ID value doesn't carry the expected number of digits (its a system generated value on data source side and could be anything)?
Would ACS always add trailing zeros?
Could you share the complete field definition in the Custom Resources and if you use a file import to load data, could you share the column definition representing this field in the Load Activity? In the load activity, look for any formatting that might be set there or look for the column type, it should be Int64 and not Text...
Check also along the workflow is any trasnformaiton is occuring prior the Update activity or at time of Update activity....