Some user regularly have:
"A copy of this file is checked out on another machine. The server copy may not contain your latest changes. Would you like to discard your check out before opening the server copy"
What could be the causes?
Most probably the reason here is that version control is enabled in your library and the option to check out items first before editing them is enabled as well. The problem here is that sometimes user tend to not check-in items after editing them.
What you can do, though not recommended is to turn off the setting which requires check out before editing so that users don't get this error.