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.

To begin a transfer, select a source and a destination dictionary, then choose Resources from the Transfer menu to display the Transfer Resources window.

  1. Mark transfer options.

Mark the appropriate transfer options for the resources you want to transfer. The selections you make will be applied to all transferred resources.

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.

Replace Referenced Resources   This applies only to global fields, global data types and formats that are referenced by other resources. If this option is marked and the resources you’re transferring reference global fields, global data types or formats that already exist in the destination dictionary, these referenced resources will be replaced. If this option isn’t marked, only resources with names that are different from resources in the destination dictionary will be added; the existing referenced resources in the destination dictionary won’t be replaced.

If you replace referenced resources, be sure the Synchronize Dictionary option is marked. This will ensure any updated resources will be referenced properly in the destination dictionary.


As an example, suppose you’re transferring a form that uses the Customer Number field. If the Customer Number field doesn’t exist in the destination dictionary, it will be added to the destination dictionary. If the Customer Number field already exists in the destination dictionary, and Replace Referenced Resources isnt marked, the Customer Number field won’t be replaced in the destination dictionary. If the Customer Number field already exists in the destination dictionary, and Replace Referenced Resources is marked, the field will be replaced in the destination dictionary.

In the previous example, you would mark the Replace Referenced Resources option if you had made changes to the Customer Number field, data type or format and wanted these changes transferred to the destination dictionary and used for the Customer Number field that already existed there.

If you’re transferring resources that don’t already exist in a destination dictionary or if the global fields, global data types or formats referenced by the resources you’re transferring haven’t changed, don’t mark Replace Referenced Resources. In these cases, transferring referenced resources won’t serve any purpose and the transfer could take much more time.

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.


Create Series Resources   Mark this option if you want to have series resources automatically created after the transfer and compile processes are completed. Series resources are lists of the forms, reports, tables and table groups in an application. These lists are used for security, palettes, table maintenance and the Work menu. Series resources are discussed in further detail in Resource Utilities.

Synchronize Dictionary   Mark this option if you want to automatically synchronize the destination dictionary as the final process in the transfer. Synchronizing a dictionary will recalculate buffer sizes, check all relationships between resources and ensure the proper data types and fields are referenced throughout the dictionary. Synchronizing is especially necessary if you’ve replaced referenced resources in the destination dictionary.

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.

Because resources could be renumbered when they’re transferred, any scripts transferred must be compiled when they’re transferred to avoid “Not Found” errors when you attempt to use the destination dictionary. If any scripts will be transferred, be sure to mark the Compile Scripts option.


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 Script Utilities.

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.

Compile Debug   Mark this option to include debugging information in scripts, and to compile the debug and assert statements in your code. If you don’t mark this option, you won’t be able to use the Script Debugger, and the debug and assert statements won’t be executed. We recommend unmarking this option in the final version of your application to ensure optimal script performance.

  1. Select a series and resource type.

Select the series to which the resources being transferred belong. For example, if the resources to be transferred are part of the Sales series, select Sales and the existing Sales series resources will appear in the Resources list.

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.

  1. Select resources to transfer.

Select the resource you want to transfer by highlighting the resource in the Resources list and clicking Insert to display it in the Selected Resources list. Double-clicking the selection will perform the same function. Click the Insert All button to transfer all listed resources. You can use the Remove and Remove All buttons to remove items from the Selected Resources list.

Resources are transferred based upon their names. If a resource of the same type with the same name exists in the destination dictionary, it will be replaced. The resource ID for the replaced resource in the destination dictionary will not change. If the resource doesn’t exist in the destination dictionary, it will be added and will be assigned the next available resource ID for that type of resource. It is very likely that the resource ID of the resource in the destination dictionary will be different than it was in the source dictionary.

When selecting the resources to transfer, keep in mind that many resources related to the resource you’re transferring will also be transferred. For example, when you transfer a field resource, the data type, composite, format and static picture resources for the field are transferred as well; you don’t have to transfer the related resources individually. The following table lists the additional resources that are transferred when you transfer a specific resource.

[spacer]

Resource being transferred

Additional resources transferred

Composites

Fields and data types for fields in the composite

Constants

None

Data types

Composite for data type

Format for data type

Static pictures or text

Fields

Data type for field

Composite for data type

Format for data type

Static pictures or text

Forms

Windows

Global fields used in the form

Data types for global fields\

Composites for data types

Formats for data types

Static pictures or text

Local data types and local fields

Strings in windows

Pictures and native pictures

Form, window and field scripts

Form functions

Form procedures

Form menus and scripts

Scrolling windows and scripts

Tables attached to the form

Any tables related to attached tables

Formats

None

Functions

None

Generic pictures

None

Globals

Global field for the global variable

Data type for field

Composite for data type

Format for data type

Messages

None

Metafiles

None

Procedures

None

Reports

Strings used for the report

Tables attached to the report

Table relationships

Any related tables

Strings

None

Tables

Global fields in the table

Data types for global fields

Composites for fields

Formats for fields

Table relationships

Any related tables *

Keys for the table

Restrictions applied to the table

Table groups

Tables in the table group

Table relationships

Any related tables

* If the Skip Related Tables option is not marked


  1. Set the series list on the toolbar.

The series list on the right side of the toolbar indicates the dictionary core in the destination dictionary in which any new core resources will be created. Set this list to indicate the appropriate dictionary core. The dictionary core any new core resources are created in won’t affect whether the transfer is successful, but it’s a good idea to create the core resources for your application in one dictionary core because they’ll be easier to manage.

  1. Transfer the selected resources.

Click the Transfer button to transfer the resources in the Selected Resources list to the destination dictionary. The Report File Name dialog box will appear. Enter the name and location for the Transfer Resource Status Report file, then click OK to continue the transfer process, or click Cancel to return to the Transfer Resources window.

  1. Use the status report to verify the transfer.

Once the transfer is complete, the status report will be printed to a text file. This report will list everything that was transferred and whether it was simply added to the destination dictionary or whether it replaced an existing resource in the destination dictionary. It also will list any compiler errors that occurred if you chose to compile scripts that were transferred.

The most common problem when transferring resources is errors compiling scripts. Use the Transfer Resource Status Report to track compiling errors. Common reasons for compiling errors include:


Documentation Feedback