Try OpenEdge Now
skip to main content
.NET Open Clients
Passing Parameters : ABL temp-table to ADO.NET DataTable mappings : Mapping temp-table component attributes : Buffer-field attribute mappings
 
Buffer-field attribute mappings
The following table lists ABL attributes of a buffer-field component from a row of a temp-table parameter (or of a temp-table that is part of a ProDataSet parameter) and how they map to the corresponding ADO.NET DataColumn in a row of the corresponding DataTable passed in a .NET Open Client.
Table 9. Mapping ABL buffer-field attributes to ADO.NET
ABL buffer-field attribute
ADO.NET mapping
Description
BUFFER-VALUE
System.Data.DataRow.Item
Gets or sets the current data value of a corresponding buffer-field.
COLUMN-LABEL
System.Data.DataColumn.Caption
Gets or sets the label for the column of data associated with the corresponding buffer-field.
Note: If this attribute is blank, the Caption property maps the LABEL attribute, and if the LABEL attribute is blank, the property maps the NAME attribute.
DATA-TYPE
Progress.Open4GL.ProDataTable
.GetColumnProType( )
Progress.Open4GL.ProDataTable
.SetColumnProType( )
System.Data.DataColumn.DataType
For a given ADO.NET DataTable or DataColumn (depending on overloading), these static methods get or set the ABL data type of the corresponding buffer-field. For more information, see Column-related (buffer-field) methods.The DataType property gets or sets a .NET data type that maps to the ABL data type of the corresponding buffer-field according to the mappings shown in Data type mapping for temp-table fields.
EXTENT
Progress.Open4GL.ProDataTable
.IsExtentColumn
  (System.Data.DataTable dt,
   string colName)
Progress.Open4GL.ProDataTable
.SetExtentColumns
  (System.Data.DataTable dt,
   string proFieldName,
   string startColName, int extent)
For the ADO.NET DataTable specified by dt, these static methods indicate if a given DataColumn is part of a corresponding ABL array field (IsExtentColumn( )) or set the location and number of DataColumns that comprise the extent associated with a corresponding ABL array field (SetExtentColumns( )). For more information, see Array methods.
INITIAL
System.Data.DataColumn.DefaultValue
Gets or sets the default value for the specified ADO.NET DataColumn when creating new rows. This value corresponds to the value of the initial schema field (always CHARACTER) in the corresponding ABL buffer-field object, formatted with the specified buffer-field format.
Note: When working with ABL DATE, DATETIME, and DATETIME-TZ temp-table fields, you must work around differences between the corresponding ABL and .NET data types. For more information, see Resolving differences between ABL and .NET date and time implementations.
KEY
System.Data.DataColumn.Unique
Indicates if the corresponding buffer-field participates in a temp-table index.
LABEL
System.Data.DataColumn.Caption
Gets or sets the label for the corresponding buffer-field.
Note: Maps if the COLUMN-LABEL attribute for the corresponding buffer-field is blank. However, if LABEL is also blank, maps to the NAME attribute.
MANDATORY

System.Data.DataColumn.AllowDBNull
Indicates if a corresponding buffer-field is a required field.
NAME
System.Data.DataColumn.ColumnName
DataColumn.Caption
Progress.Open4GL.ProDataTable
.GetArrayFieldName( )
Gets or sets the name of the corresponding buffer-field. If the COLUMN-LABEL and LABEL attributes are both blank for a corresponding buffer-field, the Caption property also maps this attribute value.For a given ADO.NET DataTable or DataColumn (depending on overloading), the static method (GetArrayFieldName( )) gets the name of the corresponding array buffer-field of which the specified column is a part. For more information, see Array methods.
POSITION
Progress.Open4GL.ProDataTable
.GetPosition
  (System.Data.DataColumn dc)
For the ADO.NET DataColumn specified by dc, this static method gets the position of the buffer-field object in the original database record. For more information, see GetPosition( ).
READ-ONLY
System.Data.DataColumn.ReadOnly
Indicates if the corresponding buffer-field is write-protected.
XML-NODE-TYPE
System.Data.DataColumn.ColumnMapping
Gets or sets the MappingType Enumeration of the specified ADO.NET DataColumn when it is written to XML using the WriteXml( ) method. The possible values correspond to the ABL CHARACTER values that you can specify for the XML-NODE-TYPE attribute. For more information, see Mapping the XML-NODE-TYPE attribute to ADO.NET.