I would calculate the reference field as just that, a reference field, for their display usage satisfaction. I would NOT setup any relationships going forward based on this unless you can guarantee that your generated calculation always evaluates to a unique number.
On the backend out of the user's view, I would use a standard primary auto-enter serial number or UUID as a unique serial to use in all of my relationships.
I would advise using Mike's suggestion. Use a a standard Primary key for all records connected by a foreign key. Provide a displayed/editable field for the key value provided by accounting. You could add a script trigger/script that updates all related records with a new version of the accounting key if they change it because of delay into the following week. Do not use the accounting key value in a relationship.