If there are one or more rows displayed on the page's grid (based on the 'list' action results) and the 'add' button is pressed, the page will attempt to insert every record again, instead of creating the new entry based on the values passed through.
The resolution below can also resolve an issue where the Delete function removes the record when users are trying to delete from the screen, but never calls the webservice to delete. If users refresh the grid, the record that was just “deleted” reappears.