如何根据网格中动态创建的字段进行筛选和排序?

时间:2014-07-18 13:43:31

标签: axapta ax

我正在使用

在作业中创建表单
Form form;
FormRun formRun;
FormBuildDesign formBuildDesign;
FormBuildDataSource formBuildDataSource;

form = new Form();.
formBuildDataSource = form.addDataSource("Table");

formBuildDesign = form.addDesign("Design");
formBuildDesign.widthMode(1);
formBuildDesign.heightMode(1);
form.design().caption("Caption");

我正在通过

向表单添加网格
formBuildGridControl = formBuildDesign.addControl(FormControlType::Grid,"Table Grid");

之前的字段(它们被命名为F1,F2,...)到此网格
for(ii = 1;   ii < 5; ii++)
{       
    formBuildGridControl.addDataField(formBuildDataSource.id(),fieldName2Id(tableName2id("Table"), strFmt("F%1",ii)));
}

表单已创建,网格已添加且可见,但当我尝试按字段排序时,我得到了

Invalid sort field type.

我没有看到过滤功能。

我需要做些什么来进行排序和过滤?

我在Dynamics AX 2012 R2中这样做。

1 个答案:

答案 0 :(得分:2)

您的String字段的字段是否为Memo? 由于这种数据类型的排序是不可能的,因此按这样的字段排序会引起错误 尝试将其中一个字段设置为有限长度,例如20并使用此字段再次尝试。