Portsmouth booked their place in March's Checkatrade Trophy final after a resounding 3-0 win over Bury at Gigg Lane on Tuesday.
Kenny Jackett's side came into the game on the back of a dreadful run of form suffered since the turn of the year; five successive draws followed three successive defeats and almost rendered Pompey underdogs against a side second in League Two.
And the Shakers held their own in the first half. Caolan Lavery planted a header wide of the mark inside two minutes, while Craig MacGillivray had his fair share of shots to deal with; Jay O'Shea and Danny Mayor also went close before the break.
But after the hour mark, Gareth Evans curled home a free-kick and, from there, there was no way back for Ryan Lowe's men, as Oliver Hawkins added a quick-fire second from close range after 64 minutes.
Irish winger Ronan Curtis added the gloss to the victory 13 minutes from time with his 15th goal of the season, but though MacGillivray kept out Lavery's free-kick late on, it was Pompey who held on for a crucial win - their first since New Year's Day.
Portsmouth's opponents for the showpiece on Sunday 31 March will be confirmed next Tuesday evening as Bristol Rovers host Sunderland at the Memorial Stadium, in a game live on Sky Sports Football.