To summarise, I suggest something like this:
1. Remove the Print button from the Preview toolbar - see the link posted by Olaf above.
2. In your sales orders, invoices, etc. tables, add a logical field to say if the document has been physically printed yet (as per Olaf's suggested Status field).
3. When a user wants to print an order (or whatever), check the Status flag to see if it has already been printed. If not, execute a [tt]REPORT FORM .... TO PRINT[/tt] command. Then set the flag to say it has been printed. If it has already been printed, tell the user that he cannot print it again.
That just leaves the question of what to do about a failed printout, such as a paper wreck. For that, you can give a special privilege to a supervisor that will allow him to reset the status flag. And perhaps automatically keep a log of all instances when that is done.
Mike
__________________________________
Mike Lewis (Edinburgh, Scotland)
Visual FoxPro articles, tips and downloads