Alfasith AX

Alfasith AX
اللَّهُمَّ انْفَعْنِي بِمَا عَلَّمْتَنِي، وَعَلِّمْنِي مَا يَنْفَعُنِي، وَزِدْنِي عِلْمًا

Monday, July 1, 2013

Passing the container value between the forms in Dynamic AX


Over ride as init() method in FormB
public void init()
{
    str             anyStringValueFromCaller;
    container       contain;
    ;
    super();

    // Check for passed arguments
    if( element.args() )
    {
        // get string parameter
        //anyStringValueFromCaller =
        contain = str2con(element.args().parm());
        Sex.text(conPeek(contain,1));
        MaritalStatus.text(conPeek(contain,2));       
        anyStringValueFromCaller = conPeek(contain,3);
        AccountNum.text(anyStringValueFromCaller);
    }
}

Override as clicked() in FormA
void clicked()
{
    // Args class is usually used in Axapta for passing parameters between forms
    Args            args;
    FormRun         formRun;
    container contain;
    str        containstr;
    ;

    args = new args();

    // Our values which we want to pass to FormB
    // If we want pass just simple string we can use 'parm' method of 'Args' class
   contain = [sex.valueStr(),MaritalStatus.valueStr(),AccountNum.valueStr()];
    containstr = con2Str(contain);
    args.parm(containstr);

    // Run FormB

    args.name(formstr(DBForm));
    formRun = classFactory.formRunClass(Args);
    formRun.init();
    formrun.run();
    formrun.wait();

    super();
}



No comments:

Post a Comment

How find size of recordsortedlist in D365/AX 2012

Hi, This is the continuity of the previous article where we are now getting the size of recordsortedlist . if(recordsortedlist.len() >1) ...