The best plan…
Try to disallow erroneous value entry or selection in the first place.
Perhaps use a discrete selection in a drop list rather than free text.
Only allow numbers in numeric fields (don’t forget +/-/e/. etc.)
Just correct obvious issues…
Correct badly entered values automatically (often, you don’t even need to let the user know that you have done it – unless there is uncertainty around the correction, of course).
Credit card numbers with spaces
Provide hints and tips…
Discourage erroneous value entry.
Use hints or well worded labels, title text and watermarked entry fields.
Employ highlighting of problems dynamically during value entry.
Finally, if you need to report a problem, do it well…
If you need to report an issue… please don’t just say what went wrong and leave it there. Make a point of clearly stating the following;
What went wrong.
Why it went wrong.
How to fix it.
The could mean a rather complete error message, e.g.
The file could not be transferred due to a network communication problem. Check cables and network settings and try again.
If you remove any one of the what, why or what from the above; it becomes less meaningful. Generally, the less precise the fix, the more need for the reasons.
or, if appropriate, the fix could imply the why and the what, e.g.
The value must be in the range 10 to 50.
This example could be worded in a number of ways. Stating just the why would also work; “The value was not in the range 10 to 50″.
In essence, I believe that it always helps to expand beyond the what. Just stating that a problem happened not only purely focusses on the negative, it also leads to frustration as the user then has to draw on their own knowledge or do their own research.