Seth Schrock
@Z So how do you handle it if you have the production file being used: MainLab_20140101_0014_03_01. You start working on an update for section A, so you have your dev file MainLab_beta_20140101_0014_04 and you are working on it for a couple of weeks. Now your boss says that Section B needs updated NOW.
So for example you have two forms in and altering form_a when the boss wants form_b altered too and this alteration is an emergency.
So the current production file is:
MainLab_20140101_0014_03_01
(most likely a MDE or ACCDE for me as I rarely push them out in any other format)
This tells me that the last beta was:
MainLab_beta_20140101_0014_03
Because this
isn't something minor such as a spelling error
MainLab_beta_20140101_0014_03
roles back to alpha and advances the sequence
MainLab_alpha_20140101_0015
(If All am am doing is moving a button location, or correcting a spelling error etc... then the Beta file sequence would roll forward. Anything that effects the underlying code or SQL of a form or that adds (i.e. new report) roles back to alpha state --In the past, I've even pulled a beta version back to alpha because there were too many changes required to the underlying database. I've not had to do that for quite sometime now as I usually have a very good table structure and plan of action laid down before I ever get to the forms)
In alpha_15
I now make a copy of Form_A and all code related there-in and rename to Form_A_P20140101_0014_03_01
(I will also make a copy and rename queries that have to the altered for this work too.)
This is a fail safe in-case I really goof
AND
for your situation.
Now I start my work in Form_A
Say I'm on day four plus two rollbacks so I'm now working in
MainLab_alpha_20140101_0021
and the boss asks for that emergency change in Form_B that must take priority over the current Form_A work.
We advance to MainLab_alpha_20140101_0022
Make a Copy of Form_B rename to From_B_P20140101_0014_03_01
Because we do not know if the emergency changes in b will break a we need to rename the Form_A to Form_A_Alpha_0021
Rename Form_A_P20140101_0014_03_01 back to the "Form_A" status.
(remember if you altered any queries or reports, you will need to roll them to the alpha and restore the original)
Now work in the Form_B in MainLab_alpha_20140101_0022
Say this takes two days: MainLab_alpha_20140101_0024 and form_b changes are made and work with the current form_a
When your ready for the boss to validate the changes to form_b
MainLab_Beta_20140101_0024_01
two minor changes to form_b
MainLab_Beta_20140101_0024_03
All is good so roll to:
MainLab_Beta_20140101_0024_04 delete/clean-up form_b_P20140101_0014_03 clean up the other objects backed up for form_b work and roll to:
and we roll forward to the MDE or ACCBE
MainLab_20140101_0024_04_01
Ahh - now back to our work on form_a
MainLab_Beta_20140101_0024_04
rolls to
MainLab_Alpha_20140101_0025
The current Form_A is renamed back to Form_A_P20140101_0014_03 and Form_A_Alpha_0021 is renamed to Form_A
Now, we have to take care, take a few minutes and look a any objects that were altered for our form_b work vs. the Alpha_21 mods... we need to integrate these changes into Form_A if needed and proceed.
YES, the current production file has the Form_A_Alpha_0021, and alphas for any other objects, in it; however, there's really no issue with this as when the work is done those artifacts will disappear from the production file.
It seems in my prior post I forgot to mention the roll back from beta to alpha - this has to do with my belief in backups and redundancy. I never have a single production file always a backup, never a single development file... etc...