• AX 2009 父窗体参数记录传递


    父窗体传递子窗体

    1、在Menu Item中的属性——Properties中设置要传的值,如:1。
    2、在被传值页面中的方法中element.args().parm() 就能得到被传的值。

    假如FormA和FormB,它们的记录(record)具有相同的EDT,就可以直接用menuitem button来调用,Axapta会自动帮你传递值,并且在FormB中自动过滤掉相应的值。

    在MenuItem的属性Parameters里设置一个参数;
    然后在Form的Init里如下进行判断:

    if(element.args().parm() == "参数")
    {
       ......
    }

    第一个窗口的Button按钮CLICKED事件

    void clicked()
    {
        Args args;
        FormRun fr;
        str  zz;
        ;

        super();
        zz 
    = "Kurodo";

        args 
    = new Args("Test2011");
        args.caller(element);
        args.parm(zz);

        fr 
    = ClassFactory.formRunClass(args);
        fr.init();
        fr.run();
        fr.wait();
    }

    被调用窗体Test2011的init函数

    public void init()
    {
        
    //FormRun fr; 
        super();

        
    //fr =element.args().caller();
        print  element.args().parm();
        print fr.name();
        
    }

    再一种写法,设置数据源,然后在写代码,切忌。别代码写的呱呱响,然后编译无错,结果无法运行就傻眼了~

    void init()
    {
        InventTable       m_InventT;
        ;

        m_InventTJ 
    = element.args.record();

        
    this.doSomeThing();
    }
  • 相关阅读:
    一、反射机制介绍_Class 对象获取
    六、.XPATH 技术_快速获取节点
    五、.DOM4J 方式解析 XML 数据
    四、.JDOM 解析 XML 数据
    三、SAX 方式解析 XML 数据
    二、DOM方式解析XML
    一、Schema验证XML
    三、线程同步Synchronized
    二、线程状态
    JDK8Lambda和方法的引用
  • 原文地址:https://www.cnblogs.com/Kurodo/p/2113003.html
Copyright © 2020-2023  润新知