企业应用软件使用过程中,不同角色的人员会存在着各种数据统计报表的需求,那么怎么通过我们的平台快速实现各种统计报表呢?我们推荐存储过程统计报表。
要能够开发存储过程统计报表,您需要一定的基于您在使用的数据库的SQL编写能力(SQLServer,MySQL语法上有一些细节上的不同)
需求:假如我们有一个跨境订单明细表如下图所示。
我们需要统计某个月的订单明细列表(这种需求很简单,在订单明细管理列表就可以统计出来,但是我们这里主要是为了演示存储过程怎么使用)。
在开发存储过程统计报表前,我们应该明确自己的需求:查询条件有哪些?返回的字段有哪些?
我们需要的查询条件:因为是某月的订单明细,所以需要“年”,“月”两个查询条件。
我们需要返回的字段:订单号,下单时间,收货地址。
那么我们现在先开发存储过程,如下,
存储过程名:sp_GetKuaJingDingDan
查询条件:@Year,@Month,分别表示“年”,“月”
返回字段:订单号,下单日期,到货日期
下面我们再开发平台上实现报表
第一步:在开发平台“解决方案”-“报表设计”这里(其实您可以在任何一个模块分类上加报表)点击右键,
第二步:存储过程名输入我们上面开发的存储过程的名称sp_GetKuaJingDingDan,报表名您自己确定。
第三步:在新增加的“跨境订单明细报表”窗体中,增加两个查询参数(从左边工具箱中选择正确的控件加进来),因为年,月我认为下拉选择最好,所以我这里演示就使用“下拉控件”,您当然可以使用整数控件,文本控件,只要使用的时候输入的是“年”,“月”格式即可。
参数说明:上面存储过程设计窗体中的两个查询参数“年”,“月”的数据库字段分别是Year,Month,与我们开发的存储过程入参相同。
对应如下存储过程入参:
CREATE PROCEDUREsp_GetKuaJingDingDan
@Year VARCHAR(4) = NULL, -- 年,比如:2020,2021这样的格式
@MonthVARCHAR(2) = NULL -- 月,比如:1,2,3,4,5,6,7,8,9,10这样的格式
AS
返回字段说明
-- 上面构造了某月的起,止日期
-- dingdanh:订单号;
-- xiadanrq: 下单日期
-- shouhuodz: 收货地址
SELECT dingdanh,xiadanrq,shouhuodz FROMtb_KJDDMX
WHERE __CreateDateTime__ BETWEEN@StartDate AND @EndDate
发布存储过程,发布开发平台后,打开客户端就可以看到我们新开发的存储过程报表了。
发布后在报表中心就会出现一个新的报表,我们输入想要的查询条件以后就可以统计出来了。