我在ax 2009中有一张表格,显示了一张表格的过滤记录(总共大约有5.000.000条记录,大约有1000条显示已过滤)。 在表单中选择几个记录并通过表单控件( alt + f9 )删除它们非常慢。 一条记录立即被删除,选择大约20条需要几分钟! 表上只有一个deleteAction - 任何可以阻止操作的想法吗?
编辑:
关于表有两个索引,两个都不允许重复。第一个是整数字段的索引,第二个是三个字段中的一个。
未激活createRedIdIndex。
过滤器在queryBuildRange中使用一列(employeeID)。
deleteAction:另一个表(B)引用所提到的表(A)的id(索引)。 A在B.设置上有一个deleteAction是“cascade”
这两个表通过id-field相关联。
关系可以通过索引来解决。
这只是我要删除的大约20条记录 - 所以我不符合这个想法,即“删除数据量”太大了!
答案 0 :(得分:1)
考虑添加
grid.autoSizeColumns(false);
正如文章中所建议的那样。
答案 1 :(得分:0)
在AX中诊断数据库性能问题,在SQL标签页的Tools \ Setup中启用SQL跟踪。
答案 2 :(得分:0)
使用代码分析器查看时间的使用位置。