在Business Objects服务器中查看报表时,如何通过存储过程数据源检索数据?它似乎在任何类型的" SELECT"语句被执行。但是存储过程中的其他DML语句(如插入表)会被忽略。
当应用程序调用存储过程时,它将完整运行。但是对于BO服务器中的Crystal Reports,它似乎就像删除数据检索代码并运行而忽略其他DML语句一样。
CREATE PROCEDURE dbo.ExampleTestBlahBlah
AS
BEGIN
INSERT TestTable (RandomColumn)
SELECT 'ABC';
SELECT 'ABC' [ReturnValue]
END
在将ReturnValue
添加到报表区域时在Crystal Reports中运行此查询时,可以清楚地看到问题。该过程在预览中正确运行,但如果部署到BO服务器,则会忽略insert语句。为什么呢?
答案 0 :(得分:0)
原来这种行为是由"使用报告保存数据"在我的测试报告上检查选项。这就是全部。关闭它,sprocs按预期工作