I have a basic form report which displays a number of fields concatenated together and stored in a form variable - however when I display more than one record on a page the variables are not updating! Where do I need to put the method so that it is run??
A form variable is unique for the form, not for the record.
In your case it is better to use a calculation, that is unique for each record and is calculated automatically when shown.