Progress
External Program
Interfaces


Conversions From Progress To COM Data Types

Table B–1 lists the possible conversions from Progress data types to COM data types when setting COM object properties, passing method input parameters, or returning event output parameters.

In addition to the listed conversion pairs, Progress can convert other Progress data types to COM data types when the target COM data type is known and the data is compatible. For example, a character string with the value “123” can be converted to a Currency COM data type, even though Table B–1 does not show a default CHARACTER to Currency conversion pair.

NOTE: The names for COM data types in Table B–1 conform to a nomenclature used in the documentation for most COM objects. For matching alternatives to these names, seen in some documentation and COM object viewers, see Table B–3.

Table B–1: Conversions From Progress To COM Data Types
Progress
Data Type

Conversion Information
COM
Data Type
CHARACTER
None (default)
String
COM-HANDLE
None (default)
Object (COM)
COM-HANDLE
Type specifier: AS IUNKNOWN or
Type Library: Object (Base)
Object (Base)
DATE
None (default)
Date
DECIMAL
None (default)
Double
DECIMAL
Type specifier: AS CURRENCY or
Type Library: Currency
Currency
DECIMAL
Type specifier: AS FLOAT or
Type Library: Single (Float)
Single (Float)
INTEGER
None (default)
Byte
INTEGER
None (default)
Long (4-byte integer)
INTEGER
None (default)
Unsigned Long (4-byte integer)
INTEGER
None (default)
Unsigned Short (2-byte integer)
INTEGER
Type specifier: AS ERROR-CODE or
Type Library: Error Code
Error Code
INTEGER
Type specifier: AS SHORT or
Type Library: Integer (2-byte integer)
Integer (2-byte integer)
INTEGER
Type specifier: AS UNSIGNED-BYTE or
Type Library: Unsigned Byte
Unsigned Byte
LOGICAL
None (default)
Boolean
RAW
None (default)
Byte[]
RAW
None (default)
VT_ARRAY (if single-dimensional array of bytes)
RECID
None (default)
Long (4-byte integer)


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