我目前使用的是 AX 2012 R2。我目前在 AOT 中有一个自定义查询对象,用于向自定义 SSRS 报告提供数据。
在 SalesTable 表单中,我在 SalesTable 表单上有一个自定义按钮,我在其中重写了 clicked 方法以调用自定义输出菜单项,以提供 SalesTable.CustAccount 和 SalesTable.SalesId 的参数。
但是,当我在 SalesTable 表单上选择另一条记录并单击自定义按钮时,查询对话框会正常显示(用于选择精确值的对话框),但我的参数的最后选择值仍然完好无损。我假设由于使用数据。
通过使用查询创建 SSRS 报告,有没有办法将表单中当前选定的记录值作为参数提供给对话框,而不是使用数据中保存的内容?
请提前告知并感谢
void clicked()
{
MenuFunction jobCardReport;
Args args = new Args();
Query query = new Query();
QueryRun queryRun;
QueryBuildDataSource qbds;
QueryBuildRange queryBuildRange;
SalesTable salesTableRecord;
;
salesTableRecord = element.args().record();
qbds = query.addDataSource(tableNum(SalesTable));
queryBuildRange = qbds.addRange(fieldNum(SalesTable, CustAccount));
queryBuildRange.value(salesTableRecord.CustAccount);
queryBuildRange = qbds.addRange(fieldNum(SalesTable, SalesId));
queryBuildRange.value(salesTableRecord.SalesId);
queryRun = new QueryRun(query);
jobCardReport = new MenuFunction(menuitemOutputStr(TestCard), MenuItemType::Output);
args.parm(strFmt("TestCard_DynamicParameter=%1, %2", salesTableRecord.CustAccount, salesTableRecord.SalesId));
jobCardReport.run(args);
super();
}
最后 3 行代码允许我使用“选择”按钮从查询对话框中传递手动选择。但在随后的运行中,无论哪个记录显示在 SalesTable 表单中,手动选择仍然存在。