Dropped the user (and their objects)
Re-created the tables, sequences, functions etc.
Did NOT re-create the constraints or triggers.
Did the import - fine!
Re-created the contstraints and triggers - and Hey presto! It works fine.
But there must be an easier way? If people use exports as a sort of back-up do they have disable constraints and db triggers to get the data back into the db?