Release 10.1A: OpenEdge Development:
Progress Dynamics Basic Development

> ## Entity import

> The automated import process jump starts the application building process.

> | To go through the entity import process:

> 1. From the Administration window, select System Entity Import. The Entity Import dialog box appear, as shown:

> 2. Select the application database.

> 3. Select one or more tables from that database.

> As with any multiple-select browser, you can use the CTRL key together with your mouse to add individual entries to the list. The tables are highlighted when you select them. To select a series of entries, click on the first one, then press SHIFT and click on the last one. Use Select All to select all rows, and Deselect All to undo that action.

> 4. Enter the prefix length in the Prefix Length field.

> Chapter 2, "Database Design Principles in Progress Dynamics," discusses the prefix the Progress Dynamics Repository uses—a naming convention involving a four-character prefix for all table names. This prefix consists of two letters to identify the organizational structure (representing the product), a letter to indicate the relative volatility of the data (`C` for constant versus `T` for transactional, for example) and an underscore. The framework uses its understanding of this naming convention in various ways. For example, the object ID field for a table is always given a name consisting of the table name, without its prefix, plus the suffix `_obj`. So the object ID field for the `gsc_object_type` table, for example, is named `object_type_obj`. You can use this information to identify potential join fields, descriptive fields for a table, and so forth.

> The Prefix Length field in this dialog box tells the framework what, if any, standard prefix you use for your table names. If you design a new database and use the Progress Dynamics naming conventions, then you should enter a prefix length of 4. If you use no such standard prefix, then enter 0. If you use some other prefix length, enter its number.

> 5. Enter your field name separator, if there is one, in the Field Name Separator field.

> The Repository naming convention creates table and field names using meaningful word strings, such that the name is as self-explanatory as possible with a few characters. The standard separator between words is an underscore. Reasonable choices are underscore, hyphen, or the word `upper` to indicate that words are separated using mixed case, as in CustomerName. If you do not use a consistent separator in your database, leave blank.

> Note: Keep in mind that for new database design, do not use hyphens in table and field names, since this character is not permitted by SQL databases, which will limit your ability to use DataServers for your database or to use third-party tools that are SQL-based to access your data. Other languages, such as Java™, also do not recognize hyphens as valid name delimiters, which might affect your ability to access your data from other tools and non-Progress products. You will notice in the current screen shot that the field does not yet allow you to enter “upper” in the Import window. This will be addressed in a future release.

> 6. Specify whether you want to use Auto Properform Strings. Proper-forming refers to doing certain kinds of automatic data formatting.

> 7. Specify whether to generate DataFields.

> Note: Generating DataFields the first time you import a table means you will automatically have lists of fields to choose from when configuring what fields to display in browsers and viewers. When regenerating entity information, checking this will replace all your existing data field information.

> 8. Specify whether you want to enable, disable, or ignore auditing.

> The framework can maintain an audit trail for records in any table in your database. There is a flag in the Repository to indicate whether auditing is enabled for each table. The radio set here in the Entity Import window determines the initial value of that flag. If you select Yes, then auditing will initially be enabled for every table you have selected to import. If you select No, then auditing will initially be disabled. If you select Ignore, then there will be no specific setting. In any case, you can set or reset the Auditing flag for individual tables in the Entity Maintenance utility, described in the next section.

> Caution: Do not enable auditing if you do not specifically require it. It adds a certain amount of overhead to every update operation for a table. Auditing also requires you to write special trigger logic. Therefore, you should set this auditing option to No or Ignore.

> 9. In the DataFields frame, specify the Product Module and Object Type where DataFields should be generated.

> 10. Choose Import. When the process is complete, the following confirmation alert box appears:

> 11. Select a product module in the Product Module field.

> You must designate a product module for all of the entities you select. For this reason, it makes sense to do the Entity Import module by module, grouping tables into the product modules they support (or primarily support, as there might be overlap). If there is no meaningful relation between tables and specific product modules, then you could create a special Product Module just for database entities, or whatever makes sense for your situation.

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095