Hi,
I tried this ,
static void SR_SaveReportToPDFFromController1(Args _args)
{
SalesInvoiceController salesInvoiceController;
SalesInvoiceContract salesInvoiceContract;
Args args = new Args();
SrsReportRunImpl srsReportRun;
CustInvoiceJour custInvoiceJour;
ReportName reportName = "SalesInvoice.Report";
SrsPrintMgmtExecutionInfo reportExecutionInfo;
;
select firstOnly custInvoiceJour;
args.record(custInvoiceJour);
salesInvoiceController = new SalesInvoiceController();
salesInvoiceController.parmReportName(reportName);
reportExecutionInfo = salesInvoiceController.parmReportContract().parmReportExecutionInfo() as SrsPrintMgmtExecutionInfo;
if(!reportExecutionInfo)
{
reportExecutionInfo = new SrsPrintMgmtExecutionInfo();
}
reportExecutionInfo.parmOriginalDestinationFileName("c:\\SR_SalesInvoice.pdf");
salesInvoiceContract = salesInvoiceController.parmReportContract().parmRdpContract();
salesInvoiceContract.parmRecordId(custInvoiceJour.RecId); // Record id must be passed otherwise the report will be empty
salesInvoiceContract.parmCountryRegionISOCode(SysCountryRegionCode::countryInfo()); // comment this code if tested in pre release
salesInvoiceController.parmArgs(args);
srsReportRun = salesInvoiceController.parmReportRun() as SrsReportRunImpl;
salesInvoiceController.parmReportRun(srsReportRun);
salesInvoiceContract.parmDocumentTitle("Invoice");
salesInvoiceController.parmReportContract().parmReportExecutionInfo(new SrsPrintMgmtExecutionInfo());
salesInvoiceController.parmReportContract().parmPrintSettings().printMediumType(SRSPrintMediumType::File);
salesInvoiceController.parmReportContract().parmPrintSettings().overwriteFile(true);
salesInvoiceController.parmReportContract().parmPrintSettings().fileFormat(SRSReportFileFormat::PDF);
salesInvoiceController.parmReportContract().parmPrintSettings().fileName("C:\\Users\\bharathk\\Desktop\\SR_SalesInvoice.pdf");
info("Report Saved");
SalesInvoiceController.runReport();
}
but i am getting error like this,
"The permissions granted to user 'domain\username' are insufficient for performing this operation.
I searched in google but cant find any solution."
But for below code,this is working fine,
i dont know where its going wrong
ProjInvoiceController ProjInvoiceController;
PSAProjInvoiceContract PSAProjInvoiceContract;
SrsPrintMgmtExecutionInfo reportExecutionInfo;
Args args = new Args();
SrsReportRunImpl srsReportRun;
ProjInvoiceJour ProjInvoiceJour;
ReportName reportName = "PSAProjInvoice.Report";
select firstOnly ProjInvoiceJour;
args.record(ProjInvoiceJour);
ProjInvoiceController = new ProjInvoiceController();
ProjInvoiceController.parmReportName(reportName);
reportExecutionInfo = ProjInvoiceController.parmReportContract().parmReportExecutionInfo() as SrsPrintMgmtExecutionInfo;
if (!reportExecutionInfo)
{
reportExecutionInfo = new SrsPrintMgmtExecutionInfo();
}
reportExecutionInfo.parmOriginalDestinationFileName("c:\\SR_SalesInvoice.pdf");
PSAProjInvoiceContract = ProjInvoiceController.parmReportContract().parmRdpContract();
PSAProjInvoiceContract.parmProjInvoiceJourRecId(ProjInvoiceJour.RecId);
PSAProjInvoiceContract.parmCountryRegionISOCode(SysCountryRegionCode::countryInfo());
ProjInvoiceController.parmArgs(args);
srsReportRun = ProjInvoiceController.parmReportRun() as SrsReportRunImpl;
ProjInvoiceController.parmReportRun(srsReportRun);
PSAProjInvoiceContract.parmReportTitle("Invoice");
ProjInvoiceController.parmReportContract().parmReportExecutionInfo(reportExecutionInfo);
ProjInvoiceController.parmReportContract().parmPrintSettings().printMediumType(SRSPrintMediumType::File);
ProjInvoiceController.parmReportContract().parmPrintSettings().overwriteFile(true);
ProjInvoiceController.parmReportContract().parmPrintSettings().fileFormat(SRSReportFileFormat::PDF);
ProjInvoiceController.parmReportContract().parmPrintSettings().fileName("C:\\Users\\bharathk\\Desktop\\salesinvoice.pdf");
ProjInvoiceController.runReport();
info('Report exported to file');
PLease advise.