Advantage Client Engine
Stores the given data into the specified field
UNSIGNED32 |
AdsSetField (ADSHANDLE hObj, UNSIGNED8 *pucFldName, UNSIGNED8 *pucValue, UNSIGNED32 ulLen); |
hObj (I) |
Handle of table, cursor, or index order. |
pucFldName (I) |
Name of field to set. |
pucValue (I) |
Data to store in field. |
ulLen (I) |
Length of data in the buffer. |
AE_DATA_TOO_LONG |
The data given was too long to fit in the field. |
AE_DATA_TRUNCATED |
The data given was too long to fit in the field. The data was truncated to fit into the field. |
AE_INVALID_MONTH |
The month given is not valid. Valid months are 1-12. |
AE_INVALID_DAY |
The day given is not valid for the given month. |
AdsSetField can be used to store logical, string, memo, numeric, date, short date, double, CurDouble, Money, integer, short integer, time, timestamp, image, binary, RowVersion, ModTime, and raw data.
Dates, times, timestamps, and numerics, and Money values are expected to be given as text strings. Dates are expected to be formatted the same as the current AdsSetDateFormat setting. For example, to set a timestamp field, the value could be "7/28/1996 14:30:25". To set empty or null values in fields, use AdsSetEmpty. Setting the value of a field requires a data lock on the table, either a record lock or a file lock. If no lock is held on the current record or table, the Advantage Client Engine will attempt to get an implicit lock on the record. Implicit locks are released when the record is updated on the server.
If the handle passed is an index order handle, the logical record buffer of the index order is modified instead of the table data. The logical record buffer of the index order can be used to build a raw index key in conjunction with calls to AdsInitRawKey and AdsBuildRawKey.
The pucFldName parameter can be passed as the field name itself or as the one-based integer field position. To pass an integer field position for the pucFldName parameter, use the ADSFIELD macro that is defined in ACE.H. For example, to specify the first field in the table, pass ADSFIELD(1) for the pucFldName parameter; to specify the second field in the table, pass ADSFIELD(2) for the pucFldName parameter; etc.