To only allow a user to enter new records into a form set the Data Entry property to Yes. This will, however, lock them out of viewing previously entered information.
To allow them access to view previous records (but not change the data) set each fields Locked property to Yes.
You may find it easier to create 2 separate forms to do this but it can be done using only one with some coding to check if the current record is a new record or not.
As far as reports are concerned - launch your reports from a command button on a separate form.