Class RunBaseReport
When you create a class that extends from RunBaseReport and you try to modify the printer preferences it won’t have any effect. This small bug can be fixed very easy.
Edit the class RunBaseReportDialog, method main and check lines 14 and 15:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | static void main(Args args) { RunBaseReportDialog reportDialog = new RunBaseReportDialog(args.caller()); RunBaseReport runBaseReport = args.caller().runbase(); ReportRun reportRun = runBaseReport.reportRun(); Report report = reportRun.report(); boolean oldInteractive; boolean res; Dialog dialog; ; // We must invoke the SysPrintForm via the report object so that we honor an prompt overrides. oldInteractive = report.interactive(); report.interactive(true); //res = reportRun.prompt(); // COMMENTED res = reportDialog.prompt(); // CHANGE OF CODE report.interactive(oldInteractive); if (!res) return; dialog = Dialog::getDialogFromCaller(args.caller()); if (dialog) { dialog.updateServer(); } runBaseReport.dialogUpdatePrinterSettings(dialog); reportDialog.run(); } |
Tags: Ax 5.0 (2009), Dynamics AX, Programming, RunBaseReport, X++
This entry was posted on Monday, April 13th, 2009 at 20:45 and is filed under Ax 5.0 (2009). You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.


December 8th, 2009 at 08:30
Thanks a lot for this post.
/Jonas
April 12th, 2010 at 17:34
excellent. I was looking for this. Thanks