One of the biggest reasons for CRM failure in companies big and small is staff rejection. The 'pay off' for CRM is based on the assumption of an accurate and complete picture of the customer relationship.
Naturally, the people who play the biggest part in achieving this are the staff who actually interact with customers, the front-line staff who bear the burden of data entry.
Generally speaking, these staff members get little obvious benefit from a CRM compared to management (through the ability to draw detailed reports and statistics) or marketing (through the ability to run much more effective and targeted campaigns). Given front-line staff have to put in all the effort without seeing a reward, it is easy to see why they have rejected many CRM implementations to the point of failure.
The solution is to automate as much of the data entry as possible. Phone calls, emails, faxes and other touch points can be automated with technology. Effort and commitment by operators will still be necessary; create reward structures, incentives and KPIs to introduce some balance into the effort/reward trade-off.