Schau dir nochmal genau an, auf was du zugreifst.
aDataRecord
Der Parameter aDataRecord ist natürlich eine Kopie.
Du solltest dir dringend überlegen, wieso überhaupt in ProcA auf das "globale?" DataRecord zugergriffen werden kann.
[add]
Und der Name "IsDataOK" ist natürlich komplett falsch, denn da wird nicht "nur" geprüft, sondern auch verändert.