So what's the problem? Hide this button and create new menu item button. Also this is the tread for D365, not for AX2012.
In case you need to do that by event handling(due to some reason), you need to call main method of Controller class that is used to run your report, or you can pack args and use MenuFunction to call menu item that calls report without actually having menu item.