SuiteCRM 7.10.29 AOR_Report.js翻页无法获取日期参数问题
SuiteCRM 7.10.29 带日期参数报表翻页无数据问题结论
- 这是该版本的原生前端已知缺陷,不存在遗漏配置项的问题。
- 缺陷根因和你排查结果完全一致:
AOR_Report.js文件内changeReportPage翻页函数的日期字段ID匹配规则,和页面实际渲染的DOM规则不匹配。7.10.29版本渲染日期类筛选参数时,会自动给输入框DOM ID追加_date后缀,但翻页逻辑取值时未拼接该后缀,导致获取到的日期参数值始终为undefined,后端查询时日期筛选条件异常,最终返回空记录集。 - 官方标准修复方案不需要重写整段JS代码,仅需修正参数取值的匹配逻辑即可:
- 打开
modules/AOR_Reports/AOR_Report.js文件,定位到changeReportPage函数内遍历筛选字段的代码块 - 将日期类型字段的取值逻辑调整为优先匹配带
_date后缀的DOM元素,参考修复代码:
- 打开
// 注释原有错误的取值逻辑 // let fieldValue = $('#' + fieldId).val(); // 替换为兼容逻辑 const dateFieldEl = $('#' + fieldId + '_date'); let fieldValue = dateFieldEl.length ? dateFieldEl.val() : $('#' + fieldId).val();
- 修改完成后进入后台执行「快速修复和重建」,同时清理浏览器缓存、系统本地JS缓存即可生效。
- 该修复逻辑和官方后续7.10.x补丁版、7.11+正式版的修复逻辑完全一致,不会产生额外兼容问题。
内容的提问来源于stack exchange,提问作者RGriffiths
相关产品推荐
相关产品推荐

