You are supposed to set up G54, etc,.for a particular job, of course when you rerun the job, the holding fixture or however you hold the part, will not be in the exact same location and you change the value you used very slightly.
If you set up 4 parts on the table, all running the same program, you would use G54,G55, G56 and G57 and the program would be written as a Subprogram and repeated in 4 different locations.
For some detailed program examples, look at my listing on Youtube. put in my name: Heinz Putz to see it.
The listing is a public service by me to help shop people to learn CNC programming and it and any advice any of you need are totally free, all details are based on my 30+ years of teaching shops to produce efficient CNC lathe and mill parts.
Heinz at doccnc.com.