| In FOCUS, like any database (including keyed-RMS or Rdb-with unique
indices) which uses key values, you CANNOT change the key value since
the key (and all its decendents) are what make the record unique. The
beauty of using FOCUS databases is that you can tag the record and
perform some match logic: update, delete, reject, etc..
There are, of course, tricks which make the whole process easier.
Without writing a program, try these steps:
- Identify the record to be updated via FIDEL or TABLE
- Use match logic to delete the record (do this behind the
scenes by logging the messages off)
- Put up a slave FIDEL screen which allows fields to be changed
keeping the original key value intact (on the screen).
You can do the same thing in TABLE/MODIFY like this:
TABLE FILE X
IF KEY_VAR EQ 1 OR 2 OR 3
PRINT KEY_VAR
ON TABLE HOLD
END
MODIFY FILE X
FIXFORM FROM HOLD
MATCH KEY_VAR
ON MATCH DELETE
ON NOMATCH INCLUDE
DATA ON HOLD
END
-RPR-
|