SURVO MM Help System (web edition)

FILE COPY <original data>,<target file> 
or FILE COPY <original data> TO <target file> 
copies all the active fields in a Survo data set <original data> 
to another Survo data file, <target file>.
If the latter file does not exist, a new data file will be created.
The records to be copied may be limited by the CASES, IND, and SELECT
specifications.
If the target file exists, the active fields must be defined in it,
but the types and the lengths of the fields need not be the same as in
the original file.
Observations of <original data> will be new ones in <target file>.

If <target file> exists, it is deleted before copying by
FILE COPY <original data> TO NEW <target file>.

If the target file is a new one, extra space is allocated for future
needs when new fields are created. If the minimum space for one record
is len (in bytes) and the number of active variables m, 1.25*len+20
bytes and 1.25*m+4 fields is reserved for one record in the target file.
This convention may be overridden by a specification
NEWSPACE=<extra_amount_of_bytes>,<extra_#_of_fields>.
For example, NEWSPACE=0,0 creates a file with no extra space for new
fields.
NEWSPACE=SAME implies that # of bytes/observation and max # of fields
will be the same as the corresponding values in <original data>.

When a Survo data file becomes full and cannot accept new fields,
a simple way to extend its capacity is to create a new file
by FILE COPY thus letting it to increase space within a record.

To copy new fields to existing observations in <target file>,
an extra specification MATCH=<match field> may be given in the
current edit field. The observations have to be in the same order
in both data files. (See an exception below.)
MATCH=# implies copying of the first observation of <original data> to
the first observation of <target file> etc. without using any match field.

As a new extension (from ver. 1.15) a set of match fields can be given
in the form MATCH=<match field 1>,<match field 2>,...
Then the condition for copying is that values of all match fields in
<original data> coincide with those of <target file>.

When MATCH is used, FILE COPY assumes that each case to be copied from
the source file is also present in the target file. If not, an error
message will be given.
Such odd cases (without counterparts in the target file) are ignored
by entering a specification ODD=<variable> .
Then, for odd cases, FILE COPY will write value 1 in the ODD variable
of the source file and common cases will be copied according to MATCH.
It is the user's responsibility to initialize the ODD variable to 0
by VAR operation before FILE COPY. After FILE COPY, the ODD cases can
then be easily recognized and, for example, copied after the common
cases in the target file (by FILE COPY without MATCH).
The ODD variable can be omitted by entering ODD=NUL or by omitting
ODD and giving a MODE=1 specification.

If common cases are not in the same order in both files,
the specification must be given as ODD=<variable>,2 or as MODE=2
when no variable for indicating odd cases is needed.
In this case the process will be much slower.

In previous forms of FILE COPY, it has been assumed that each record
in source data is copied only once to the first matching record of the
target file.
In some cases, it is required that for each record in the target file
we have to copy the first matching record from the source data. Then
it is typical that one source record is needed for many records in the
target file. For example, we want to enter aggregated data for each
record separately.
This kind of performance is achieved by the specification MODE=3.
In this case, possible IND, CASES, and SELECT specifications refer to
the target file and not to the source file as in previous modes of
FILE COPY.

  D = More information on data management 


More information on Survo from www.survo.fi
Copyright © Survo Systems 2001-2012.
webmaster'at'survo.fi