原创

[FineReport]柱状图(无参数存储过程)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://david.blog.csdn.net/article/details/53758825
今天学习图表在FR中的使用,通常我们会使用到很多图表,EXCEL中也常见用的。在此就学习柱状图,举一反三,其他的图表也差不多。
主题叫:“我的朋友你从哪里来?”-准确的说是客户,本次统计的是全球客户,扣除中国,因为中国业务量大,柱状图显示的不太好看。---为了美观需求!

一、准备数据集
由于是统计所有客户所属的国家,故存储过程不需要任何参数

 --=============================================   
 --Author: <David Gong>   
 --Create date: <2016-10-21>   
 --Description: <朋友你从哪里来?>   
 --=============================================
CREATE Procedure [dbo].[DZ_SaleByCountryCount]
as
begin 
with CTE AS(
select distinct * from(
        SELECT  
        isNULL(ltrim(MR003),'其他') Customers,MA001

        FROM  ACRTA left JOIN ACRTB ON TA001=TB001 AND TA002=TB002
                    LEFT JOIN COPMA ON TA004=MA001

                    LEFT JOIN (SELECT MR002,rtrim(国家中文名) MR003 from CMSMR left join OA.dbo.DZ_Country on MR003=国家英文名 where MR001='4' ) R ON MA019=R.MR002
        WHERE   TB004 in ('1','2')  and TA025='Y'   AND LEFT(TA001,3)<>'61B' 

        UNION ALL
        SELECT  
        isNULL(ltrim(MR003),'其他') Customers,MA001 

        FROM  ACRTB left JOIN ACRTA ON TA001=TB001 AND TA002=TB002
                    LEFT JOIN COPMA ON TA004=MA001

                    LEFT JOIN (SELECT MR002,rtrim(国家中文名) MR003 from CMSMR left join OA.dbo.DZ_Country on MR003=国家英文名 where MR001='4' ) R ON MA019=R.MR002
        WHERE TB004='9'  and TA025='Y'  AND LEFT(TA001,3)<>'61B'  
) as A
WHERE A.Customers not in ('中国','其他') 
)
--SELECT Customers,DataCount=SUM(1),SUM(1)/ FROM CTE
select Customers  as 'Country',number=sum(1)  ,Round(sum(1)*1.0/b.sumcount,4) as 'percent' 
from CTE a 
inner join (select sumcount=sum(1) from CTE) b  on 1=1 
group by Customers,b.sumcount
end

二、插入悬浮元素图表
(1)居然是全球客户,那就选择一张世界地图作为背景
(2)插入-悬浮元素-插入图表-选择柱状图
数据绑定
这里写图片描述
其他细节就不在描述
三、报表预览
这里写图片描述

文章最后发布于: 2016-12-20 09:00:33
展开阅读全文
0 个人打赏
私信求帮助

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 鲸 设计师: meimeiellie

分享到微信朋友圈

×

扫一扫,手机浏览