We can solve this problem by calculating the individual rate of working and equate it to their total rate of working.
If Dave can complete a sales route in 4 hours, then his working rate is

Also, if James can do it in 5 hours, then his working rate is

Let

be the hours that both will use to complete the sales route,
Then rate at which both completes this task is

Meaning if we add their individual rates we should get

That is;

The LCM is

So let us multiply through with the LCM.


We simplify to get,

Dividing through by 9 gives;


Therefore the two will complete sales route in

hours.