LOOP THROUGH SELECTED RECORDS OF A GRID
1. Add a action MenuItem in a form as a MenuItemButton.
2.Take a clicked method()
void clicked()
{
MenuFunction mf;
args args = new Args();
;
args.record(Table1);
mf = new menufunction(identifierstr(classParmData), MenuItemType::Action);
mf.run(args);
}
3.Take a class
class ClassParmData
{
Table1 tb1;// table variable declaration
}
----
public static void main(Args _args)
{
ClassParmData parmData;
Table1 table1;
FormDataSource fds;
;
if(args.record().TableId == tablenum(Table1))
table1 =_ args.record(); // assigning the selected record
fds = _table1.dataSource();// getting the datasource
parmData= new ClassParmData(fds); //passing the form datasource to New() method
or
parmData.parmFormDataSource(fds); // passing the form datasource to parm method to use in other methods
/*table1 = fds.getFirst(); // can loop all the record here also
while(table1)//fds.getNext())
{
info(strfmt(table1.Field1));
table1 = fds.getNext();
}*/
fds.research();// to refresh the form records
}
-----
void new(FormDataSource fdst) // receving the datasource to fdst-FormDataSource
{
;
for(tb1 = fdst.getFirst(true); tb1; tb1 = fdst.getNext()) // fdst.getFirst(True) to select marked records
{
info(strfmt(tb1.Field1));
}
//if you are updating some records in the form write the below line to refresh the data in form.
//fdst.research();
}
void parmFormDataSource(formDataSource fdst)
{
for(tb1 = fdst.getFirst(true); tb1; tb1 = fdst.getNext()) // fdst.getFirst(True) to select marked records
{
info(strfmt(tb1.Field1));
}
//if you are updating some records in the form write the below line to refresh the data in form.
//fdst.research();
}
-----
4. and then select a record in form grid and click a menuitemButton you can see the all datasource records in info.
2.Take a clicked method()
void clicked()
{
MenuFunction mf;
args args = new Args();
;
args.record(Table1);
mf = new menufunction(identifierstr(classParmData), MenuItemType::Action);
mf.run(args);
}
3.Take a class
class ClassParmData
{
Table1 tb1;// table variable declaration
}
----
public static void main(Args _args)
{
ClassParmData parmData;
Table1 table1;
FormDataSource fds;
;
if(args.record().TableId == tablenum(Table1))
table1 =_ args.record(); // assigning the selected record
fds = _table1.dataSource();// getting the datasource
parmData= new ClassParmData(fds); //passing the form datasource to New() method
or
parmData.parmFormDataSource(fds); // passing the form datasource to parm method to use in other methods
/*table1 = fds.getFirst(); // can loop all the record here also
while(table1)//fds.getNext())
{
info(strfmt(table1.Field1));
table1 = fds.getNext();
}*/
fds.research();// to refresh the form records
}
-----
void new(FormDataSource fdst) // receving the datasource to fdst-FormDataSource
{
;
for(tb1 = fdst.getFirst(true); tb1; tb1 = fdst.getNext()) // fdst.getFirst(True) to select marked records
{
info(strfmt(tb1.Field1));
}
//if you are updating some records in the form write the below line to refresh the data in form.
//fdst.research();
}
void parmFormDataSource(formDataSource fdst)
{
for(tb1 = fdst.getFirst(true); tb1; tb1 = fdst.getNext()) // fdst.getFirst(True) to select marked records
{
info(strfmt(tb1.Field1));
}
//if you are updating some records in the form write the below line to refresh the data in form.
//fdst.research();
}
-----
4. and then select a record in form grid and click a menuitemButton you can see the all datasource records in info.
Thank you!
ReplyDeleteVery useful blue bird.
ReplyDeleteI really like the blue bird only.
ReplyDeleteThe rest of the blog it's nothing but a cut and paste work, but this blue bird has stolen my heart
DeleteWhere can I buy the blue bird?
ReplyDeleteLooking nice info
ReplyDelete