feng2575 发表于 2019-12-16 11:37:43

让存储过程调用简单化

存储过程调用这个方法还是挺简单的

利用存储过程获取查询结果集 https://gcdn.grapecity.com.cn/template/gc2019/src/icon/hot_2.gif 参考的这个帖子https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=56201
参考了多个存储过程的调用,最终还是选择了这个方法去使用,虽然说方法还是没有FR的简单,够用就好。
根据这个帖子再完善一下吧
原贴只是模板,参考使用,最终还是要根据自己的需求进行修改调用。附件还是参考原贴进行下载使用。
1:SQL存储过程要进行修改,修改添加传参内容输出字段,输出最终结果xml。
输出

结果xml,结果加上 for xml path

存储过程大工告成。
2:活字格进行添加表进行展示操作

根据SQL存储过程的结果进行 对应添加便可,结果就是展示作用,不需要提交数据库。

3:定义单元格内容进行XML文件的接收添加命令

原贴demo 中的命令进行对应修改,显示的字段,对应展示的表格1

4:添加按钮就行查询调用存储过程命令,对应好参数对应值,及结果接收单元格xmlText(输出值)

5:万事俱备,运行查看结果,速度还可以,我的数据量不是很大。

注意事项:
1:SQL日期datetime 类型转换web的过程中,会有问题(对于兼容性问题,可将 Server 端输入参数定义未 navarchar 类型,然后用 convert 语句将其转换成 datetime 类型,同时将 Web 端单元格类型定义为“文本”
)。目前我这里是使用原贴人提供的方法进行转换分解拼接:YEAR(A1)&"-"&MONTH(A1)&"-"DAY(A1),将 A2 的值传给存储过程输入参数。

2:对于查询的XML结果,再次输入参数时不会进行清空xmlText 单元格,查询表格会没有结果。在重复查询前,进行xmlText 单元格内容进行清空便可。


感受,我主要用于报表的查询工作,所以存储过程相当的多,用此方法感觉比较方便展示效果还不错,解决了燃眉之急。
如果后期的版本 存储过程调用 更新更简单的方法就更好了,活字格的方法超越FR的方法,会更多的人使用,更完美简单,让工作简单起来。
第一次分享感受,感谢原贴作者,能够帮助更多不太精通SQL的人员使用方便、便捷。懂的人就路过吧。

Simon.hu 发表于 2019-12-16 17:42:10

这能没金币?

wchangwei 发表于 2019-12-17 09:14:26

:i0tw:

wchangwei 发表于 2019-12-17 09:14:28

:i0tw:

feng2575 发表于 2019-12-17 09:19:35

Simon.hu 发表于 2019-12-16 17:42
这能没金币?

:D

amtath 发表于 2019-12-18 16:30:27

对的。fr的存储过程调用非常简便。

Simon.hu 发表于 2019-12-19 18:01:36

因为他们主要是做报表的

wchangwei 发表于 2019-12-25 17:13:49

本帖最后由 wchangwei 于 2019-12-25 17:15 编辑

有没有出现过第一行为空的情况啊?存储过程回传过来的值是7条记录,现在第一行为空有没有碰到

feng2575 发表于 2019-12-25 17:23:52

wchangwei 发表于 2019-12-25 17:13
有没有出现过第一行为空的情况啊?存储过程回传过来的值是7条记录,现在第一行为空有没有碰到

没遇到哦

feng2575 发表于 2019-12-25 17:24:24

feng2575 发表于 2019-12-25 17:23
没遇到哦

你是不是改列头啦
页: [1] 2 3
查看完整版本: 让存储过程调用简单化