Here is my code
[ExtensionOf(classstr(PurchPurchaseOrderController))]
final class PurchPurchaseOrderController_Extension
{
protected void initFormLetterReport()
{
next initFormLetterReport();
if (printCopyOriginal == PrintCopyOriginal::OriginalPrint)
{
formLetterReport.cfssrsprintdestinationsetting();
}
}
}
[ExtensionOf(classstr(FormLetterReport))]
final class FormLetterReport_Extension
{
public void cfssrsprintdestinationsetting()
{
SrsReportRunController controller = new SrsReportRunController();
SRSPrintDestinationSettings printSettings;
SrsReportEMailDataContract emailContract;
controller.parmReportName(ssrsReportStr(PurchPurchaseOrder, Report));
emailContract = new SrsReportEMailDataContract(); // create email contract
// fill in the email contract details
emailContract.parmAttachmentFileFormat(SRSReportFileFormat::PDF);
emailContract.parmSubject("Purchase Order Confirmation");
emailContract.parmTo("cmummadi@cloudfronts.com");
// get print settings from contract
printSettings = controller.parmReportContract().parmPrintSettings();
// update print settings with email contract and use pdf format in the attachment
printSettings.printMediumType(SRSPrintMediumType::Email);
printSettings.parmEMailContract(emailContract);
printSettings.fileFormat(SRSReportFileFormat::PDF);
// suppress the parameter dialog
controller.parmShowDialog(false);
// start operation
controller.startOperation();
}
}