How to Upgrade using Source Code Control
========================================
To upgrade a Dexterity application from version 6.00 onwards, it is necessary to use Dexterity's Source Code Control functionality to avoid issues with resources changing their IDs. If you use the old "Developer Update" method, you might encounter problems with strings and static values changing.
The steps below assume that you have already installed Microsoft Visual SourceSafe 6.0 (VSS) and the Dexterity Source Code Control Service (DSCCS). The DSCCS can be installed from the Great Plains Install CD 2 in the \Tools\Dex\DSCCS folder.
The following Naming Conventions have been used in these steps and can be altered as per your own requirements.
Project Name of Dexterity project and Name of VSS project created
\Project\ Folder where code for project is stored.
Proj_Dyn.dic Name of Dexterity development dictionary, copied from Dynamics.dic with our code changes
A) Setup DSCCS
1) Goto Start >> Control Panel
2) Select Dexterity SCCS
3) Change the Provider to Microsoft Visual SourceSafe
4) Set the Initialisation File path, usually C:\Program Files\Microsoft Visual Studio\VSS\SrcSafe.ini
5) Press OK
B) Setup VSS
1) Run the Start >> Program >> Microsoft Visual SourceSafe >> Visual SourceSafe 6.0 Admin
2) Logon as the Admin user
3) Select Users >> Add User and create a user for your username with no password.
4) Run the Start >> Program >> Microsoft Visual SourceSafe >> Microsoft Visual SourceSafe 6.0
5) Logon as your username
6) Click on the root node on the tree and select File >> Create Project.
7) Call the Project the name of your development project. eg. for the sake of these instructions Project, but this could be the name of the dictionary or chunk file.
C) Create development Environment
1) Make sure that your development project is in a subfolder of your Dexterity v8.00 installation. eg. C:\Dex800\Project
2) Copy into this folder the v7.50 development dictionary (which contains your code). eg. C:\Dex800\Project\Proj_Dyn.dic
3) Make a copy of the v8.00 Dex.ini into this folder. eg. C:\Dex800\Project\DEX.INI
4) Create Shortcuts to the v8.00 Dex.exe and place them into this folder.
5) Edit the shortcut for Dex.exe and add the path to the dictionary and the dex.ini to the target as parameters. eg. C:\Dex800\Dex.exe C:\Dex800\Project\Proj_Dyn.dic C:\Dex800\Project\DEX.INI
6) Always use this shortcut when developing this project from now on.
This will allow this project to have its own Dex.ini. The settings for Source Code Control are stored in the Dex.ini so each project needs its own dex.ini.
Note: in Step C2, make sure you copy the associated *.dat and *.idx tables as well so you keep your references and worksets.
D) Create Connection to VSS
1) Launch Dexterity using the shortcut, it will directly load your dictionary.
2) select Edit >> Options >> Source Control
3) Set the Repository Name to the machine with the repository, for you it should be localhost (assuming we are using the local VSS repository)
4) Enter your Username
5) Leave the password blank
6) Put in the Project Name. eg. Project
7) The Temp File Location should point to your local temp folder
8) At this stage the Original dictionary should be a v7.50 original Dynamics.dic with no modifications. eg. C:\Dyn750\Dynamics.dic
9) Check All 3 checkboxes.
10) Validate the Connection
11) Once Validated add \750 to the Project Name, eg Project\750
12) Click OK
This will allow you to have separate sub projects for each version, but the validate feature does not understand sub projects.
E) Initial Check-in of v7.50 code
1) From the Dexterity menus, select Explorer >> Source Control >> Update SCC State
2) For each Alternate form and report you must "Touch" it to change its state from Main Product. Just Double Click on it to open the form definition or report definition window and press OK
3) Now select Explorer >> Source Control >> Check In
4) Insert All, add a description eg. Initial v7.50 Check-In and press Check in. The close the window
5) Select Explorer >> Source Control >> Update Index File.
F) Initial Check-in of v7.50 code as start of v8.00 project.
1) Select Edit >> Options >> Source Control and change the Project Name to have \800 instead of \750.
2) Press OK
3) From the Dexterity menus, select Explorer >> Source Control >> Update SCC State
4) For each Alternate form and report you must "Touch" it to change its state from Main Product. Just Double Click on it to open the form definition or report definition window and press OK
5) To avoid errors later on, you may find it worthwhile to make a note of any references adding palette or toolbar menu items and then delete the code.
6) Now select Explorer >> Source Control >> Check In
7) Insert All, add a description eg. Initial v8.00 Check-In and press Check in. The close the window
8) Select Explorer >> Source Control >> Update Index File.
G) Preparation for v8.00 project
1) Delete the v7.50 Development dictionary. eg. C:\Dex800\Project\Proj_Dyn.dic (assuming you have a backup somewhere)
2) Copy a clean v8.00 Dynamics.dic into the folder and rename it to have the same name... this will become your new development dictionary. eg C:\Dex800\Project\Proj_Dyn.dic
3) Select Edit >> Options >> Source Control and change the Original dictionary to point to the v8.00 dictionary. eg. C:\Dyn800\Dynamics.dic
4) Click OK
H) Update into v8.00 Dictionary from Repository
1) From the Dexterity menus, select Explorer >> Source Control >> Update SCC State
2) Then select Explorer >> Source Control >> Update ...
3) Check the Use Index File option (see other FAQ Document or KB Article 894699).
4) Click OK.
5) Leave all the resources selected and start the update.
6) If you have references to palettes and toolbars expect errors.
I) Fix the Code
1) Now check out any code that is failing, make the appropriate changes for v8.00 (see other FAQ document or KB Article 894701).
2) Once everything is working in test mode
3) Select Explorer >> Source Control >> Check In and check all the changes in
4) Select Explorer >> Source Control >> Update Index File.
Now you are done. You can create your chunk.
David Musgrave [MSFT]
Senior Development Consultant
MBS Services - Asia Pacific
Microsoft Business Solutions
http://www.microsoft.com/BusinessSolutions
Any views contained within are my personal views and
not necessarily Microsoft Business Solutions policy.
This posting is provided "AS IS" with no warranties,
and confers no rights.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.