Showing posts with label args. Show all posts
Showing posts with label args. Show all posts

Friday, 28 October 2011

How to pass parameters from Form to form

Hi,
Sometimes we want to open a form from another form with the selected record . For this we need to pass the parameters from form A to form B . This could be achieved by using args class by overriding the click method of button on form A.
In this example we will use two forms form A is salesLine form and form B is inventenquiry form. when the user will click on the button on form A it will open form B filtering the record according the form A value.lets start

  1. Put a button on form A and override its click method
  2. write the following code

void clicked()
{
    //super();
    Args args=new Args();
    Itemid itemid;
    FormRun formRun;
    ;
    args.name(formstr(InventEnquiry)); // invent enquiry is the form B
    args.parm(salesLine.ItemId);// passing the item id from Form A
 
    formRun = classFactory.formRunClass(args); /// passing the args class
    formRun.init();
    formRun.run();
    formRun.wait();
 
}
3.Now override the init method of the form B data source inventTable

public void init()
{
     super();
     if(element.args().parm())
    {

       this.query().dataSourceName('InventTable').addRange(fieldnum(InventTable,ItemId)).value(element.args().parm());
       this.query().userUpdate(false);
            this.query().interactive(false);

    }

}

Hope it helps
cheers,