This routine generates its own editing transaction, and therefore cannot be wrapped in a separate transaction. Because the editing performed by this routine cannot be undone, this routine can also not be called within an editing session. All edits in the current edit session must be saved or discarded before calling this routine.