Dynamics AX Blog - Page 21

These posts are machine-translated.

AX 2012: Using the titlefields-method in forms

In a lot of forms of type Detailspage you see an area, which looks like in following screenshot .

Screenshot

This area is mostly build using the - as far as i know undocumented - method titleFields(). This method returns a string of 60 characters.

Screenshot 


 
 

Print text-document using X++

Below you'll find a example, how to print a Text-document using X++.

static void printTextFileFromAX(Args _args)
{
    WinAPI::shellExecute("c:\windows\system32\NOTEPAD.EXE",  @'/pt "c:	emp	est.txt" "An OneNote 2010 senden"');
}

Note: "An OneNote 2010 senden" is the name of the printer.


 
 

Open a modal form

To call a modal form, the following code could be used (in clicked()-method of a button):

void clicked()
{
    FormRun formRun;
    Args args = new Args();

    super();
    
    args.name(formStr(MyFormName));
    args.record(SalesLine);

    formRun = classFactory::formRunClassOnClient(Args);

    formRun.init();
    formRun.run();
    If (!formRun.closed())
    {
        formRun.wait(true);
    }
}

Using this code, nearly every form could be opened in a modal way, so you have to close the form first before you will be able to return to AX.


 
 

Open form through code

Below you find some examples, how to open a form through code. Each example has it's own Advantages and disadvantages, but i think there is an example available for the most Scenarios.

static void openFormThroughCode_0(Args _args)
{
    menuFunction menuFunction;
    args args;
    CustTable custTable = CustTable::find('1101');
   
    args = new args();
    args.record(CustTable);
    args.formViewOption(FormViewOption::Grid);
   
    menuFunction::runClient(identifierStr(custTable), MenuItemType::Display, false, args);
}

 

static void openFormThroughCode_I(Args _args)
{
    FormRun formRun;
    args args = new args();
    args.name(formstr(CustTable));
    args.formViewOption(FormViewOption::Grid);
   
    formRun = classFactory.formRunClass(args);
    formRun.run();
    formRun.wait();
}

 
 

Searching for menu items name

In Dynamics AX there is no way to search about a menu items name. So i've created a job, which creates the ability to do so.


 
 

How to use labels contaning line breaks in infolog

Some labels containe line breaks ( ). If you want to use such label in infolog, you should use the function strFmtLB:

// Wrong
info(strFmt("@SYS322576", "AccountsPayableServices", "Allgemeiner Fehler"));

// Correct
info(strFmtLB(strFmt("@SYS322576", "AccountsPayableServices", "Allgemeiner Fehler")));

 
 

AX 2012: Print document through code

With the following job you can reprint an order confirmation by code and have it output as a PDF file.

With the help of similarly named classes such as the SalesConfirmJournalPrint used here, it should also be possible to reprint other documents such as invoices or delivery notes.

static void printSalesConfirmThroughCode(Args _args)
{
    SalesConfirmJournalPrint SalesConfirmJournalPrint;
    set set = new set(Types::Record);
    SRSPrintDestinationSettings SRSPrintDestinationSettings;
    
    // Add record
    set.add(CustConfirmJour::findRecId(5637150827));
    
    // Set printer settings
    SRSPrintDestinationSettings = new SRSPrintDestinationSettings();
    SRSPrintDestinationSettings.fileFormat(
        SRSReportFileFormat::PDF);
    SRSPrintDestinationSettings.fileName(@'c:ab.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); 
}

 
 
Pages « 1 ... 18 19 20 21 22 23 24 » 

 

 
 
 
Posts of the actual month
April 2024
MoTuWeThFrSaSu
1234567
891011121314
15161718192021
22232425262728
2930 
 
© 2006-2024 Heinz Schweda | Imprint | Contact | German version | Mobile version
In order to provide you with better service, this site uses cookies. By continuing to browse the site, you are agreeing to our use of cookies.