South Africans 271 for 6 (Duminy 92, Thisara Perera 2-49) beat Sri Lanka Cricket Board President's XI 198 (Morris 3-27, Peterson 3-37) by 73 runs
Scorecard and ball-by-ball details

JP Duminy's 92 runs, and two wickets helped the South Africans cruise to a 73-run victory in their warm-up match in Colombo, ahead of the five-match ODI series that begins on Saturday. Duminy injected urgency to the South Africans' batting effort after it had threatened stagnation early on, before building strong partnerships with AB de Villiers and Faf du Plessis, on a slow Colts Cricket Club surface. The South Africans could not score as many as they might have hoped in the final overs, considering they had only lost three wickets by the 45th, but their bowlers' fire and discipline might have defended a much lighter total than 271 for 6 against this opposition.

The visitors attack was bereft of Morne Morkel's services for much of the innings though, after he left the field with tightness in his left quad after his third over. Morkel had left the Champions Trophy in June with a quad injury, and had been believed to have recovered fully, but his availability for the series will now need to be assessed on Thursday morning, after he is observed overnight.

Earlier in the day, Duminy was strong square of the wicket, sweeping well and often, while also regularly gliding back to stroke the slow bowlers through point, as he progressed smartly against the friendly spin of Chaturanga de Silva and Jehan Mubarak. He was reluctant to use his feet, with the pitch offering some bounce, but he prospered whenever he advanced, hitting his first six over long on off Mubarak in the 45th over, before depositing de Silva over deep-square leg next over.

Having batted securely since the 13th over, Duminy had begun to search for quick runs after the 42nd, but perished in sight of a fifth List-A ton when he attempted to pick the bowler off his legs by shuffling to the off side only to be bowled behind his pads by Dhammika Prasad. Prasad and Thisara Perera picked up three wickets between them in the final overs, as the South Africans struggled to time the ball in their search for a furious finish.

In the opposition's innings, Chris Morris was intense in his early spell, pinning Dimuth Karunaratne to the crease with a barrage of quick, short deliveries aimed at the body, and when Karunaratne finally ventured an expansive cover drive, the extra bounce Morris generated drew a thin top-edge to the keeper. He also dismissed Kusal Perera in his first spell, after the batsman had looked typically threatening early on before playing the familiar loose shot that brings his demise. This time he missed an ambitious swipe to the leg side to be trapped in front.

The home side sought stability through a string of promising partnerships in the middle overs, but the South African spinners had bowled tightly, and attempts to stay in touch with the required run rate led to regular dismissals. Dinesh Chandimal could not shake himself out of a poor run of form, holing out to deep-square leg on 21 ahead of what is likely to be his first match as ODI captain on Saturday, while Thisara Perera's innings of 19 may not be enough to see him regain his place in the national side. Angelo Perera and Jehan Mubarak improved their chances of selection, however, with scores in excess of 40.

Both Morris and Robin Peterson finished with three wickets apiece, and the South Africans dismissed Mubarak in the 45th over to complete the win.

Andrew Fidel Fernando is ESPNcricinfo's Sri Lanka correspondent. He tweets here