This post is machine-translated. The original post in german language can be found here.
These post applies to following version:
Dynamics AX 2012
Dynamics AX 2012
|
|
|
|
|
|
This post is machine-translated. The original post in german language can be found here.
These post applies to following version:
Dynamics AX 2012
|
The following job demonstrates, how you can print an existing Sales confirmation through code. The example sends the report to screen.
{
SalesConfirmJournalPrint salesConfirmJournalPrint;
Set set = new Set(Types::Record);
SRSPrintDestinationSettings srsPrintDestinationSettings;
// Add record
set.add(CustConfirmJour::findRecId(5637155842));
// Set printer settings
srsPrintDestinationSettings = new SRSPrintDestinationSettings();
srsPrintDestinationSettings.fileFormat(SRSReportFileFormat::Screen);
// Initalize
salesConfirmJournalPrint = SalesConfirmJournalPrint::construct();
salesConfirmJournalPrint.parmPrintFormletter(NoYes::Yes);
salesConfirmJournalPrint.parmUsePrintManagement(false);
salesConfirmJournalPrint.parmPrinterSettingsFormLetter(srsPrintDestinationSettings.pack());
// Print
salesConfirmJournalPrint.printJournal(set);
}
Changing the parameter of the instance of SRSPrintDestinationSettings allows you to send the sales confirmation to printer, file or mail. The next example creates a PDF-file.
{
SalesConfirmJournalPrint salesConfirmJournalPrint;
Set set = new Set(Types::Record);
SRSPrintDestinationSettings srsPrintDestinationSettings;
// Add record
set.add(CustConfirmJour::findRecId(5637155842));
// Set printer settings
srsPrintDestinationSettings = new SRSPrintDestinationSettings();
srsPrintDestinationSettings.fileFormat(SRSReportFileFormat::PDF);
srsPrintDestinationSettings.fileName(@'c:\temp\confirmation.pdf');
srsPrintDestinationSettings.printMediumType(SRSPrintMediumType::File);
srsPrintDestinationSettings.numberOfCopies(1);
srsPrintDestinationSettings.overwriteFile(true);
// Initalize
salesConfirmJournalPrint = SalesConfirmJournalPrint::construct();
salesConfirmJournalPrint.parmPrintFormletter(NoYes::Yes);
salesConfirmJournalPrint.parmUsePrintManagement(false);
salesConfirmJournalPrint.parmPrinterSettingsFormLetter(srsPrintDestinationSettings.pack());
// Print
salesConfirmJournalPrint.printJournal(set);
}
If you want to print multiple sales confirmations at once, you have to add the corresponding CustConfirmJour-records to the set called "set:
// Add record
set.add(CustConfirmJour::findRecId(5637155842));
set.add(CustConfirmJour::findRecId(5637145354));
...
To save the sales confirmation additionally to print archive, you can add the following line:
srsPrintDestinationSettings.parmPrintToArchive(true);
...