IMHO, you should not have the calculation done in the table, and if you weren't doing that, you'd be OK. This might be one of those few cases where it's OK to store a calculated value (which is not the same as having the table perform the calculation) since you need to append the checksum value and the result won't be used in any sort of invoicing or similar function. The calculation should be done by a query, and in your case, the result stored or the first part and the checksum digit could be in separate fields.
That being said, if you have code that builds the value, why not modify that to store it where it's needed? Or you need a way to link the code to the product; perhaps by having the product id in the code table, and joining on product id. Not sure if that starts to violate any sort of normalization rules without knowing more about the tables and relationships.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.