User Documentation
Ispirer Capabilities - Progress 4GL Conversion
Pricing
This article describes the data types supported by Progress 4GL and OpenEdge ABL 10.x and earlier.
| Data Type | Parameters and Range |
|---|---|
| Character Data Types | |
| CHARACTER - Fixed-length character data | |
| LONGCHAR - Variable-length character data | |
| Integer Data Types | |
| INTEGER - 32-bit integer data | |
| Fixed-Point Numeric Data Types | |
| DECIMAL - Fixed-pont numeric data | |
| Date and Time Data Types | |
| DATE - Date data type | |
| DATETIME - Date and time data type | |
| DATETIME-TZ - Date and time data type | |
| Other Data Types | |
| HANDLE - Handle (pointer to a resource) | |
| LOGICAL - Boolean data | |
| MEMPTR - Sequence of bytes in memory | |
| RECID - Unique internal identifier of the current database record | |
| ROWID - Unique internal identifier of the current database record | |
| Progress 4GL/ABL - CHARACTER | |
|---|---|
| Syntax | CHARACTER |
| Data | Variable-length character data |
| Range | 32K |
| Default Value | Empty string |
| Notes | Display format limits the maximum number of characters that are displayed. In 4GL/ABL environment, it is allowed to insert data exceeding display format. When the SQL interface is used, Progress, by default, sets the SQL-WIDTH to twice the length of the displayed format. SQL clients (ODBC/JDBC i.e.) cannot insert a value exceeding SQL-WIDTH. To change SQL-WIDTH, use Data Dictionary tool, select a table, select Option Menu, SQL Properties, Adjust Width |
Progress 4GL/ABL CHARACTER - Equivalents in Other Databases
| Database | Data Type and Conversion |
|---|---|
| Oracle | CHAR(n), 1 ⇐ n ⇐ 2000/charsize |
| SQL Server | CHAR(n), 1 ⇐ n ⇐ 8000 |
| IBM DB2 | CHAR(n), 1 ⇐ n ⇐ 254 |
| MySQL | CHAR(n), 0 ⇐ n ⇐ 255 |
| PostgreSQL | CHAR(n), 1 ⇐ n ⇐ 1G |
| Sybase ASE | CHAR(n), 1 ⇐ n ⇐ pagesize (2K, 4K, 8K or 16K) |
| Sybase ASA | CHAR(n), 1 ⇐ n ⇐ 32767/charsize |
| Informix DS | CHAR(n), 1 ⇐ n ⇐ 32767 |
| Teradata | CHAR(n), 1 ⇐ n ⇐ 64000/charsize |
| HP Neoview | CHAR(n), 1 ⇐ n ⇐ 4036 |
| Interbase/Firebird | CHAR(n), 1 ⇐ n ⇐ 32767/charsize |
| Progress 4GL/ABL - LOGICAL | |
|---|---|
| Syntax | LOGICAL |
| Data | Boolean data |
| Range | TRUE and FALSE (they are 4GL/ABL keywords). Possible literal values for true state: TRUE and YES. Possible literal values for false state: FALSE and NO |
Progress 4GL/ABL LOGICAL - Equivalents in Other Databases
| Database | Data Type and Conversion |
|---|---|
| SQL Server | BIT - 0, 1 and NULL |
| MySQL | BOOL, BOOLEAN, -128 to 127 and NULL |
| PostgreSQL | BOOLEAN - TRUE/FALSE (1/0) and NULL |
| Sybase ASE | BIT - 0 and 1, NULL is not allowed |
| Progress 4GL/ABL - HANDLE | |
|---|---|
| Syntax | HANDLE |
| Data | Pointer to a handle-based object |
Examples:
DEFINE VARIABLE hHandle AS HANDLE NO-UNDO. hHandle = THIS-PROCEDURE. /* Set a handle to a procedure object */