Building chunk dictionaries

When your application dictionary is complete, you will use Dexterity Utilities to split your application dictionary into “chunks.” The dictionary chunks are part of what you deliver to your customer. When your application is installed, the dictionary chunks are recombined to create the application dictionary. Chunk dictionaries are used for two reasons:

Dexterity Utilities has two utilities that create dictionary chunks. The Auto-Chunk utility is used to make a single dictionary chunk from your application dictionary, while the Create Chunk Dictionary utility can be used to make several chunks from your application dictionary.

You will typically use the Auto-Chunk utility to make a single chunk that contains all of the dictionary’s resources. If your application dictionary is large and your installation program doesn’t support segmenting files, you may want create several chunks using the Create Chunk Dictionary utility. A common way to divide an application dictionary into several chunks is to include core resources in one chunk, forms in another chunk, and reports in a third chunk.

Using the Auto-Chunk utility

To use the Auto-Chunk utility to create a single dictionary chunk for your application dictionary, perform the following steps.

  1. Start Dexterity Utilities.

Open your application dictionary as an editable dictionary.

  1. Choose Auto-Chunk from the Utilities menu on the toolbar.

The Auto-Chunk window will appear. Click the Chunk Dictionary lookup button; a dialog box will appear, prompting you to name the dictionary chunk you’re creating. Name the chunk and click OK.

Due to a historical limitation imposed by early versions of Windows, the name of the chunk dictionary must not exceed 13 characters, including the .cnk extension. If the name exceeds 13 characters, the chunk cannot be accessed by the runtime engine and will not be unchunked.


  1. Use the Auto-Chunk window to complete the process of creating a chunk.

Dictionary   Enter the name of the dictionary that the chunk will become part of. For instance, if you’re creating a chunk for the RESM.DIC application dictionary, enter that name here.

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.

Major Version/Minor Version   Indicate the major and minor version numbers for your application. For instance, if this is release 1.3 of your application, enter a 1 for the major number and a 3 for the minor number. These version numbers can be retrieved from the dictionary and typically are displayed in the application’s About Box.

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.

Build Number   Indicates the build of the current version of the dictionary. The build number can also be retrieved from the dictionary and is typically displayed in the application’s About Box.

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.

Starting Script/Ending Script   These fields specify which installation scripts (procedures) will be run when the chunk is merged into the application dictionary. To specify a starting or ending script, mark the corresponding check box and then click the lookup button for the starting or ending script. A list of the procedures in the application dictionary is displayed, allowing you to select a script.

The installation scripts run only after the dictionary chunk has been merged into the application dictionary. The starting script is run first, then the ending script is run.

Compression   Choose to remove either unused blocks from the chunk or to perform total compression, which removes unused blocks and all script source. Typically, total compression is performed when an application is being prepared to send to customers.

  1. Click OK to begin the chunking process.

After the chunk dictionary has been created, the Auto-Chunk window will close.

At this point, we recommend that you make a backup of your chunk dictionary.


Using the Create Chunk Dictionary utility

To use the Create Chunk Dictionary utility to create one or more dictionary chunks for your application dictionary, perform the following steps.

If you’re creating only one dictionary chunk for your application, we recommend that you use the Auto-Chunk utility. It is much easier to use.


  1. Start Dexterity Utilities

Open your application dictionary as a source dictionary.

  1. Choose Create Chunk Dictionary from the Utilities menu on the toolbar.

A window will appear asking whether you want to edit an existing dictionary chunk. Click Yes if you want to add resources to or make changes to existing dictionary chunk. Click No if you want to create a new dictionary chunk.

If you clicked Yes, a window will appear allowing you to select an existing chunk to open. If you clicked No, a window will appear allowing you to specify the name of a new chunk. Then the Create Chunk Dictionary window will appear.

Due to a historical limitation imposed by early versions of Windows, the name of the chunk dictionary must not exceed 13 characters, including the .cnk extension. If the name exceeds 13 characters, the chunk cannot be accessed by the runtime engine and will not be unchunked.


  1. Use the fields in the Create Chunk Dictionary window to complete the process of creating a chunk.

Dictionary   Enter the name of the dictionary that the chunk will become part of. For instance, if you’re creating a chunk for the RESM.DIC application dictionary, enter that name here.

Sequence Number   Specify the order in which this chunk will be read when “unchunked.” If you’re creating a single chunk for the entire dictionary, specify 1. If you break the application dictionary into several smaller chunks, the chunks will be merged into the application dictionary in the order specified by the sequence number.

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.

Major Version/Minor Version   Indicate the major and minor version numbers for your application. For instance, if this is release 1.3 of your application, enter a 1 for the major number and a 3 for the minor number. These version numbers can be retrieved from the dictionary and typically are displayed in the application’s About Box.

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.

Build Number   Indicates the build of the current version of the dictionary. The build number can also be retrieved from the dictionary and is typically displayed in the application’s About Box.

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.Starting Script/Ending Script   These fields specify which installation scripts (procedures) will be run when the chunk is merged into the application dictionary. To specify a starting or ending script, mark the corresponding check box and then click the lookup button for the starting or ending script. A list of the procedures in the application dictionary is displayed, allowing you to select a script.

The installation scripts run only after all dictionary chunks have been merged into the application dictionary. All starting scripts are run in the order the chunks were merged. Then all ending scripts are run in reverse order.

For example, if three dictionary chunks were merged, the starting and ending scripts would run in the following order:

[spacer]

1. Chunk 1 Starting Script

2. Chunk 2 Starting Script

3. Chunk 3 Starting Script

4. Chunk 3 Ending Script

5. Chunk 2 Ending Script

6. Chunk 1 Ending Script


Dictionary Module Type   Select the type of resources (Forms, Reports or Core resources) you want to add to the chunk dictionary.

Series   Select the series from which you want to add resources to the chunk dictionary.

Source Dictionary Modules   Based upon your selection, this list fills with forms, reports or core resources for the selected series. To add a module to the chunk dictionary, select it from the list, then click Transfer. If you want to add all resources from the list, click All.

If you’re making a single chunk dictionary, first add all forms and reports from your application 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 Size fields beneath the source dictionary and the chunk dictionary lists.)

If you’re making multiple chunk dictionaries, the entry in the Dictionary name field must be the same for each chunk. Also, each chunk must contain the [Core] System Core Tables and the [Core] System Install modules for the dictionary chunks to merge properly. Be sure that you haven’t forgotten to include these resources in each dictionary chunk.

Chunk Dictionary Modules   This list contains all of the modules from the application dictionary that will be included in the chunk dictionary. To delete a module from the chunk dictionary, select it from the list and click Delete.

  1. Click OK to begin the chunking process.

When you’ve added the necessary resources to the Chunk Dictionary Modules list, click OK to begin the chunking process. After the modules have been copied to the chunk dictionary, the Create Chunk Dictionary window will close.

At this point, we recommend that you make backups of your chunk dictionaries.


 


Documentation Feedback