I had some fun with this as well!
The Stored Procedure does not get fired when using Append Blank.
* ID, FNAME, LNAME, MNAME
SELECT viewNames
APPEND BLANK
* viewNames.ID = 0
REPLACE fname WITH 'John', lname WITH 'Jones', mname WITH 'Percy'
* this will save the record to the actual table
* This will also call the Stored Procedure
GOTO RECNO() && or try TABLEUPDATE(.T., .T.)
* viewNames.ID = 0
* table Names.ID = 123
= REQUERY()
* viewNames.ID = 123
? viewNames.ID
Have fun!