HOWTO: Imprimir PDF desde AX mediante código

Habitualmente se presenta la necesidad de imprimir documentos desde Dynamics AX en formato PDF. Esta es una funcionalidad, presente en el estándar, se puede replicar por código según las necesidades.

El siguiente Job (basado en otro original de Giridhar Raj’s Blog) indica como hacerlo para imprimir una factura pero es fácilmente extensible a otro tipo de documentos:

/*
 *      www.jaestevan.com
 */
static void ImprimirPDF(Args _args)
{
    SalesFormLetter     salesFormLetter;
    PrintJobSettings    printJobSettings;
    CustInvoiceJour     custInvoiceJour;
    SalesId             salesId             = "SO-100108";
    FileName            fileName;
 
    #File
    ;
 
    salesFormLetter = SalesFormLetter::construct(DocumentStatus::Invoice,false);
 
    printJobSettings = new PrintJobSettings();
    printJobSettings.setTarget(PrintMedium::File);
    printJobSettings.format(PrintFormat::PDF);
    printJobSettings.fileName(strfmt(@"c:\%1%2", salesId, #pdf));
    printJobSettings.warnIfFileExists(false);
 
    salesFormLetter.updatePrinterSettingsFormLetter(printJobSettings.packPrintJobSettings());
 
    select custInvoiceJour
        where custInvoiceJour.SalesId == salesId;
 
    custInvoiceJour.printJournal(salesFormLetter);
}

Descarga

2 respuestas

  1. Hola Liliana,

    La funcionalidad estándar está disponible sólo para reports (que yo sepa). Si quieres imprimir un texto suelto siempre se puede crear un report, poner el texto e imprimirlo, incluso de forma dinamica.

    Saludos.

  2. Hola, tengo una duda, sólo se pueden imprimir reportes a PDF?? no es posible imprimir solo un texto??
    Quedo atenta a tu respuesta,

Los comentarios están cerrados.

jaestevan
Microsoft Dynamics AX MVP. Programador y consultor técnico de soluciones Microsoft Dynamics AX y Business Intelligence. Experiencia con Dynamics AX, SQL Server y lenguajes como VB6, .NET C#, PHP, Java, etc. para desarrollos de escritorio, PDA, sitios y servicios web, interfaces de integración, etc.