McGrattan was assigned to the Flames' American Hockey League affiliate in Abbotsford.
McGrattan played 34 games for Calgary during the 2009-10 season, posting one goal, four points and 86 penalty minutes.
He took to Twitter following the trade annoucement to say: "wanna thank the nashville predators and all the fans for everything and cant wait to put the flaming C back on!!!!"
In his career, McGrattan has three goals, 16 points and 456 penalty minutes in 214 games for the Ottawa Senators, Phoenix Coyotes, Flames and Predators. He was scoreless in two games for Nashville this season.
Piskula is scoreless in 10 career NHL games with the Los Angeles Kings and Flames.