Release 10.1A: OpenEdge Development:
.NET Open Clients

> ## Progress 4GL data type mappings

> .NET data types are defined as part of the common type system within .NET. The common type system supports two general categories of types, value types and reference types. Many 4GL data types are mapped to built-in value types provided by .NET. Reference types are classes, either those provided by .NET or user-defined classes. Some 4GL data types are mapped to .NET-provided classes, and a few are mapped to Progress-provided classes.

> A 4GL parameter is mapped directly to its corresponding .NET data type or Progress-provided class, shown in Table 4–1.

> Table 4–1: Progress 4GL-to-.NET data-type mapping for parameters
> Progress 4GL | .NET
> --- | ---
>     CHARACTER
>     System.String
>     COM-HANDLE
>     Progress.Open4GL.COMHandle
>     DATASET
> | Strongly typed DataSet See the "Passing DATASET and DATASET-HANDLE parameters" section.
>     DATASET-HANDLE
>     System.Data.DataSet
> See the "Passing DATASET and DATASET-HANDLE parameters" section.
>     DATE
>     DATETIME
>     DATETIME-TZ
>     System.DateTime
>     DECIMAL
>     System.Decimal
>     HANDLE
>     Progress.Open4GL.Handle
>     INTEGER
>     System.Int32
>     LOGICAL
>     System.Boolean
>     LONGCHAR
>     System.String
>     MEMPTR
>     Progress.Open4GL.Memptr
>     RAW
>     System.Byte[ ]
>     RECID
>     System.Int64
>     ROWID
>     Progress.Open4GL.Rowid
>     TABLE
> | Strongly typed DataTable. See the "Passing TABLE and TABLE-HANDLE parameters" section.
>     TABLE-HANDLE
>     System.Data.DataTable
> See the "Passing TABLE and TABLE-HANDLE parameters" section.
>     WIDGET-HANDLE
>     Progress.Open4GL.Handle

> The `COM-HANDLE`, `HANDLE`, `RECID`, `ROWID`, and `WIDGET-HANDLE` data types are not meaningful outside the Progress environment. Their use is restricted to obtaining the value from a Progress procedure and passing it back to another Progress procedure.

> The mapping for the individual fields of a temp-table or temp-tables within a ProDataSet differs from that of other parameters. For information on data type mapping for fields within these parameters, see Table 4–6.

> .NET Open Clients do not support the Progress `BUFFER` parameter.

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