【问题标题】:Dynamics Nav - How to detect user deselecting rowsDynamics Nav - 如何检测用户取消选择行
【发布时间】:2019-07-28 04:36:21
【问题描述】:
Dynamics NAV 支持扩展的多选,就像 Windows 一样。因此,如果在一个有 10 行的销售订单中,如果我单击第 3 行,然后按住 Shift 键并单击第 7 行,则第 3 到第 7 行将突出显示,并且分别为第 3 行和第 7 行触发 OnAfterGetRecord 和 OnAfterGetCurrRecord 事件.
如果我随后按住 Ctrl 键并单击第 4 行和第 6 行,它们现在显示为取消选择(不再突出显示),但不会触发 OnAfterGetRecord 或 OnAfterGetCurrRecord 事件。
如何用事件来捕获上述情况?
提前感谢您的任何想法和建议。
【问题讨论】:
标签:
microsoft-dynamics
navision
dynamics-nav
microsoft-dynamics-nav
【解决方案1】:
你不能。我猜你想根据当前选择显示小计。如前所述,你不能。唯一的方法是强制用户将过滤器应用于页面或添加刷新总计按钮。
【解决方案2】:
请注意,事件 OnAfterGetRecord 和 OnAfterGetCurrRecord 是不一样的。OnAfterGetCurrRecord 在您位于一条记录时触发,而 OnAfterGetRecord 在记录显示在页面之前启动。
关于您的问题,当您取消选择一条记录时,此事件不会启动。您正在执行的操作没有任何事件:Documentation
在这种情况下,您唯一能做的就是提供一个按钮来执行您希望通过触发器触发的代码,使用 setselectionfilter 函数检索选定的行。
希望这会有所帮助,
亲切的问候。