As discussed in Procedure Overview each procedure body in a QA Build program can use maps from two distinct mapsets: the "Main" mapset and the "Remarks" mapset. In principle you can use different mapsets for each in every procedure body, or you can use the same name everywhere.
Some people like to use the same mapset name for remarks throughout a system, because different programs will often need to display the same error messages, and using the same mapset may help you to provide a complete list of error messages in your system documentation, which may be useful both for users and support staff.
You may find the following table helpful when deciding what mapnames to use:
| If... | Action | Result |
|---|---|---|
|
The procedure only appears in the current program
Example: A data entry map |
Use the program name for the mapset (this is initally the default, though it may not be if you have changed the mapname in a procedure body further up the procedure tree.) | Map is stored with the program mapset |
|
The procedure appears in several programs always using the same map
Example: Pop-up maps that are used in more than one program to select a record |
Use a mapname that is not specific to any one program | Map is stored with named mapset |
|
The procedure shares maps with other procedures
Example: Procedures that use "Already Output" maps |
Use the same mapname as the procedure that displayed the map. (In fact this is not strictly necessary at runtime, but it will be confusing both for programmers and QA Build itself if you use the wrong mapname) | Map is stored with named mapset |
|
The procedure is to be used in several programs with different maps
Example: A procedure is used to display a report heading which is shared by several programs, but with slightly different text |
Enter <blank> | Map is stored in the mapset inherited from the procedures above. |
There are a couple of points to consider when using a blank mapname:
If you move or reuse a procedure with a blank mapname elsewhere in the procedure tree, ensure that the inherited mapset has correct maps for the procedure.
If you subsequently make changes to a procedure with a blank mapname in one place in the procedure tree, and change the map in some way, remember to edit the procedure again in its other locations and make any corresponsing changes necessary to the other maps.