Difference between revisions of "GATHER"

From Lianjapedia
Jump to: navigation, search
Line 31: Line 31:
 
[[Category:Commands]]
 
[[Category:Commands]]
 
[[Category:Declaring Variables and Arrays]]
 
[[Category:Declaring Variables and Arrays]]
[[Category:Data Commands]]
+
[[Category:Databases]]

Revision as of 10:57, 4 February 2013

Purpose

Replace fields with elements from an array or series of memory variables

Syntax

GATHER FROM <array> | MEMVAR [FIELDS <field list>] [MEMO]

See Also

ADEL(), ADIR(), AFIELDS(), AFILL(), AINS(), ALEN(), ARRAY(), ASCAN(), ASORT(), COPY TO ARRAY, IN_ARRAY(), IS_ARRAY(), LOCAL, PRIVATE, PUBLIC, SCATTER

Description

The GATHER command replaces fields in the current record with elements from the specified array <array> or, if the MEMVAR keyword is used, from a series of memory variables with the same names as the fields. If the current table is shared, then automatic record locking is performed for the update operation. The data types of the array elements or memory variables and corresponding fields must be compatible. If the array has fewer elements than the number of fields in the record, then fields are modified only up to the number of elements specified. If no matching memory variable is found for a field, the field is unchanged.

FIELDS <field list>

The optional FIELDS <field list> can be used to restrict the fields updated to those in the comma separated <field list>.

MEMO

By default, memo fields are ignored by the GATHER command. If the MEMO keyword is specified, memo fields will be included.

If SET LOCKTYPE TO OPTIMISTIC is active, an attempt to use the GATHER command on a record that has been modified since it was last read will generate an error.

Example

use demo
goto 45
scatter fields last_name, first_name to table_1
append blank
gather fields last_name, first_name from table_1