DEXUTIL
DEXUTIL
Dexterity Utilities
Release 12
Copyright Copyright © 2014 Microsoft Corporation. All rights reserved.
Limitation of liability This document is provided “as-is”. Information and views expressed in this document, including
URL and other Internet Web site references, may change without notice. You bear the risk of using
it.
Some examples depicted herein are provided for illustration only and are fictitious. No real
association or connection is intended or should be inferred.
Intellectual property This document does not provide you with any legal rights to any intellectual property in any
Microsoft product.
You may copy and use this document for your internal, reference purposes.
Trademarks Microsoft, Dexterity, Microsoft Dynamics, and Windows are trademarks of the Microsoft group of
companies. FairCom and c-tree Plus are trademarks of FairCom Corporation and are registered in
the United States and other countries.
Warranty disclaimer Microsoft Corporation disclaims any warranty regarding the sample code contained in this
documentation, including the warranties of merchantability and fitness for a particular purpose.
License agreement Use of this product is covered by a license agreement provided with the software product. If you
have any questions, please call the Microsoft Dynamics GP Customer Assistance Department at
800-456-0025 (in the U.S. or Canada) or +1-701-281-6500.
DEXTERITY UTILITIES i
C O N T E N T S
ii DE X TE R I T Y U T IL IT IE S
C O N T E N T S
Index............................................................................................................................................... 165
• Part 1, Basics, explains how to get started with Dexterity Utilities and
introduces terms and concepts used in this manual. The Dexterity Utili-
ties interface is also described.
• Part 3, Report Reference, describes the various reports that are available
in Dexterity Utilities.
New Several other additions and changes available with this version of Dexterity
Utilities are indicated throughout the manual by the New symbol.
2 DE X T E R I T Y U T I L I T I E S
I N T R O D U C T IO N
Symbol Description
The light bulb symbol indicates helpful tips, shortcuts
and suggestions.
Margin notes sum- Margin notes call attention to critical information, and
marize important direct you to other areas of the documentation where
information. a topic is explained.
Convention Description
Part 1, Basics Bold type indicates the name of a part.
Chapter 4, “Script Quotation marks indicate a chapter name.
Utilities”
Applying formats Italicized type indicates a section name.
RUNTIME.EXE Words in uppercase indicate a file name.
Software Acronyms are spelled out the first time they’re used.
Development Kit
(SDK)
TAB or ALT+M Small capital letters indicate a key or a key sequence.
DEXTERITY UTILITIES 3
4 DE X T E R I T Y U T I L I T I E S
PART 1: BASICS
Part 1: Basics
Use this portion of the manual to become familiar with Dexterity Utilities.
The information is divided into the following chapters:
6 DE X T E R I T Y U T I L I T I E S
Chapter 1: Getting Started
You can begin using Dexterity Utilities immediately after you install it. This
chapter describes what files are required to run Dexterity Utilities and
introduces some new terms and concepts. Information is divided into the
following sections:
• Basic components
• Launching Dexterity Utilities
• Dexterity Utilities terms
• Working with dictionaries
Basic components
When you installed Dexterity, you also should have installed Dexterity
Utilities. The following table lists the files that are necessary to run
Dexterity Utilities.
File Description
DEXUTILS.EXE The Dexterity Utilities application.
DEXUTILS.DIC A dictionary used by the Dexterity Utilities
application.
DEX.DIC The dictionary used by Dexterity and the
runtime engine. Dexterity Utilities uses
shared code from this dictionary.
DEXUTILS.CHM The help file for Dexterity Utilities.
DEXTERITY UTILITIES 7
PA RT 1 B A S I C S
8 DE X T E R I T Y U T I L I T I E S
C H A P T E R 1 G E T TI N G S TA R T E D
Series A means of grouping tables, table groups, forms and reports into
categories. Dexterity Utilities allows you to generate reports and specify
resources to work with based upon series.
DEXTERITY UTILITIES 9
PA RT 1 B A S I C S
You can’t open a dictionary in more than one mode at a time. For instance, you
can’t open the same dictionary as both a source and editable dictionary at the same
time. Also, you can’t open a dictionary with Dexterity Utilities if the dictionary is
in use by another application.
You can close a single dictionary by choosing the appropriate Close option
from the File menu. All dictionaries are closed when you quit Dexterity
Utilities. Dictionaries are also closed automatically when you open a
different dictionary in the same mode. For example, if Dictionary A is open
as a source dictionary, and you choose to open Dictionary B as a source
dictionary, Dictionary A will be closed automatically.
You can use the Dictionaries menu to help keep track of which dictionaries are open.
10 DE X TE R I T Y U T IL IT IE S
Chapter 2: The Dexterity Utilities Interface
This portion of the documentation describes the interface for Dexterity
Utilities. It is divided into the following sections:
DEXTERITY UTILITIES 11
PA RT 1 B A S I C S
The toolbar
Each button that appears in the Dexterity Utilities toolbar represents one of
the categories of operations you can perform. The following table lists the
buttons on the toolbar and gives a short description of each:
The individual utilities and reports accessed using these buttons are
described in Part 2, Utility Reference, and Part 3, Report Reference.
The drop-down list on the right side of the toolbar serves two purposes:
• It sets the default series. Any place in Dexterity Utilities where the
series can be specified will default to the same setting as the drop-down
list on the toolbar.
12 DE X TE R I T Y U T IL IT IE S
C H A P T E R 2 TH E D EX T E R IT Y U TI LIT I ES IN T E R F AC E
File: Exit
This menu item allows you to exit Dexterity Utilities.
Edit: Undo
This menu item will undo the last cut, copy, paste, clear or keyboard entry
in an editable field.
Edit: Cut/Copy/Paste
These menu items allow you to cut, copy or paste text in editable fields.
Edit: Clear
This menu item allows you to remove text from an editable field.
DEXTERITY UTILITIES 13
PA RT 1 B A S I C S
Macro: (all)
This menu allows you to record and play macros in Dexterity Utilities. You
can use macros to automate common utility tasks. Refer to Chapter 34,
“Testing Your Application,” in Volume 2 of the Dexterity Programmer’s
Guide for more information about the macro system.
Windows:
This menu displays a list of the windows currently open in Dexterity
Utilities. Selecting a window from this menu will make the window active.
Dictionaries:
This menu displays a list of the dictionaries currently open in Dexterity
Utilities. Its purpose is only to list the open dictionaries.
Help: Lookup
This menu item opens any lookup window for the current field.
Help: Contents
This menu item displays the contents topic for Dexterity Utilities online
help.
14 DE X TE R I T Y U T IL IT IE S
PART 2: UTILITY REFERENCE
Part 2: Utility Reference
Use this portion of the documentation to learn about the various utility
procedures in Dexterity Utilities. The information is divided into the
following chapters:
16 DE X TE R I T Y U T IL IT IE S
P A R T 2 U TI LI TY R E FE R E N C E
Utility Summary
The following table summarizes the utilities available for various resources.
DEXTERITY UTILITIES 17
PA RT 2 U T I L I T Y R E F ER EN C E
18 DE X TE R I T Y U T IL IT IE S
P A R T 2 U TI LI TY R E FE R E N C E
DEXTERITY UTILITIES 19
20 DE X TE R I T Y U T IL IT IE S
Chapter 3: Transfer Utilities
The Transfer utilities allow you to transfer resources, strings and messages,
windows, and dictionary modules between dictionaries. You can also
transfer third-party resources from a Dynamics.dic development dictionary
to a newer version of the dictionary.
To perform a transfer, Before beginning a transfer, you must choose a source and a destination
open a source and a dictionary. To open a source dictionary, choose Open Source Dictionary
destination dictionary from the File menu and select the appropriate dictionary in the dialog box
by choosing each item that will appear. To open a destination dictionary, choose Open Destination
from the File menu and Dictionary from the File menu and select a dictionary using the same
selecting the method.
appropriate dictionary.
If you want to transfer resources, strings and messages, windows, or
dictionary modules into a new dictionary, choose Create New Dictionary
from the File menu and specify the name and location of the dictionary in
the dialog box that will appear. Then choose Open Destination Dictionary
from the File menu and select the new dictionary.
Transferring items only copies them from the source dictionary to the destination
dictionary. Transferring doesn’t remove items from the source dictionary.
• Transferring resources
• Transferring strings and messages
• Transferring windows
• Transferring dictionary modules
• Developer update
DEXTERITY UTILITIES 21
PA RT 2 U T I L I T Y R E F ER EN C E
Transferring resources
Resources are elements of application dictionaries, such as forms, tables
and data types, that you’ve created using Dexterity. Transferring resources
allows you to save time by copying a resource from one dictionary to
another, instead of re-creating it in the destination dictionary.
Skip Related Tables Mark this option if you are transferring tables,
and you want to transfer only the selected tables. Dexterity Utilities
won’t transfer tables related to the selected tables.
22 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
If you mark the Replace Referenced Resources option, all referenced resources
for the items you’re transferring will be replaced. If you want to replace
referenced resources for only a certain resource such as an individual field,
transfer the resources individually.
DEXTERITY UTILITIES 23
PA RT 2 U T I L I T Y R E F ER EN C E
If this option isn’t marked, you should synchronize the dictionary once
the transfer is complete by choosing Synchronize from the Utilities
menu.
Compile Scripts Mark this option if you want all the scripts for the
transferred items to be compiled after they’ve been transferred to the
destination dictionary. If you mark the Compile Scripts option, a
message will be displayed indicating whether all of the scripts
compiled. If all scripts weren’t compiled, refer to the transfer report that
will be created for a list of the compiler errors that occurred.
If the Compile Scripts option isn’t marked, the transferred scripts can
be compiled using the Compile Form Scripts, Compile Global
Procedures and Compile Global Functions utilities, which are discussed
in Chapter 4, “Script Utilities.”
24 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
Compiler Errors Only Mark this option if the only status messages
you want printed on the transfer report are compiler errors. If this
option isn’t marked, all status messages will be printed, including
compiler error messages.
You can set a default series prior to opening the Transfer Resources window.
Select the appropriate series from the Series list located on the toolbar. Once
specified, the selected series will appear as the default whenever a series can be
selected in a window.
Select the resource type that you want to transfer from the Resource
Type list. Once the type is selected, you can select specific resources of
that type to transfer.
You can transfer resources from different series and of different types at
the same time. Insert the appropriate resources, as described in the next
step, then select a different series or type.
Use the Show drop-down list to specify whether main product, third-
party, or all resources are displayed in the Resources list.
DEXTERITY UTILITIES 25
PA RT 2 U T I L I T Y R E F ER EN C E
26 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
DEXTERITY UTILITIES 27
PA RT 2 U T I L I T Y R E F ER EN C E
Refer to Chapter 4, • You haven’t transferred all necessary resources to the destination
“Script Utilities,” for dictionary, such as constants, global variables, or other forms.
information about Transfer these additional resources and then use the Compile Form
using the Compile Scripts, Compile Global Procedures and Compile Global Functions
Form Scripts, Compile utilities to compile scripts.
Global Procedures and
Compile Global • You used the Save Source menu item while in the script editor, so
Functions utilities. only the script source was saved. Determine whether you trans-
ferred any scripts for which only source was saved. If these scripts
contain any errors, they won’t be compiled properly.
28 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
This utility is used only The Transfer Strings and Messages utility is used to transfer all strings and
for making interna- messages in a dictionary to a separate dictionary so they can be updated for
tional versions of an international versions of an application. After they’ve been updated, the
application. strings and messages are transferred back into the application dictionary
using this same utility.
Refer to Chapter 23, The resource IDs of the strings and messages, not the string or message
“Strings,” in Volume 1 content, are used to determine whether a string or message exists in the
of the Dexterity destination dictionary. Also, string and message resources aren’t
Programmer’s Guide renumbered when they’re transferred using the Transfer Strings and
for information about Messages utility. For these reasons, we recommend that you use this utility
the Strings resource. only to transfer strings and messages from an application dictionary to a
separate dictionary for updating using the Strings resource, and then back
into the original application dictionary. If you want to transfer strings or
messages from one dictionary to another for other purposes, use the
Transfer Resources utility.
DEXTERITY UTILITIES 29
PA RT 2 U T I L I T Y R E F ER EN C E
30 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
Transferring windows
Dexterity Utilities allows you to transfer a single window from a form in a
source dictionary to a form having the same name in a destination
dictionary. This utility allows new windows in multi-window forms that
are prototyped by one programmer to be transferred to the dictionary of
another programmer without affecting any other work that may have been
done in the destination dictionary.
DEXTERITY UTILITIES 31
PA RT 2 U T I L I T Y R E F ER EN C E
Refer to Chapter 4, When you transfer a window, you’re also transferring any scrolling
“Script Utilities,” for windows, global fields, global data types, local fields, local data types,
information about composites, formats, strings and pictures used for the window that
compiling window and don’t already exist in the destination dictionary. Any window, scrolling
field scripts. window or field scripts will be transferred as well, though they won’t
be compiled. Use the Compile Form Scripts utility to compile these
scripts.
If a window exists in the destination dictionary with the same name as the one
being transferred, that window will be replaced when the transfer occurs. For
that reason, we recommend that you be aware of the windows included in each
dictionary before performing the transfer. The Forms option in the Inquiry
menu allows you to view names of windows associated with different forms
within a dictionary.
32 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
DEXTERITY UTILITIES 33
PA RT 2 U T I L I T Y R E F ER EN C E
modules of the specified type in that series will appear in the Source
Dictionary Modules list.
You can set a default series prior to opening the Transfer Dictionary Module
window. Select the appropriate series from the Series list located on the toolbar.
Once specified, the selected series will appear as the default whenever a series
can be selected in a window.
Clicking Transfer or All performs the actual transfer. To cancel the transfer,
you must individually delete any modules transferred to the destination
dictionary.
The Dictionary Module Size and Total Size fields at the bottom of each
list show the size of the selected module, and the combined sizes of all
modules in the list.
34 DE X TE R I T Y U T IL IT IE S
C H A P T E R 3 T R A N S F E R U T I L I T I E S
Developer update
The Developer Update utility is used to transfer third-party resources (all
those with resource IDs of 22,000 or greater) from an extracted dictionary
back into the Dynamics.dic dictionary. This can be useful if you have an
extracted dictionary that you created with the Extract utility, but no longer
have the development dictionary you used to create your third-party
product.
DEXTERITY UTILITIES 35
PA RT 2 U T I L I T Y R E F ER EN C E
After a moment, the names of all the forms you modified will appear in
the Alternate Forms list. Select each form for which you want
modifications transferred and click Insert to display it in the Selected
Forms list.
Refer to Chapter 4, In most cases, your third-party application will work after it has been
“Script Utilities,” for transferred back into the Dynamics.dic dictionary. If your application
information about the can’t locate some resources, you may have to recompile your scripts in
Compile Form Scripts, the destination dictionary using the Compile Form Scripts, Compile
Compile Global Global Procedures and Compile Global Functions utilities.
Procedures and
Compile Global
Functions utilities.
36 DE X TE R I T Y U T IL IT IE S
Chapter 4: Script Utilities
The script utilities allow you to compile all scripts for a specific form or
compile the global procedures or global functions in an application
dictionary. You can also search for a specific text string and replace it with a
new string or you can simply search for a text string to find where it occurs
in scripts.
Before using the script utilities, you must choose an editable dictionary. To
open an editable dictionary, choose Open Editable Dictionary from the File
menu and select the appropriate dictionary in the dialog box that will
appear.
DEXTERITY UTILITIES 37
PA RT 2 U T I L I T Y R E F ER EN C E
• If you used the Transfer Window utility to transfer a window into a dic-
tionary, use the Compile Form Scripts utility to compile the scripts for
the window.
• Before you send out an application, it’s a good idea to compile all
scripts using the Compile Form Scripts utility. This ensures that all
resources referenced by scripts are included in the dictionary, that the
latest version of scripts are being used, and that scripts don’t contain
syntax errors.
38 DE X TE R I T Y U T IL IT IE S
C H A P T E R 4 S C R I P T U T I L I T I E S
1. Select a series.
Select the series that includes the form for which scripts are being
compiled. The forms in that series will appear in the Forms list.
You can set a default series prior to beginning the compiling process. Select a
series from the Series list located on the toolbar. Once specified, the selected
series will appear as the default whenever a series can be selected in a window.
4. Compile scripts.
Click the Compile button to compile the scripts for the selected forms.
The Report File Name dialog box will appear. Enter the name and
location for the Compile Form Scripts Status Report file, then click OK
to continue the compiling process, or click Cancel to return to the
Compile Form Scripts window.
DEXTERITY UTILITIES 39
PA RT 2 U T I L I T Y R E F ER EN C E
• Before you send out your application, it’s a good idea to compile all
global procedures using the Compile Global Procedures utility. This
ensures that all resources referenced by the global procedures are
included in the dictionary, that the latest version of scripts are being
used, and that the global procedures don’t contain any syntax errors.
40 DE X TE R I T Y U T IL IT IE S
C H A P T E R 4 S C R I P T U T I L I T I E S
1. Select a series.
Select the series that includes the global procedures being compiled.
The global procedures in that series will appear in the Scripts list.
You can set a default series prior to beginning the compiling process. Select a
series from the Series list located on the toolbar. Once specified, the selected
series will appear as the default whenever a series can be selected in a window.
4. Compile scripts.
Click the Compile button to compile the selected global procedures.
The Report File Name dialog box will appear. Enter the name and
location for the Compile Global Procedures Status Report file, then click
OK to continue the compiling process, or click Cancel to return to the
Compile Global Procedures window.
DEXTERITY UTILITIES 41
PA RT 2 U T I L I T Y R E F ER EN C E
• Before you send out your application, it’s a good idea to compile all
global functions using the Compile Global Functions utility. This
ensures that all resources referenced by the global functions are
included in the dictionary, that the latest version of scripts are being
used, and that the global functions don’t contain any syntax errors.
42 DE X TE R I T Y U T IL IT IE S
C H A P T E R 4 S C R I P T U T I L I T I E S
1. Select a series.
Select the series that includes the global functions being compiled. The
global functions in that series will appear in the Scripts list.
You can set a default series prior to beginning the compiling process. Select a
series from the Series list located on the toolbar. Once specified, the selected
series will appear as the default whenever a series can be selected in a window.
4. Compile scripts.
Click the Compile button to compile the selected global functions. The
Report File Name dialog box will appear. Enter the name and location
for the Compile Global Functions Status Report file, then click OK to
continue the compiling process, or click Cancel to return to the Compile
Global Functions window.
DEXTERITY UTILITIES 43
PA RT 2 U T I L I T Y R E F ER EN C E
44 DE X TE R I T Y U T IL IT IE S
C H A P T E R 4 S C R I P T U T I L I T I E S
Use caution when replacing strings using this utility. Any occurrences of the
specified string will be replaced, including partial strings. For instance, if you
replaced “Customer” with “Client”, the field name Customer_Number would
become Client_Number. You may want to search for the specified string and
view the status report first. This will allow you to see which items will be
replaced before you perform the replace operation.
You can set a default series prior to beginning the search and replace process.
Select a series from the Series list located on the toolbar. Once specified, the
selected series will appear as the default whenever a series can be selected in a
window.
DEXTERITY UTILITIES 45
46 DE X TE R I T Y U T IL IT IE S
Chapter 5: Resource Utilities
The resource utilities allow you to perform maintenance actions such as
updating series resource lists. Before performing a resource procedure, you
must choose an editable dictionary. To open an editable dictionary, choose
Open Editable Dictionary from the File menu and select the appropriate
dictionary in the dialog box that will appear.
DEXTERITY UTILITIES 47
PA RT 2 U T I L I T Y R E F ER EN C E
The series associated with forms, reports, tables and table groups have no direct
relation to the “series” that correspond to the dictionary cores. The series associated
with forms, reports, tables and table groups are used for the series resource lists,
which are described in the Updating series resources section, later in this chapter.
When you change which dictionary core a table is located in, you also
change the location of the keys and table relationships for that table.
Changing which dictionary core a table is located in doesn’t change the
series marked on the table resource itself as seen in Dexterity. If you change
the dictionary core a field is located in, the location of the physical name
resource that corresponds to that field is changed as well.
Only global fields used in tables require physical names. For this reason, the
physical name for each global field is stored as a separate resource. When a
global field is created, it’s stored in the core specified by the Default Core
drop-down list. If a physical name is added later with the Default Core set
to a different core, the physical name won’t be in the same core as the global
field. The Change Core utility can be used to remedy this situation.
48 DE X TE R I T Y U T IL IT IE S
C H A P T E R 5 R E S O U R C E U T I L I T I E S
To begin using the Change Core utility, select an editable dictionary, then
choose Change Core from the Resources menu to display the Change Core
window, shown in the following illustration.
1. Select the current core and new core for the resource.
Use the Core drop-down list to select the dictionary core containing the
resource that you want to move to a different dictionary core. Use the
New Core drop-down list to select the dictionary core that you want to
move the resource to.
DEXTERITY UTILITIES 49
PA RT 2 U T I L I T Y R E F ER EN C E
If you want to update all series resource lists for a dictionary, mark the All Resource
Types and All Series options and click Update. All series resource lists will be
updated. If you want to specify the type and series to be updated, follow the steps in
the following procedure.
50 DE X TE R I T Y U T IL IT IE S
C H A P T E R 5 R E S O U R C E U T I L I T I E S
Once your selections are made, the Resources list will automatically
display the names of any resources of the specified type and series that
are in the series resource lists. This list is informational only. It indicates
which resources of the specified type and series currently have entries
in the series resource lists. You won’t see additions, deletions or
changes to the series resource lists until you update them.
All Resource Types Mark this option if you want to update the
series lists for all resource types (forms, reports, tables and table
groups) in the selected series.
All Series Mark this option if you want to update the series resource
lists for resources of the selected type for every series.
Mark both options if you want to update all series resource lists.
DEXTERITY UTILITIES 51
52 DE X TE R I T Y U T IL IT IE S
Chapter 6: Inquiry Utilities
The inquiry utilities give you the ability to view summary information
about selected forms and resources. The two options available from this
menu are Forms and Resources. Form inquiry allows you to view all forms
in a dictionary by series, and the windows, menus and tables associated
with each. Resource inquiry allows you to view the resources in a
dictionary by series and resource type, such as table, field or data type.
DEXTERITY UTILITIES 53
PA RT 2 U T I L I T Y R E F ER EN C E
1. Select a series.
Select the series that includes the form you wish to view. The forms in
the selected series will appear in the Forms list.
You can set a default series prior to beginning the inquiry process. Select the
appropriate series from the Series list located on the tool bar. Once specified, the
selected series will appear as the default whenever a series can be selected in a
window.
2. Select a form.
Select the appropriate form; the names of the windows, menus and
tables for that form will be displayed.
54 DE X TE R I T Y U T IL IT IE S
C H A P T E R 6 I N Q U I R Y U T I L I T I E S
1. Select a series.
Select the series containing the resources for which you want
information. You can select All to display resources from all series in
the dictionary.
You can set a default series prior to beginning the inquiry process. Select the
appropriate series from the Series list located on the tool bar. Once specified, the
selected series will appear as the default whenever a series can be selected in a
window.
DEXTERITY UTILITIES 55
56 DE X TE R I T Y U T IL IT IE S
Chapter 7: Dictionary Utilities
The utilities displayed in the Utilities menu allow you to perform a variety
of maintenance procedures on a dictionary. The utilities are primarily used
to prepare an application dictionary to be sent to customers. The compress
utility, for instance, removes source code from the dictionary and
compresses it, removing all unused blocks so that the dictionary will be as
small as possible. Two other utilities allows you to create dictionary
“chunks” that you will use to package your application for delivery to
customers.
• Synchronizing a dictionary
• Using the packaging utilities
• Compressing dictionaries
• Creating chunk dictionaries
• Comparing dictionaries
• Adding product information
• Extracting
• Expanding windows
• SQL Compatibility
• Auto-Chunk
• Converting a user interface
• Changing Evaluate After
DEXTERITY UTILITIES 57
PA RT 2 U T I L I T Y R E F ER EN C E
Synchronizing a dictionary
Synchronizing a dictionary should be performed if a field’s data type has
changed, or if a data type’s control type has changed. A field’s data type
reference is stored with the window, table, key, report and system variable
resources for faster processing. If the data type changes, synchronizing the
dictionary will ensure all references are correct. The procedure also
recalculates the buffer sizes for tables and windows.
58 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
DEXTERITY UTILITIES 59
PA RT 2 U T I L I T Y R E F ER EN C E
Compressing dictionaries
The Compress utility can perform two types of compression: total
compression or removing unused blocks. Total compression removes script
source and all unused blocks from a dictionary. Total compression is used
when you’re preparing a dictionary to be distributed. Removing unused
blocks removes only unused blocks from the a dictionary, leaving the script
source intact. As you work with a dictionary, it will accumulate unused
blocks. Typically, the unused blocks are removed several times during the
development process to keep a dictionary from getting unnecessarily large.
60 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
Dexterity Utilities has the Auto-Chunk utility, which greatly simplifies the process
of creating a dictionary chunk. For this reason, we recommend that you use the
Auto-Chunk utility, rather than the Create Chunk Dictionary utility.
Installing applications
If you are creating an application that integrates with Microsoft Dynamics
GP, the dictionary chunks are combined to re-create the integrating
dictionary. If you’re creating a stand-alone application, the chunks are
recombined to create the stand-alone dictionary. Chunk dictionaries are
used for two reasons:
Updating applications
If you’re updating an application that integrates with Microsoft Dynamics
GP, the dictionary chunks add or change resources in the integrating
dictionary. If you’re updating a stand-alone dictionary, the chunks merge
with the main dictionary to add or change resources. Also, the dictionary
chunks update the core resources in the forms and reports dictionaries
associated with the integrating or stand-alone dictionary.
DEXTERITY UTILITIES 61
PA RT 2 U T I L I T Y R E F ER EN C E
The Extract utility, used To begin creating the chunk dictionary, select a source dictionary. The
to make an extracted source dictionary is the dictionary containing the resources you want to
dictionary, is described transfer to the chunk dictionary. (This is the application dictionary for
later in this chapter. stand-alone applications or the extracted dictionary for integrating
applications.) Next, choose Create Chunk Dictionary from the Utilities
menu.
If you clicked Yes a dialog box will appear, allowing you to select a
dictionary chunk to edit. If you clicked No, a dialog box will appear,
allowing you to specify the name and location of the new chunk
dictionary.
62 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
4. Select a module.
This selection indicates which module the Major Version, Minor
Version and Build Number information is associated with. (These are
the fields below the Module field.) The setting in the Module field is
used when the version numbers and build number are retrieved from
the dictionary.
The values you choose for the major version and minor version are
significant. If the installation folder contains a dictionary for a previous
version of your product dictionary, the dictionary chunk you are
creating will unchunk only if the major version and minor version
numbers in the chunk match those in the existing dictionary. If the
version numbers don’t match, an error indicating the issue will be
written to the InstallErrors.txt file in the installation folder. The
dictionary chunk won’t be deleted.
DEXTERITY UTILITIES 63
PA RT 2 U T I L I T Y R E F ER EN C E
If you have multiple dictionary chunks with the same major version
and minor version values, the build number is used to determine the
order in which the dictionary chunks are unchunked. The chunks with
lower build number values are unchunked first.
If the installation folder contains a dictionary for which the major and
minor version numbers match those of the dictionary chunk, the build
number will be examined. If the build number of the chunk is the same
or greater than the build number of the dictionary, the chunk will be
unchunked. If the build number of the chunk is lower, it will not be
unchunked, and a message indicating the issue will be written to the
InstallErrors.txt file in the installation folder. The dictionary chunk will
be deleted.
64 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
If you’re making a single chunk dictionary, first add all forms and
reports from your dictionary to the Chunk Dictionary Modules list.
Then add all core resources for the series listed from Financial through
System in the Series list. Core resources for the Company through
Report Writer series can be ignored because they contain duplicate
resources from the System series. When you’ve finished, the size of the
chunk dictionary should be nearly the same size as the source
dictionary. (You can see this by viewing the Total fields beneath the
source dictionary and the chunk dictionary lists.)
The Compare If you’re updating an application, use the report generated by the
Dictionaries utility is Compare Dictionaries utility to determine which dictionary modules
described later in this you need to include in your update chunk. Be sure the update chunk
chapter. contains the [Core] System Core Tables and the [Core] System Install
modules so the update chunk will merge properly.
DEXTERITY UTILITIES 65
PA RT 2 U T I L I T Y R E F ER EN C E
66 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
Comparing dictionaries
Refer to Chapter 60, At some point after you’ve shipped your application to customers, you may
“Updating an Applica- need to send an update. The extent of changes in your application
tion,” in Volume 1 of determines the method you will use to package your update.
the Dexterity Program-
mer’s Guide for infor- • If you’re adding major new functionality to your application, you
mation about updating should consider having your customers install a new version and
stand-alone applica- migrate data to it from their current version.
tions.
• If you’re including only problem fixes and minor application changes,
you can send your update in the form of a dictionary chunk. To do this,
Refer to Chapter 52,
the Compare Dictionaries utility is used to indicate which resources
“Updating an Applica-
have changed in the updated version.
tion,” in the Integration
Guide for information To determine what to include in the update, you will be comparing the
about updating appli- updated dictionary with the version of the dictionary your customers
cations that integrate currently have. The Dictionary Comparison report generated by the
with Microsoft Dynam- Compare Dictionaries utility lists the dictionary modules that have been
ics GP. added or changed in the updated dictionary. These are the modules that
must be included in the update.
The Extract utility, used To compare two dictionaries, open the original dictionary as a source
to make an extracted dictionary and the dictionary you’ve made changes to (the compare
dictionary, is described dictionary) as an editable dictionary. If your application integrates with
later in this chapter. Microsoft Dynamics GP, you will compare the extracted dictionary from the
original version of your application with the extracted dictionary from the
updated version of your application. When you’ve selected the dictionaries,
choose Compare from the Utilities menu to display the Compare
Dictionaries window, shown in the following illustration.
DEXTERITY UTILITIES 67
PA RT 2 U T I L I T Y R E F ER EN C E
The comparison report lists the dictionary modules that you need to
include when using the Create Chunk Dictionary window to create the
update chunk. The following illustration shows a report comparing
versions 1 and 2 of the Real Estate Sales Manager application.
Dictionary Comparison
68 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
DEXTERITY UTILITIES 69
PA RT 2 U T I L I T Y R E F ER EN C E
You must provide names for the forms and reports dictionaries, even if the
Modifier and Report Writer won’t be used in your application. Otherwise, the
launch file won’t work properly.
70 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
DEXTERITY UTILITIES 71
PA RT 2 U T I L I T Y R E F ER EN C E
Extracting
This utility is used when you develop your application in the Dynamics.dic
dictionary, then want to create a dictionary to operate in multidictionary
mode. The extract utility copies, or “extracts” resources with resource IDs
22,000 or greater from the Dynamics.dic dictionary and places them in a
separate dictionary. The extract process excludes any Microsoft Dynamics
GP resources, since these resource IDs are numbered below 22,000.
The Extract utility only copies resources from the modified dictionary. It doesn’t
remove any resources from the Dynamics.dic dictionary.
To extract resources, select a source dictionary, then choose Extract from the
Utilities menu to open the Extract window, shown in the following
illustration.
1. Click OK.
Click OK to begin the process of creating a new dictionary in which to
store the extracted resources.
The Extract utility will begin creating the new dictionary and extracting
the resources. As the resources are extracted, the types of resources
being processed, such as system strings, and form and report names,
will be displayed in a progress window.
72 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
The only resources extracted will be those with IDs equal to or greater
than 22,000. The numbers within this range are those created for an
integrating application; resources specific to Microsoft Dynamics GP
will be less than 20,000; IDs between 20,000 and 22,000 are reserved for
the runtime Report Writer and Modifier resources.
You can’t perform any development in the extracted dictionary. Opening the
extracted dictionary with Dexterity and attempting to make changes could
corrupt the dictionary. Instead, you must make changes in the modified
Dynamics.dic dictionary, then re-extract.
DEXTERITY UTILITIES 73
PA RT 2 U T I L I T Y R E F ER EN C E
Expanding windows
This utility is used when you create an international version of your
application. It expands all windows and window fields in your application
by a specified percentage to allow room for international characters.
2. Click OK.
A progress window will appear while the windows and fields are being
altered. The windows and fields will appear expanded when you view
them at runtime or edit them in the Dexterity layout window.
74 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
SQL Compatibility
Use this utility when preparing an application dictionary for use with a
SQL database. This utility examines a dictionary for the following
conditions, which would prevent the application from working properly
with SQL:
Refer to Appendix A, • SQL limits that have been exceeded. The following limits are tested: the
“Dexterity Limits,” in number of fields in the table definition, the record size of each table, the
Volume 2 of the Dex- number of keys for each table and the number of segments in each key.
terity Programmer’s
Guide for the specific • Table fields that don’t have physical names.
limit values.
• Table field physical names that are SQL reserved words.
DEXTERITY UTILITIES 75
PA RT 2 U T I L I T Y R E F ER EN C E
Field Physical Names Mark this option to find out which table
fields don’t have physical names.
Reserved Words Mark this option to examine table fields to find out
whether the physical names are SQL reserved words.
Create Index Mark this option to examine the SQL key options for
each key of every table in the application dictionary.
You may want to generate and examine the report listing any SQL
incompatibilities before you choose to make the dictionary compatible. This
allows you to see the changes that are required before they are actually made.
When you click Make Compatible, the following changes will be made
to remove incompatibilities:
• If you marked the Field Physical Names option, any table field that
doesn’t have a physical name will be given one. The physical name
will be based upon the field name.
• If you marked the Reserved Words option, any table field physical
names that are SQL reserved words will have an integer appended
to the name. The physical name will be truncated, if necessary.
• If you marked the Table Database Types option, any tables that
don’t have SQL or Default as their database type will be changed to
have Default as the database type.
76 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
• The Create Index SQL key option will be marked for each key of
every table in the dictionary.
While the SQL Compatibility utility can locate and make changes to overcome
certain SQL incompatibilities, its use doesn’t guarantee that an application
will work fully with SQL.
DEXTERITY UTILITIES 77
PA RT 2 U T I L I T Y R E F ER EN C E
Auto-Chunk
Refer to Part 11, Pack- This utility allows you to easily create a single chunk from your extracted or
aging Applications, stand-alone application dictionary. The dictionary chunk is part of what
in Volume 1 of the Dex- you deliver to your customer. The auto-chunk utility automatically
terity Programmer’s performs the following:
Guide for information
about packaging and • If no product information has been added to the dictionary from which
updating stand-alone you are making a chunk, the Product Information window is displayed
applications. automatically, allowing you to add product information.
Refer to Part 11, Pack- • Automatically transfers all dictionary modules from the dictionary you
aging Your Applica- specified to a new chunk dictionary.
tion, in the Integration
Guide for more infor- • Updates series resources in the chunk dictionary automatically.
mation about packag-
ing and updating • Compresses the chunk dictionary based upon the compression option
applications that inte- you specify.
grate with Microsoft
Dynamics GP. To begin creating the chunk dictionary, select an editable dictionary. The
editable dictionary is the dictionary that the chunk dictionary will be
created from. (This is the application dictionary for stand-alone
applications or the extracted dictionary for integrating applications.) Next,
choose Auto-Chunk from the Utilities menu. The Auto-Chunk window will
appear.
78 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
You can change this name if you want the dictionary created during the
unchunking process to have a different name than the default name.
3. Select a module.
This selection indicates which module the Major Version, Minor
Version and Build Number information is associated with. (These are
the fields below the Module field.) The setting in the Module field is
used when the version numbers and build number are retrieved from
the dictionary.
DEXTERITY UTILITIES 79
PA RT 2 U T I L I T Y R E F ER EN C E
The values you choose for the major version and minor version are
significant. If the installation folder contains a dictionary for a previous
version of your product dictionary, the dictionary chunk you are
creating will unchunk only if the major version and minor version
numbers in the chunk match those in the existing dictionary. If the
version numbers don’t match, an error indicating the issue will be
written to the InstallErrors.txt file in the installation folder. The
dictionary chunk won’t be deleted.
If you have multiple dictionary chunks with the same major version
and minor version values, the build number is used to determine the
order in which the dictionary chunks are unchunked. The chunks with
lower build number values are unchunked first.
If the installation folder contains a dictionary for which the major and
minor version numbers match those of the dictionary chunk, the build
number will be examined. If the build number of the chunk is the same
or greater than the build number of the dictionary, the chunk will be
unchunked. If the build number of the chunk is lower, it will not be
unchunked, and a message indicating the issue will be written to the
InstallErrors.txt file in the installation folder. The dictionary chunk will
be deleted.
80 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
DEXTERITY UTILITIES 81
PA RT 2 U T I L I T Y R E F ER EN C E
82 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
Refer to Chapter 11, Use System Colors Mark this option to change the FontColor,
“Windows,” in Vol- BackColor and LineColor properties for application objects to System.
ume 1 of the Dexterity Once System becomes the default color, the object will inherit colors as
Programmer’s Guide defined using the operating system’s control panel settings for color.
for more information This utility will perform the following system color conversions:
about using system
colors. Object Conversion information
Push buttons Sets the BackColor and FontColor properties of all push
buttons to System.
Fields Sets the FontColor property of all fields to System.
For all fields whose BackColor property is White or Light Gray,
sets the BackColor property to System (unless the fields are in
a scrolling window).
For all fields whose Editable property is false, sets the
BackColor property to System, and the Appearance property to
3D Border.
Graphics For all graphics (lines, rectangles, rounded rectangles and
circles) whose LineColor property is Medium Gray, sets the
LineColor property to System.
For all graphics in a scrolling window, sets the LineColor
property to System.
Static text Sets the FontColor property to System.
Windows Sets the BackColor property to True.
• List box
• Text
• Radio button
DEXTERITY UTILITIES 83
PA RT 2 U T I L I T Y R E F ER EN C E
• Check box
• Line – For adjoining lines that are of equal length, the utility will
delete the bottommost or rightmost line and set the remaining
line’s Appearance property to 3D Border.
Use Visual Indicator for Zooms Mark this option to add a visual
indicator to zoom field prompts. This utility will search for any static
text overlapping a zoom push button (a push button whose Zoom
property is true) and set the static text item’s Zoom property to true.
You can choose to display the following visual indicators for zoom field
prompts:
Refer to the • Display an underline for all zoom field prompts. You can show or
Field_SetZoom- hide this underline using the Field_SetZoomFormat() function. If
Format() function in you don’t use this function, the application will attempt to use the
the Function Library defaults file setting that specifies this characteristic. If this defaults
Reference manual for file setting doesn’t exist, the prompt will appear underlined.
more information.
• Change the color of all zoom field prompts. You can specify color
using the Field_SetZoomFormat() function. If you don’t use this
function, the application will attempt to use the defaults file setting
that specifies the zoom prompt color. If this defaults file setting
doesn’t exist, the prompt color will be black.
The underline and font color serve as visual cues, indicating the
presence of a zoom field. The following illustration shows how a
converted zoom field’s prompt will look:
84 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
Use Custom Colors for Prompts Mark this option to use custom
prompt colors for all cyan prompts (rectangles or single-line entry
fields with their BackColor property set to Cyan) that are 18 pixels high.
The following actions are performed for each cyan prompt box or
single-line entry field:
Refer to the Field_Set- • Sets the prompt’s BackColor, FontColor, PatternColor and Pattern
CustomPrompt- properties to Custom. The Custom setting allows you change the
Format() function in color and pattern of prompts using the Field_SetCustomPrompt-
the Function Library Format() function.
Reference manual for
more information. • Sets the Border property to true.
These defaults do not apply to static text items for controls such as push
buttons, check boxes and radio buttons. Your operating system color
settings control the display characteristics for those objects if you
convert your application using the Use System Colors option.
DEXTERITY UTILITIES 85
PA RT 2 U T I L I T Y R E F ER EN C E
Refer to the Field_Set- Use Custom Colors For Scrolling Windows Mark this option
AltLineColor() func- to globally apply custom color support for scrolling window lines. This
tion in the Function utility will change the AltLineColor property for all scrolling windows
Library Reference man- to true. It also sets the BackColor, FontColor, Pattern and PatternColor
ual for more informa- properties to Custom. Scrolling windows will then display alternating
tion. scrolling window lines in the color you defined using the
Field_SetAltLineColor() function.
Collapse Drop Down Lists and Combo Boxes Mark this option
to set properties for drop-down list and combo box fields. Drop-down
lists appearing in the control area will be resized to 20 pixels high. All
other drop-down lists will be resized to 18 pixels high. Combo boxes
will be resized to 20 pixels high. Both drop-down lists and combo boxes
will have the VisibleItems property set to 8.
86 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
Adjust Field Alignment Push buttons with static text values now
honor the Alignment property. Mark this option to properly set the
alignment of text that appears on push buttons.
New Palette Style Mark this option to update palettes to use the
new palette style. The following actions are performed for each palette:
• The positions of the push pin and palette title are exchanged.
• Graphical push buttons are moved from the window and their
Visible property is set to false.
• Prompt push buttons are widened to the width of the palette win-
dow.
• The prompt fields are positioned three pixels from the left edge of
the palette window.
• The data type used for the prompt button is updated to use native
pictures as the static items, rather than text. Then the following
properties are set for each prompt button:
Property Value
Appearance 3D Highlight
BackColor Transparent
Position-Left 0
Position-Top Current value + 4
Size-Width 128
Visible True
DEXTERITY UTILITIES 87
PA RT 2 U T I L I T Y R E F ER EN C E
The prompt button must be based on a global push button data type for the
button to appear properly. Otherwise, the prompt button won’t appear with the
3D highlight.
• The following properties are set for each prompt string field that
displays the prompt text:
Property Value
BackColor System
Border False
Size-Width 125
Position-Left 3
Position-Top Current value + 4
88 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
Refer to the section System colors If you choose the Use System Colors option, all
titled System color windows in your application will inherit system colors as the window
support - automatic in background color. However, bitmaps that appear in these windows will
Chapter 11, “Win- keep their original background color, and the backgrounds may not
dows,” in Volume 1 of match.
the Dexterity Program-
mer’s Guide for infor- To address this problem, you’ll need to use the special background
mation about making color for the bitmap. The RGB values for this color are Red=192,
pictures blend with the Green=192 and Blue=192 on a scale of 255. If you use a paint or draw
window background application that specifies RGB colors as percentages, use the following
color. percentages: Red=75.294%, Green=75.294% and Blue=75.294%.
Changing the background color of the bitmap to this specific color
allows the bitmap’s background color to blend automatically with
whatever window background color the user selects.
DEXTERITY UTILITIES 89
PA RT 2 U T I L I T Y R E F ER EN C E
To use the Evaluate After utility, select an editable dictionary. Next, choose
Change Evaluate After from the Utilities menu. The Evaluate After Utility
window will appear.
If you are checking reports that integrate with Microsoft Dynamics GP, look in
the SDK (Software Development Kit) for a list of the unsafe functions in each
of these products.
90 DE X TE R I T Y U T IL IT IE S
C H A P T E R 7 D IC T I O N A R Y U T I L I T I E S
You can load a list of unsafe functions by clicking Browse and selecting
the text file that contains the list of unsafe functions, then clicking Load.
Modified Reports that contain calculated fields that don’t use any
unsafe functions. Evaluate After will be set to <any> for each calculated
field in these reports.
Unchanged Reports that contain calculated fields that don’t use any
unsafe functions. Evaluate After is already set to <any> for these
calculated fields, so no changes are required.
DEXTERITY UTILITIES 91
92 DE X TE R I T Y U T IL IT IE S
PART 3: REPORT REFERENCE
Part 3: Report Reference
Use this portion of the documentation to learn about the reports available in
Dexterity Utilities. You may want to print reports from time to time when
developing or modifying a dictionary to keep information about the
dictionary on hand.
Printing reports
Before you can print reports, you must open the dictionary for which you
want information. All reports, with the exception of the Global Resource
Usage and Local Resource Usage reports, require a source dictionary. The
local and global resource usage reports require an editable dictionary.
After opening a dictionary, select the report you want to print from the
Reports menu. A window will appear, allowing you to specify options for
the report. Choose the appropriate options and click Print. All reports
generated by Dexterity Utilities are printed directly to a text file. A dialog
box will appear, allowing you to name the text file. You can open the text
file using any text editor. Reports have the best appearance if displayed in a
monospaced font.
When reviewing the sample reports, keep in mind that information on most
is only a sample of the kind of information you can include on the report.
For example, while you can choose to print script information on several
reports, we’ve chosen to illustrate it on only the Forms report.
94 DE X TE R I T Y U T IL IT IE S
PA RT 3 R E P O R T R E F E R E N C E
Reports summary
The following table summarizes the reports most commonly used to view
information about specific resources.
DEXTERITY UTILITIES 95
PA RT 3 R E P O R T R E F E R E N C E
96 DE X TE R I T Y U T IL IT IE S
PA RT 3 R E P O R T R E F E R E N C E
DEXTERITY UTILITIES 97
PA RT 3 R E P O R T R E F E R E N C E
98 DE X TE R I T Y U T IL IT IE S
PA RT 3 R E P O R T R E F E R E N C E
DEXTERITY UTILITIES 99
PA RT 3 R E P O R T R E F E R E N C E
100 DE X TE R I T Y U T IL IT IE S
F O R M S RE P O R T
Forms Report
The Forms Report contains information about a form and the windows,
fields, tables, menus and scripts that are part of the form. This report can
also be used to print the scripts attached to the form and to the windows,
fields and menus for the form.
To use the Forms Report, open a source dictionary and choose Forms from
the Reports menu. The Forms Report window will appear, as shown in the
following illustration.
Scripts Only Mark this option to print only script information. Other
information won’t be included in the report.
Table Information This option allows you to include information
about all tables used by each form selected.
Window Information This option allows you to include details
about all windows within each form.
Menu Information This option allows you to include information
about any menus that are part of each form.
Prompts placed on the The second Script and Field Detail list allows you to specify the level of
window using the text field detail to print for each field on a window in the form. Select one of
tool are static window four options:
fields.
• Name Only–All – Lists only the name of all window fields.
102 DE X TE R I T Y U T IL IT IE S
F O R M S RE P O R T
Forms Report
Dictionary: HD1:RESM.DIC
Form Resources
____________________________________________________________________________________
Form : Houses
Series : Sales
Pre-form Script : None
Post-form Script: None
Table Display Name Physical Name Table Group Access
_____________________________________________________________________________________________________________
House_Pictures House Pictures HOUSEPIC House Tables Read/Write
House_Descriptions House Descriptions HOUSEDES House Tables Read/Write
Seller_Data Seller Data SELLDAT Seller Tables Read/Write
House_Data House Data HOUSEDAT House Tables Read/Write
Reports Report
The Reports Report contains information about reports that have been
created in a dictionary.
To use the Reports Report, open a source dictionary and choose Reports
from the Reports menu. The Reports Report window will appear, as shown
in the following illustration.
104 DE X TE R I T Y U T IL IT IE S
R E PO RT S RE P O R T
Reports Report
Dictionary: HD1:RESM.DIC
Report Resources
____________________________________________________________________________________
Report : Seller Report
Series : Sales
Type : Graphics
Options :
First Page Header
First Page Footer
Tables :
Seller_Data using key Seller_Data_By_ID
House_Data(1-M)
Sort :
Restrict :
This report prints a list of all individuals who currently have real estate for sale.
Tables used:
Seller_Data is the main table for this report.
House_Data is a related table.
____________________________________________________________________________________
Tables Report
The Tables Report contains information about tables in a dictionary. The
report can include the display and physical names of the table, the record
size, information about fields in the table, and the name of the table group
to which the table belongs (if any).
To use the Tables Report, open a source dictionary and choose Tables from
the Reports menu. The Tables Report window will appear, as shown in the
following illustration.
Keys Mark this option to list the keys in the table. A list of fields in
each key and the attributes of the key will follow each key name.
106 DE X TE R I T Y U T IL IT IE S
T A B L E S R E P O R T
• Name
• Control type
• Static values for list boxes, drop-down lists, push buttons, radio
buttons, check boxes and visual switches
Tables Report
Dictionary: HD1:RESM.DIC
Table Resources
____________________________________________________________________________________
Table : Seller_Data Record Size : 152
Display Name : Seller Data Physical Name: SELLDAT
Database Type: Default
Series : Sales Table Group : Seller Tables
Options : Use 4 byte header
String Attribute Legend: U-Uppercase A-Alphanumeric #-Numeric Only
Lengths String Currency Range
Field Name Storage Type Keyable Storage Attributes Low High
_____________________________________________________________________________________________________________
Seller ID String 6 8 [ ]
Seller Name String 30 32 [ ]
Address String 30 32 [ ]
City String 20 22 [ ]
State String 2 4 [U A ]
ZIP Code String 9 10 [ #]
Phone String 10 12 [ #]
Agent String 30 32 [ ]
Keys
____________________________________________________________________________________
Seller_Data_By_ID
Seller ID
Key Length: 8
Seller_Data_By_Name
Seller Name
Key Length: 32
Max Key Length: 32
Relationship :
____________________________________________________________________________________
22000
Seller_Data links to many records of table House_Data using key House_Data_By_Seller_ID
Linked fields:
Seller ID
____________________________________________________________________________________
108 DE X TE R I T Y U T IL IT IE S
G L O BA L F U N C T I O N S RE P O R T
To use the Global Functions Report, open a source dictionary and choose
Global Functions from the Reports menu. The Global Functions Report
window will appear, as shown in the following illustration.
Dictionary: HD1:RANDOM.DIC
Functions
____________________________________________________________________________________
FUNCTION: random() !10093001!
____________________________________________________________________________________
function returns currency random_number.
{Keep the current seed. This will be used to get the next random number in the
stream.}
set temp to seed of globals.
110 DE X TE R I T Y U T IL IT IE S
G L O BA L P RO C E D U RE S RE P O R T
To use the Global Procedures Report, open a source dictionary and choose
Global Procedures from the Reports menu. The Global Procedures Report
window will appear, as shown in the following illustration.
Dictionary: HD1:RESM.DIC
Global Procedures
____________________________________________________________________________________
PROCEDURE: Progress_Control !1009155F0!
____________________________________________________________________________________
{--------------------------------------------------------------------------
Script name: Progress_Control
Type: Procedure Script
Description:
This script updates the Progress_Control window based upon the ratio
of the two values passed to this script. The ratio is used to update
a visual switch that shows progress between 0% and 100%.
--------------------------------------------------------------------------}
in long Current_Value.
in long Total_Value.
112 DE X TE R I T Y U T IL IT IE S
G L O B A L RE S O U RC E S RE P O R T
To use the Global Resources Report, open a source dictionary and choose
Global Resources from the Reports menu. The Global Resources window
will appear, as shown in the following illustration.
• Table, Table Group, Form and Report lists – List name, list mem-
bers and their internal and display names.
• Global Fields – Name, data type, control type, keyable length, stor-
age length and static values.
• Table Groups – Name, member tables and the table group display
name.
• To include all global resources of all types in the report, choose All
Resources. This option may result in a lengthy report.
114 DE X TE R I T Y U T IL IT IE S
G L O B A L RE S O U RC E S RE P O R T
Dictionary: HD1:RESM.DIC
Global Field Resources
____________________________________________________________________________________
Lengths Lookup Form
Field / Data Type Array Storage Type Keyable Storage Values
____________________________________________________________________________________
Address
STR30 String 30 32
Agent
STR30 String 30 32
Air Conditioned
Air Conditioned Radio Group 3 2
1 Yes
2 No
Asking Price
CUR9 Currency 12 10
Baths
INT2 Integer 2 2
Bedrooms
INT2 Integer 2 2
Buyer ID
Buyer_ID String 6 8
Buyer Name
STR30 String 30 32
Buyers Button
PB_Buyers Push Button 13 2
1 [Pict] Buyers Button Up
2 [Pict] Buyers Button Down
City
STR20 String 20 22
Description
Text32000 Text [Var Len] 32000 0
Expand Button
Expand Button Visual Switch 16 2
1 [Pict] Scroll_Win_Expand_Down
2 [Pict] Scroll_Win_Expand_Up
Floor Space
INT5 Integer 5 2
ZIP Code
ZIP_STR9 String 9 10
____________________________________________________________________________________
To use the Local Resources Report, open a source dictionary and choose
Local Resources from the Reports menu. The Local Resources window will
appear, as shown in the following illustration.
116 DE X TE R I T Y U T IL IT IE S
LO C A L RE S O U RC E S RE P O R T
• Local Fields – Name, data type, array size, control type, keyable
length, storage length and static values.
• To include all local resources of all types in the report, choose All
Resources. This option may result in a lengthy report.
Dictionary: HD1:RESM.DIC
Form: Houses
Local Field Resources
____________________________________________________________________________________
Lengths Lookup Form
Field / Data Type Array Storage Type Keyable Storage Values
____________________________________________________________________________________
Amount Financed
Amount Financed Currency 12 10
Calculate
Calculate Push Button 9 2
1 Calculate
Clear Button
Clear Button Push Button 5 2
1 Clear
Closing Cost Percentage
Closing Cost Percentage Currency 6 10
Closing Costs
Closing Costs Currency 10 10
Delete Button
Delete Button Push Button 6 2
1 Delete
Description Button
Description Button Push Button 11 2
1 Description
DownPayment
DownPayment Currency 12 10
Interest_Rate
Interest_Rate Currency 7 10
Match Buyers
Match Buyers Push Button 12 2
1 Match Buyers
Monthly Payment Button
Monthly Payment Button Push Button 10 2
1 Payment...
Monthly_Payment
Monthly_Payment Currency 12 10
Payments_per_Year
Payments_per_Year Integer 4 2
Years
Years Integer 2 2
____________________________________________________________________________________
118 DE X TE R I T Y U T IL IT IE S
R E S O U RC E L I S T S
Resource Lists
The Resource Lists report is used to view the names of resources and their
associated resource ID numbers. It is also useful for identifying the
dictionary core and module in which specific resources are located. Refer to
Appendix A, “Dictionary Structure,” for more information about the
structure of a dictionary.
To use the Resource Lists report, open a source dictionary and choose
Resource Lists from the Reports menu. The Resource Lists window will
appear, as shown in the following illustration.
120 DE X TE R I T Y U T IL IT IE S
R E S O U RC E L I S T S
Resource Lists
Dictionary: HD1:RESM.DIC
Resource Lists
____________________________________________________________________________________
To use the Global Resource Usage Report, open an editable dictionary and
choose Global Resource Usage from the Reports menu. The Global
Resource Usage window will appear, as shown in the following illustration.
122 DE X TE R I T Y U T IL IT IE S
G L O B A L R E S O U RC E U S A G E R E P O R T
• Composites
• Data Types
• Formats
• Forms
• Global Fields
• Mac Pictures
• Metafiles
• Pictures
• Relationships
• Reports
• Strings
• Table Groups
• Tables
You may want to print and review the report listing the unused resources
before you actually remove them from the dictionary.
Use caution when removing unused global fields. If a global field is used only
as a local variable type in a script, this report will consider it unused and will
delete it from the dictionary.
124 DE X TE R I T Y U T IL IT IE S
G L O B A L R E S O U RC E U S A G E R E P O R T
Dictionary: HD1:RESM.DIC
Field Usage
____________________________________________________________________________________
Occurrences of 'House ID':
Table House_Descriptions
Table House_Data
Table House_Pictures
Table Candidate_Houses_List
Key House_Descriptions_By_ID
Key House_Data_By_ID
Key House_Pictures_By_ID
Key Candidate_Houses_List_By_ID
Form : Houses
Window Houses
Window Monthly_Payment
Form : House_Lookup
Window House_Lookup_Scroll [Scrolling Window]
Number of occurrences: 11
Occurrences of 'Description':
Table House_Descriptions
Form : Houses
Window House_Description
Number of occurrences: 2
Window Tool_Bar
Number of occurrences: 1
To use the Local Resource Usage Report, open an editable dictionary and
choose Local Resource Usage from the Reports menu. The Local Resource
Usage window will appear, as shown in the following illustration.
1. Select a series.
Select the series containing the form for which you want to print
information about local resources.
2. Select a form.
Select the form for which you want to print local resource information.
126 DE X TE R I T Y U T IL IT IE S
LO C A L RE S O U RC E U S A G E RE P O R T
Dictionary: HD1:RESM.DIC
Unused Local Fields
____________________________________________________________________________________
Yes
No
PushButton5
DDL6
____________________________________________________________________________________
128 DE X TE R I T Y U T IL IT IE S
L IN K E D P RO M P T RE P O R T
To use the Linked Prompt Report, open a source dictionary and choose
Linked Prompts from the Reports menu. The Linked Prompt Report
window will appear, as shown in the following illustration.
• All Fields and Prompts – List all fields and prompts, including
fields with no assigned prompt.
130 DE X TE R I T Y U T IL IT IE S
L IN K E D P RO M P T RE P O R T
Dictionary: HD1:RESM.DIC
Linked Prompt Report
____________________________________________________________________________________
Form : Sellers
Window: Sellers
Field Prompt
____________________________________________________________________________________
Seller ID Seller ID:
Seller Name Seller Name:
Address Address:
City City, State, ZIP:
State City, State, ZIP:
ZIP Code City, State, ZIP:
Phone Phone:
Agent Agent:
____________________________________________________________________________________
The only difference between the Diagnostics Report and Emergency Diagnostics
Report is that for the Emergency Diagnostics Report, the Diagnostics window isn’t
displayed and all report information is always included.
If no items appear in the Dictionary Modules list, the section of the dictionary
containing module information may be damaged. In this rare instance, nothing can
be recovered from the dictionary.
132 DE X TE R I T Y U T IL IT IE S
D I A G N O S T I C S R E P O R T ( E M E R G E N C Y D I A G N O S T I C S )
Block Table Mark this option to include a block table in the report.
The block table lists information about each block in the dictionary,
such as its size and location in the dictionary.
We recommend that you include the block table because if the Diagnostics
Report finds any problems with the dictionary, they will be listed in the block
table section.
Keep in mind that the Diagnostics Report may not find all types of dictionary
corruption.
You have two options to deal with the corrupt resources: delete the
corrupt resources or transfer the undamaged resources to a new
dictionary.
134 DE X TE R I T Y U T IL IT IE S
D I A G N O S T I C S R E P O R T ( E M E R G E N C Y D I A G N O S T I C S )
If the physical and calculated sizes don’t match, run a disk diagnostic
utility such as Norton Disk Doctor, CHKDSK.EXE or SCANDISK.EXE.
In some cases these utilities can find and repair problems in dictionary
files.
Diagnostics Report
Dictionary: HD1:RESM.DIC
Module Information
____________________________________________________________________________________
Num mods 32 Num unused 50
Mtype Modid DirBlock Noffset Nlength
2 22000 163 641 10
2 22001 196 46 7
2 22002 213 104 13
2 22003 230 117 8
2 22004 247 125 14
2 22005 264 222 17
2 22006 281 239 10
2 22007 298 249 7
2 22008 315 501 13
3 22000 322 256 14
3 22001 327 594 17
3 22002 332 611 17
3 22003 341 628 13
3 22005 350 651 13
System Core
# Types 13 # Unused type slots 0
# allocated res slots 186 # unallocated res slots 10
Number of types: 8
=========================================================================
____________________________________________________________________________________
136 DE X TE R I T Y U T IL IT IE S
S U M M A RY R E PO RT S
Summary Reports
The Summary Reports list information about tables in a dictionary or all
global fields in a dictionary. The table summary report includes the table
name, series, table display name, table physical name and the table group
to which the table belongs (if any). The field summary report includes the
name, array size, physical name and data type used for each field.
Dictionary: HD1:RESM.DIC
Table Resources - Summary
____________________________________________________________________________________
Table Series Display Name Physical Name Table Group
___________________________________________________________________________________________________________
House_Descriptions Sales House Descriptions HOUSEDES House Tables
Seller_Data Sales Seller Data SELLDAT Seller Tables
House_Data Sales House Data HOUSEDAT House Tables
House_Pictures Sales House Pictures HOUSEPIC House Tables
Buyer_Data Sales Buyer Data BUYERDAT Buyer Tables
Candidate_Buyers_List Sales Candidate Buyers List temp [None]
Candidate_Houses_List Sales Candidate Houses List temp [None]
138 DE X TE R I T Y U T IL IT IE S
S U M M A RY R E PO RT S
Dictionary: HD1:RESM.DIC
Field Report - Summary
____________________________________________________________________________________
Field Array Physical Name Datatype Storage Type Format
_______________________________________________________________________________________________________________
Address Address STR30 String
Agent Agent STR30 String
Air Conditioned Air Conditioned Air Conditioned Radio Group
Asking Price Asking Price CUR9 Currency CUR
Baths Baths INT2 Integer
Bedrooms Bedrooms INT2 Integer
Buyer ID Buyer ID Buyer_ID String
Buyer Name Buyer Name STR30 String
Buyers Button PB_Buyers Push Button
City City STR20 String
Description Description Text32000 Text [Var Len]
Expand Button Expand Button Visual Switch
Floor Space Floor Space INT5 Integer
Floors Floors INT2 Integer
Garages Garages INT2 Integer
Heating Type Heating Type Heating_Type Drop Down List
House ID House ID House_ID String
House Type House Type House_Type Drop Down List
Houses Button PB_Houses Push Button
Lookup Button [ 5] PB_Lookup Push Button
Maximum Price Maximum Price CUR9 Currency CUR
Minimum Price Minimum Price CUR9 Currency CUR
Monthly Utility Cost Monthly Utility Cost CUR6 Currency CUR
No No Radio Button
Normal Button Normal Button Visual Switch
Phone Phone STR10_Phone String
STR10_Phone
Picture Picture Picture Picture [Var Len]
Progress_Bar Progress_Bar Visual Switch
Progress_Bar_Status Progress_Bar_Status Integer
Reports Button BDL_Reports Button List
Seller ID Seller ID Seller_ID String
Seller Name Seller Name STR30 String
Sellers Button PB_Sellers Push Button
To use the Cross Link Analysis report, open a source dictionary and choose
Cross Link Analysis from the Reports menu. The Cross Link Analysis
window will appear, as shown in the following illustration.
2. Use the Cross Link Analysis report to verify that there are
no cross-linked resources.
If no cross-linked resources are found in the dictionary, the Cross Link
Analysis report won’t contain any entries. If any resources are cross-
linked, you must take measures to fix the problem. Typically, this
involves deleting the incorrect reference to the cross-linked resource
and recreating the script, key or table relationship that should be
referenced.
140 DE X TE R I T Y U T IL IT IE S
C R O S S L I N K A N A L Y S I S R E P O R T
Dictionary: HD1:RESM.DIC
Cross-link Report
____________________________________________________________________________________
Form: Sellers
FIELD CHANGE script 22000 Sellers l_Save Button_CHG FIELD (L) Save Button
FIELD CHANGE script 22000 Sellers l_Save Button_CHG FIELD (L) Clear Button
FIELD CHANGE script 22000 Sellers l_Save Button_CHG FIELD (L) Clear Button
FIELD CHANGE script 22000 Sellers l_Save Button_CHG FIELD (L) Save Button
To use the Prompt Overflow report, open a source dictionary and choose
Prompt Overflow Report from the Reports menu. A file dialog box will
appear, allowing you to specify the name and location of the Prompt
Overflow Report. A sample Prompt Overflow Report is shown on the
following page.
142 DE X TE R I T Y U T IL IT IE S
P R O M P T O V E R F L O W R E P O R T
We recommend that you run the Referential Diagnostics Report before you ship
your application to customers. This will alert you to any improperly referenced
resource in the application, which could cause problems not detectable by ordinary
testing.
144 DE X TE R I T Y U T IL IT IE S
R E F E R E N T I A L D I A G N O S T IC S R E P O R T
For example, if a data type is deleted, fields that used it will no longer
properly reference a data type. Open the field definition for any field
that referenced the deleted data type and choose another data type.
In other cases, you may have to remove the references to resources that
have been deleted. The following are two common situations:
146 DE X TE R I T Y U T IL IT IE S
T A B LE R E L A T I O N SH I P S V A L I D A T IO N RE P O R T
• The relationship has too many segments for the key in the secondary
table.
We recommend that you run the Table Relationships Validation Report before you
ship your application to customers. This will alert you to any improperly-defined
table relationships in the application.
148 DE X TE R I T Y U T IL IT IE S
RE S O U RC E I D V A L I D A T IO N RE P O R T
To use the Resource ID Validation Report, open the original version of the
dictionary as a source dictionary. Open the new (revised) version of the
dictionary as an editable dictionary. Choose Resource ID Validation from
the Reports menu. A file dialog box will appear, allowing you to specify the
name and location of the Resource ID Validation Report.
As the report is generated, all forms, windows, and window items (such as
fields or static text) in the original dictionary are examined. The routine
attempts to locate the corresponding resource in the revised dictionary. The
following conditions are logged:
• If the resource is not found in the revised dictionary, either by its name
or resource ID, it will be reported as “may have been removed”.
• If a resource with the same name is found in the revised dictionary, but
the resource ID does not match, it will be reported as “RESID changed”.
150 DE X TE R I T Y U T IL IT IE S
APPENDIX
Appendix
This manual has the following appendix:
152 DE X TE R I T Y U T IL IT IE S
Appendix A: Dictionary Structure
This appendix describes the structure of a Dexterity application dictionary.
The information provided here can be useful when you’re attempting to
repair a damaged application dictionary. Information about dictionary
structure is divided into the following sections:
• Parts of a dictionary
• Types of modules
• Dictionary cores
• Resources stored in modules
• Form modules
• Report modules
Parts of a dictionary
An application dictionary is composed of modules. A module is a collection
of resources. Resources contain information about some specific element of
the application such as a string, field or window. Modules provide a
method of organizing resources. The structure of a dictionary is shown in
the following illustration.
Application
Dictionary Resources
Resources
Resources
Modules
Resources
Resources
Resources
Resources
Resources
Resources
154 DE X TE R I T Y U T IL IT IE S
A P P E N D I X A D IC T I O N A R Y S T R U C T U R E
Types of modules
An application dictionary can have three types of modules:
• Core modules contain resources that are used by several parts of the
application. Resources such as strings, table definitions and global
fields are stored in core modules.
Dictionary cores
Large applications can have thousands of core resources. To better manage
core resources, the core modules are grouped into dictionary cores. Each core
module is placed into one of seven dictionary cores:
The dictionary cores correspond to series for Microsoft Dynamics GP. For
instance, the core resources for Inventory are placed in the Inventory core.
The drop-down list on the Dexterity Utilities tool bar and the Default Core
drop-down list in the Dexterity Options window specify the dictionary core
into which core resources will be placed.
You can use the Change Core utility in Dexterity Utilities to change the dictionary
core in which a core resource is stored.
The following illustration shows how the core modules for a dictionary are
grouped into the various dictionary cores.
Application
Dictionary
Form Modules
Report Modules
156 DE X TE R I T Y U T IL IT IE S
A P P E N D I X A D IC T I O N A R Y S T R U C T U R E
Core modules
Several types of core modules are stored in the dictionary. The following
table lists the core module types and which resources can be stored in them.
Form modules
The following is a list of the resources stored in a form module.
Report modules
The following is a list of the resources stored in a report module.
158 DE X TE R I T Y U T IL IT IE S
Glossary Chunk utility
A function of Dexterity Utilities that
Compress
The process of removing unneeded
allows you to transfer “chunks,” or information, such as script source, and
Accelerator key related pieces of information, from a unused blocks from dictionaries.
A key or set of keys on the keyboard that source dictionary to a chunk dictionary. Dictionaries are typically compressed
can be used as a “shortcut” to select a This utility is useful for updating specific before being sent to customers.
menu or menu option rather than using portions of a dictionary when the
the mouse. dictionary is very large (such as the Control type
Dynamics.dic dictionary). When you’ve The control type is the main characteristic
Alert message modified or added resources in the chunk of a data type, controlling the type of
A message that appears when dictionary, you can merge it back into the information that can be stored in fields
inappropriate, inadequate or unclear source dictionary to implement with the data type, and some aspects of
data or instructions are issued, when data modifications. how the information will be displayed.
is not accessible or when a confirmation Commonly-used control types are push
is required. Compare buttons, integers, check boxes, dates and
To evaluate the variations between two currencies. See also Data type.
Array field dictionaries, using Dexterity Utilities.
A field containing multiple occurrences Core module
of the same type of information. The Compatibility ID A group of related resources in a
individual pieces of information stored A string that uniquely identifies the Dexterity dictionary that can be
by an array field are called elements. For version of your application. You specify referenced by other resources, including
example, a seven-element array field the compatibility ID when you add forms and reports, throughout the
could be used to store daily sales totals product information to a dictionary. dictionary. Each core module contains
instead of seven individual fields. When you launch your application with one or more specific types of resources
the runtime engine, the compatibility ID such as fields, data types and scripts. See
Array index in the application dictionary is compared also Dictionary module, Form module and
The number designating a specific with the compatibility IDs in the forms Report module.
element within an array field. Each and reports dictionaries. If they match,
component field within an array field has items in the forms and reports Core resources
an array index. dictionaries can be accessed. Resources such as strings, data types or
global fields that are used by several
Block Compatibility message parts of the application. When forms and
A specified portion of the dictionary. For The message that is displayed when the reports dictionaries are created, the core
instance, an unused “block” within a compatibility IDs in the forms or reports resources in the application dictionary
dictionary refers to a portion of the dictionaries don’t match the are copied to them.
dictionary that isn’t being used, or a compatibility ID in the main dictionary.
portion that at one time contained If an application uses forms and reports
You specify the compatibility message
information that has been deleted. You when you add product information to a dictionaries, an update should be
can remove unused blocks by using the distributed as a dictionary chunk so the
dictionary.
compress utility of Dexterity Utilities. core resources in the forms and reports
Compile dictionaries will be updated properly.
Chunk dictionary To run a script through a compiler. A Otherwise, the application may not work
A dictionary that contains portions, or compiler translates the script instructions correctly.
“chunks,” of resources from a source into a language that the computer can
dictionary. Chunk dictionaries allow understand. Once the script has been
Cross-linked resources
large dictionaries to be divided into more Resources that improperly reference
compiled, the instructions within the
manageable pieces for delivery to script can be executed. other resources. Specifically, scripts
customers. The runtime engine referenced by more than one field, table
“unchunks,” or merges the chunk Compiler errors relationships referenced by more than
dictionaries to re-create the original Errors generated when a script is one table, and keys referenced by more
dictionary. Chunk dictionaries can also be compiled. than one table are cross-linked resources.
used to deliver updates for an The Cross Link Analysis Report checks
application. for these conditions.
160 DE X TE R I T Y U T IL IT IE S
G L O S S A R Y
162 DE X TE R I T Y U T IL IT IE S
G L O S S A R Y
Transfer
To copy specified resources in a source
dictionary to a destination dictionary.
Unchunking
The process of dictionary chunks being
converted back into a dictionary or being
merged with an existing dictionary.
User-defined function
A script in Dexterity that you write and
use in the same manner as Dexterity’s
built-in functions.
Window
The work area used to enter and display
information in an application.
166 DE X TE R I T Y U T IL IT IE S
I N D E X
errors format strings, defined 161 Global Procedures Report window 111
compiling scripts 28, 39, 41, 43 formats Global Resource Usage Report
found by diagnostics 132 defined 160 described 122
found by referential diagnostics reports for 96 sample report 125
144 utilities for 17 Global Resource Usage window 122
found by table relationship forms global resources, see resources
validation 147 defined 160 Global Resources Report
in block table 134 inquiry procedure 54 described 113
Evaluate After, procedure 90-91 reports for 97 sample report 115
Evaluate After Utility window 90 utilities for 17 Global Resources Report window 113
Exit, menu item 13 viewing, form windows and global scripts, defined 161
Expand Windows window 74 menus 54 global variables
expanding windows, procedure 74 forms dictionaries reports for 97
Extract window 72 compatibility ID 70 utilities for 17
extracted dictionary, defined 9, 160 compatibilty message 70
extracting defined 161 H
defined 9, 160 naming 70 Help menu, described 14
purpose 72 Forms Report How to Use Help, menu item 14
third-party resources from described 101
Microsoft Dynamics GP 72 sample report 103 I
Forms Report window 101 IDs, see resource IDs
F functions Inquiry menu, described 12
Field Summary Report 137 reports for 98 inquiry procedure
fields utilities for 17 for forms 54
defined 160 for resources 55
reports for 95 G Inquiry Utilities, chapter 53-55
utilities for 17 Getting Started, chapter 7-10 inquiry utilities, described 53
File menu, described 13 global fields installation, using chunk dictionaries
form functions see also fields 61
compiling 38 defined 161 installation scripts
defined 160 global functions see also starting and ending scripts
reports for 98 compiling procedure 42-43 defined 161
utilities for 17 reports for 98 order of execution 64
Form Inquiry window 54 utilities for 17 integrating applications
form modules when to compile 42 defined 161
defined 155, 160 Global Functions Report extracting from Microsoft
resources stored in 158 described 109 Dynamics GP 72
form procedures sample report 110 packaging 59
compiling 38 Global Functions Report window 109 updating 59
defined 160 global procedures interface conversion, see User Interface
reports for 98 compiling procedure 40-41 Conversion
utilities for 18 reports for 98 internationalization, of applications 29,
form scripts utilities for 18 74
compiling procedure 38-39 when to compile 40 invalid references, for resources 144
defined 160 Global Procedures Report
when to compile 38 described 111 K
form tables, defined 160 sample report 112 key segments, defined 161
keyable length, defined 161
168 DE X TE R I T Y U T IL IT IE S
I N D E X
scrolling windows, user interface static text values, defined 162 tables (continued)
conversion 86 storage types, defined 162 defined 162
Search and Replace window 44 string resources, defined 162 reports for 99
Search for Help On, menu item 14 strings utilities for 18
searching and replacing defined 162 Tables Report
entering text to search for 44 reports for 99 described 106
procedure 44-45 transferring, options 30 sample report 108
selecting script to search 45 transferring, procedure 29-30 window 106
Select All, menu item 14 utilities for 18 technical names, defined 162
sequence numbers strings and messages, transferring 29 terms in Dexterity Utilities 8
defined 162 structure, of dictionaries 154 third-party resources, resource IDs 72
for chunk dictionaries 63 summary toolbars, Dexterity Utilities’ toolbar 12
series of reports 95-100 Transfer Dictionary Module window
see also series resources of utilities 17-19 33
defined 9, 162 Summary Reports Transfer menu, described 12
series list, in the toolbar 12 described 137 Transfer Resources window 22
series resources Field Summary sample report 139 Transfer Strings and Messages window
creating when transferring Table Summary sample report 138 29
resources 24 Summary Reports window 137 Transfer Utilities, chapter 21-36
defined 9, 162 symbols in documentation 3 Transfer Window window 31
updating, options 51 Synchronize Dictionary window 58 transferring
updating, procedure 50-51 synchronizing an extracted dictionary 35-36
when to update 50 defined 9, 162 defined 9, 163
Series Resources window 50 dictionaries, procedure 58 dictionary modules, procedure
size, of dictionary modules 34 purpose 58 33-34
source dictionaries when to perform 58 resources
defined 9, 162 when transferring 24 additional resources
working with 10 system colors, user interface transferred, chart 26
SQL conversion 83 dictionary core for transferred
compatibility resources 27
for dictionaries 75 T options 22
limits examined 75 tab sequence, user interface conversion procedure 22-28
making applications 86 scripts not compiling 28
compatible 76 table groups strings and messages
SQL compatibility utility defined 162 options 30
described 75-77 utilities for 18 procedure 29-30
procedure 75-77 Table Relationship Validation Report windows, procedure 31-32
SQL Compatibility window 75 described 147
stand-alone applications sample report 148 U
defined 162 table relationships unchunking, defined 163
packaging 59 defined 162 Undo, menu item 13
updating 59 diagnostics for 147 unused blocks, removing 60
starting, Dexterity Utilities 7 problems 147 unused resources
starting scripts reports for 99 listing 122, 126
defined 162 Table Summary Report 137 removing 123, 127
for a chunk dictionary 64, 80 tables update chunks
static picture values, defined 162 attached to a form 54 description 61
170 DE X TE R I T Y U T IL IT IE S
I N D E X