South Africa's Quinton de Kock scored his third successive century and AB de Villiers top scored with 109 only for rain to wreck the third one-day international against India at Centurion.
South Africa had already wrapped up a 2-0 victory in the three-match series.
Ishant Sharma took 4-40 for the tourists but it was the stand of 171 from De Villiers and De Kock - who became the first wicket-keeper to score three consecutive hundreds in one-day cricket - that dominated.
It was the fulcrum of the Proteas' innings of 301-8, but two and a half hours of persistent rain led the umpires to abandon the match at 8.10pm local time with no result.
The pair came together at the crease with South Africa wobbling at 28-3, having lost three wickets for six runs.
They had a reprieve though when De Kock was dropped on 37, Ajinkiya Rahane fluffing a regulation catch at short fine leg.
It was something they would come to regret as De Kock progressed to his third century of the ODI series with a single off Shami.
De Villiers fired two successive sixes off Shami before the stand was ended after they had made 171.
De Kock swung at and missed a Sharma delivery with the ball clipping the top of the leg stump to send the bails flying.
De Kock had made 101 off 120 balls including nine boundaries and two sixes and walked back to the pavilion greeted by a standing ovation.
David Miller joined De Villiers at the crease and he was on fire, claiming his century with a single off Yadav, reaching his ton off just 96 balls.
He had reached 109 when Umesh Yadav bowled a fuller delivery, the ball clipping the pads for an easy lbw decision.
De Villiers' innings had come off 101 balls and included six boundaries and five sixes.
Sharma then claimed his 100th ODI wicket when he removed Ryan McLaren for a duck, Yadav coming forward to claim the catch at deep midwicket.
Wayne Parnell was out for nine after miscuing a Shami delivery with Rohit taking it easily at deep square leg.
Vernon Philander was also out cheaply for nought when Shami's delivery landed on top of middle stump.
Miller ended the innings with two off Shami as the hosts reached 301-8 but India's reply never got under way as the rain set in.