Buscar en este blog

sábado, 22 de julio de 2017

Imprimir factura electrónica (México) a partir de una CustInvoiceJour por código - Dynamics Ax 2012

Les comparto cómo mandar a PDF una factura electrónica a partir de la custInvoiceJour

static void SaveReportToPDFFromController(Args _args)
{
    EInvoiceCFDISalesController_MX salesInvoiceController;
    EInvoiceCFDIReportContract_MX salesInvoiceContract;
    Args                    args = new Args();
    SrsReportRunImpl        srsReportRun;
    CustInvoiceJour         custInvoiceJour;
    ReportName              reportName = "EInvoiceCFDIReport_MX.Report";
    EInvoiceJour_MX         eInvoiceJour_MX;
    SrsPrintMgmtExecutionInfo   srsPrintMgmtExecutionInfo;
    srsPrintMgmtExecutionInfo = new srsPrintMgmtExecutionInfo();
    select firstOnly custInvoiceJour where custInvoiceJour.RecId == 5637322330;
    select eInvoiceJour_MX
        where eInvoiceJour_MX.RefRecId == custInvoiceJour.RecId &&
              eInvoiceJour_MX.RefTableId == custInvoiceJour.TableId;
    args.record(eInvoiceJour_MX);
    salesInvoiceController = new EInvoiceCFDISalesController_MX();
    salesInvoiceController.parmReportName(reportName);
    salesInvoiceContract = salesInvoiceController.parmReportContract().parmRdpContract();
    salesInvoiceContract.parmRecordId(eInvoiceJour_MX.RecId);
    salesInvoiceController.parmArgs(args);
    srsReportRun = salesInvoiceController.parmReportRun() as SrsReportRunImpl;
    salesInvoiceController.parmReportRun(srsReportRun);
    salesInvoiceController.parmReportContract().parmPrintSettings().printMediumType(SRSPrintMediumType::File);
    salesInvoiceController.parmReportContract().parmPrintSettings().overwriteFile(true);
    salesInvoiceController.parmReportContract().parmPrintSettings().fileFormat(SRSReportFileFormat::PDF);
    salesInvoiceController.parmReportContract().parmPrintSettings().fileName(@"C:\Users\xxx\aloha.pdf");
    salesInvoiceController.parmReportContract().parmReportExecutionInfo(srsPrintMgmtExecutionInfo);
    salesInvoiceController.runReport();

}





No olvides que te puedes unir a la página en Facebook Aprendiendo Dynamics Ax donde únicamente se tratan temas de desarrollo y se busca crear una comunidad de desarrollador@s de Ax en nuestro idioma. 


No hay comentarios.:

Publicar un comentario