Group: StrataFrame Users
Posts: 277,
Visits: 1.1K
|
Hi Edhy,
What you have described is basically what I do:-
1. I have a version table which is deployed by the DDT with a single record. This record contains an integer version number (don't use a decimal as there is a bug in the DDT which causes a decimal to be deployed as an int, i.e. 5.13 would be deployed as 5).
2. My application also contains a reference to the current database version number.
3. When the application runs it checks for the presence of a version table. I have to do this as my application upgrades earlier non-SF systems so it could be a first time install of my SF client on an existing database. If the version table is not found it warns the user it can't proceed and opens the DDT wizard. (My package is password protected to ensure a novice user doesn't get their hands on it). When the wizard closes, it checks again to ensure the database was upgraded - if not the application warns the user and exits.
4. If the application version is greater than the database version then the user is warned and the DDT wizard is opened. If the database is not upgraded the user is warned and the application exits.
5. If the application version is less than the database version then I allow it to proceed as a database upgrade will never stop an older application version from running. However, I would expect our setup routine to have automatically detected a new client version on our website and to have downloaded and installed it automatically anyway so this is probably not an issue.
Not sure I have left anything out but it works very well.
Regards,
Aaron
|