Crystal Reports 2020 供应商错误242(值超出范围)及报表加载问题
Crystal Reports 2020 视图数据无法导入报表的解决方案
一、重新配置并验证数据源
- 打开目标报表,通过顶部菜单栏
数据库>数据库专家进入数据源配置界面 - 确认当前连接的SQL Server数据源中,已选中修改后的目标视图;若之前指向旧视图,直接替换为更新后的视图
- 点击界面中的
验证数据库按钮,确保报表字段与视图字段完全匹配,修复可能存在的字段映射异常 - 完成后点击报表工具栏的
刷新按钮,或右键报表空白处选择刷新数据
二、修正视图的日期筛选逻辑
你的视图SQL中,GETDATE()包含时间戳可能导致筛选范围不准确,进而出现无数据的情况。建议将日期条件修改为精确的日期范围:
SELECT Company, SourceWarehouse, TargetWarehouse, StockCode, SUM(GtrQuantity) AS TrfQty, CONVERT(varchar, CAST(GETDATE() AS DATE), 23) AS LookOutDate FROM dbo.vwGtrSuggestionsQtyByDate WHERE TransactionDate >= CAST(DATEADD(day, -5, GETDATE()) AS DATE) AND TransactionDate < CAST(DATEADD(day, 1, GETDATE()) AS DATE) GROUP BY Company, SourceWarehouse, TargetWarehouse, StockCode
修改视图后,回到Crystal Reports重新验证数据库并刷新数据。
三、排查报表端的筛选冲突
- 通过顶部菜单栏
报表>选择专家>记录,检查报表是否存在额外的记录选择公式 - 若报表端有重复的日期筛选或其他限制条件,确认其与视图的WHERE子句无冲突(比如日期范围无交集)
- 可暂时移除报表端的筛选条件,刷新数据测试是否正常显示
四、直接使用SQL命令作为数据源
如果视图方式仍无法解决问题,可绕过视图直接在Crystal Reports中使用SQL查询:
- 在
数据库专家中选择添加命令 - 将修正后的SQL语句粘贴到命令编辑框中
- 点击
确定完成配置,刷新报表查看数据
内容的提问来源于stack exchange,提问作者Paul_SPS
相关产品推荐
相关产品推荐

