I often build "missing fields" formulas which do not prevent a user from saving a record; but do visually remind them that things are missing. This is especially prevalent when a Form is divided into TABS. If you force users to put data in by making fields required in a Form, you are probably opening the door to "bad data" entry or preventing users from different roles from editing records.
The advantage with a formula like this is that you can list all the fields that need to be populated; and as they are the message adjusts. You can also use this on reports - a good way to setup subscriptions to "Record Owners" or "Last Modified By" users when the missing-fields message is populated (or a longer version would be a report with filters that look for empty values across ANY of the required fields).
Harassing people by email generally leads to a "
notify@quickbase.com" ignore behavior, so something onscreen to remind users while they are in the record to finish it before saving is usually more productive.
For attachments, build a checkbox that looks for the file attachment field to be populated; then look for that checkbox value to evaluate if it is still missing.