我想为最终用户(具有Excel和数据库查询编写知识)设计解决方案,以根据他的变化要求生成报告,以便他不需要依赖开发团队进行日常修改。
我之前使用C#和Crystal报告设计了这种类型的应用程序,需要三件事: 1.具有数据库查询的Crystal报告模板 2.筛选条件(从数据库中读取数据的条件)。 3.动态用户控件(例如文本框,下拉列表等),根据过滤条件组件生成所需的控件(由最终用户在数据库表中定义)。
如果最终用户熟悉Crystal报告设计,则可以设计自己的Crystal报告模板,并嵌入Crystal报告中的数据库查询。我的软件根据报告模板中定义的要素生成动态用户控件。将这些筛选条件传递给Crystal报告中定义的查询,以便按其筛选条件生成所需的报告。这有助于满足每天报告相关的变化要求。
现在我想使用Excel设计类似的解决方案,即将Crystal报告模板替换为Excel模板。 我的初始提议是这样的,我将使用具有少量固定参数和几个可变报告参数(根据查询从数据库中获取)的Excel模板替换Crystal报告,其余部分将使用我之前的解决方案。
我不知道: 1.如何在Excel中定义报告参数? 2.如何生成多页报告(当数据库返回多个记录的数据集时)? 3.如何像Crystal报告一样分页报告,当结果要在多个页面上显示时? 4.如何在Excel中定义报告头和页脚区域,以在多页报告上显示?
我知道可以使用宏编程(在该Excel报告模板中定义)来完成这些事情,但这对最终用户来说并不容易,我想有一个简单的通用解决方案,我可以在我的C#程序中实现一次,以便最终用户(具有少量Excel知识)可以根据需要设计/修改报告,而无需进行太多编程麻烦,就像我在以前的解决方案(C#和Crystal报告)中所做的那样。
提前感谢您的宝贵时间,支持和指导。
问候。 戈帕尔希克。