Edit an element of an oce object, inserting a note in the processing log of the returned object.
oceEdit( x, item, value, action, reason = "", person = "", debug = getOption("oceDebug") )
an oce object. The exact action of
if supplied, a character string naming an item in the object's
new value for
optional character string containing R code to carry out some action on the object.
character string giving the reason for the change.
character string giving the name of person making the change.
an integer that specifies a level of debugging, with 0 or less indicating no debugging, and 1 or more indicating debugging.
A oce object, altered appropriately, and with a log item indicating the nature of the alteration.
There are several ways to use this function.
If both an
value are supplied, then
either the object's metadata or data slot may be altered. There are
two ways in which this can be done.
Case 1A. If the
item string does not contain an
@ character, then the
metadata slot is examined
for an entry named
item, and that is modified if so.
item is found in
that value is modified. However, if
item is not found in
data, then an error is reported
(see 1B for how to add something that does not yet exist).
Case 1B. If the
item string contains
@ character, then the text to the left of that character
must be either
"data", and it names the slot
in which the change is done. In contrast with case 1A, this will
create a new item, if it is not already in existence.
value are not supplied, then
be supplied. This is a character string specifying some action to be
performed on the object, e.g. a manipulation of a column. The action must
refer to the object as
x; see Examples.
In any case, a log entry is stored in the object, to document the change.
Indeed, this is the main benefit to using this function, instead of altering
the object directly. The log entry will be most useful if it contains a
brief note on the
reason for the change, and the name of the
person doing the work.