Saving AX 2009 Morphx Report in PDF Format:
static void PrinttoPDF(Args _args)
{
PurchFormLetter purchFormLetterp;
PrintJobSettings printJobSettings;
VendInvoiceJour vendInvoiceJour;
PrintFormat PrintFormat;
Args args = new Args();
#File
purchFormLetterp =
PurchFormLetter::construct(DocumentStatus::Invoice,false);
printJobSettings = new
PrintJobSettings();
printJobSettings.setTarget(Printmedium::File);
//printJobSettings.getPrinter();
// printJobSettings.deviceName("");
//
printJobSettings.unpackPrinterSettings(PurchFormLetter::getPrinterSettingsFormletter(DocumentStatus::Invoice,PrintSetupOriginalCopy::Original));
//
printJobSettings.preferredTarget(PrintMedium::Printer);
printJobSettings.format(PrintFormat::PDF);
printJobSettings.fileName(
@'c:\TEMP\myfile2.pdf');
printJobSettings.warnIfFileExists(false);
purchFormLetterp.updatePrinterSettingsFormLetter(printJobSettings.packPrintJobSettings());
select vendInvoiceJour where
vendInvoiceJour.Purchid == 'PO/15-16/00443';
vendInvoiceJour.printJournal(purchFormLetterp);
// args.record(vendInvoiceJour);
// args.caller(purchFormLetterp);
// new
MenuFunction(menuitemoutputstr(Purchinvoicecopy),
MenuItemType::Output).run(args);
}
Code to get the printout directly from a morphx report 2009:
//directly to printer
//directly to printer
static void ReporttoPrint(Args _args)
{
Args
args;
ReportRun rr;
Report
rb;
PrintJobSettings pjs;
VendInvoicejour
record;
;
select record where record.Purchid ==
'PO/15-16/00421';
args = new
Args("Purchinvoice");
args.record(record);
args.parmEnum(PrintCopyOriginal::OriginalPrint);
rr = new ReportRun(args,'');
rr.suppressReportIsEmptyMessage(true);
rr.query().interactive(false);
rb = rr.report();
rb.interactive(true);
pjs = rr.printJobSettings();
pjs.fileName(strfmt(@'c:\TEMP\myfile2.pdf',
record.purchid));
pjs.fitToPage(true);
pjs.virtualPageHeight(-1);
pjs.format(PrintFormat::PDF);
pjs.deviceName('Canon iR2220/iR3320
PCL5e');
pjs.setTarget(PrintMedium::Printer);
pjs.viewerType(ReportOutputUserType::PDF);
pjs.lockDestinationProperties(true);
rr.prompt();
rr.init();
rr.run();
}
No comments:
Post a Comment