When working on a project its usually good practice to put parameters in variable for ease of changing (delay times, accelerations etc. Things you don’t necessarily want to bring out to an HMI for operator changing but things you tweak during startup). When you hard code numbers into programs then you limit your ability to change functionality without re-downloading program.
I try to do this and then make these variables retained so that that the behavior stays over a power cycle.
When the startup commissioning is over, if I remember, then I have to go online to each retained variable and copy the current value to the initial value. This is so that if we do an identical system or if the customer needs to change the controller, that these parameters will start off with the proper values when the program is downloaded.
I am requesting a command that allows you to copy the Retained Variable current Values to Initial Values. I would recommend putting it under the Programming Menu and also on a right click on the Project View tree item for Variables. I would have that open a dialog box that explains what the command does with a standard Cancel/Ok interface. If you want to get fancy you could let the user select which of the variables to copy with a scroll list and check boxes but I think the basic functionality alone would be a big plus.