万能报表简单介绍制作人:张小毛万能报表一、万能报表打开方式二、万能报表的组成三、万能报表的制作步骤四、万能报表实例报表设计器打开方式•分销系统-系统管理-系统操作-万能报表万能报表设计器结构•一、工具栏•二、条件区•三、数据区•四、SQL描述区•五、过程参数万能报表设计器结构•一、工具栏•二、条件区•三、数据区•四、SQL描述区•五、过程参数万能报表工具栏编辑报表的属性万能报表设计器结构•一、工具栏•二、条件区•三、数据区•四、SQL描述区•五、过程参数条件区条件区编辑区对应效果图万能报表设计器结构•一、工具栏•二、条件区•三、数据区•四、SQL描述区•五、过程参数数据区对应SQL描述区的字段名客户自定义字段名定义字段所显示的位置数据区统计效果图页面位置行位置数据区万能报表设计器结构•一、工具栏•二、条件区•三、数据区•四、SQL描述区•五、过程参数SQL描述区检测sql语句是否正确万能报表设计器结构•一、工具栏•二、条件区•三、数据区•四、SQL描述区•五、过程参数过滤参数存储过程中所带参数报表和存储过程关联万能报表制作步骤•一、编写好报表所需sql语句•二、编辑条件区•三、编辑参数区•四、编辑数据区万能报表制作步骤•一、编写好报表所需sql语句•二、编辑条件区•三、编辑参数区•四、编辑数据区万能报表制作实例存储过程•注意:在该存储过程中必须用动态临时表来获取所需的值•CREATEproceduredbo.usp_hbbb•@rq_Svarchar(10),•@rq_Evarchar(10),•@tmptablevarchar(1000)--动态临时表•as•declare•@strnvarchar(4000)•--检查数据是否存在,存在则删除该表。•exec('ifexists(select*fromtempdb.dbo.sysobjectswherename='''+@tmptable+''')•droptable‘+@tmptable)---每次调用存储过程前先清除上次调用的结果•set@str=•'selectkchz.ckdmaskhdm,spdm,casewhenkcslisnullthen0elsekcslendas•kcsl,'+•'casewhenxsslisnullthen0elsexsslendasxssl,casewhenxsjeisnullthen0elsexsjeendasxsje•into'+@tmptable+'•from(selectvw_ckjxcmx.ckdm,spdm,sum(sl)askcslfromvw_ckjxcmxwhere•vw_ckjxcmx.qrrq='''+@rq_E+'''andqr=''1''groupbyspdm,vw_ckjxcmx.ckdm)askchzleft•JOIN•(selectspdmasspdm2,dm2,sum(sl)asxssl,sum(je)asxsjefromvw_lsxhmxwhere•rq='''+@rq_S+'''andrq='''+@rq_E+'''andvw_lsxhmx.sh=''1''groupbydm2,spdm)ASlshz•ONkchz.ckdm=lshz.dm2andkchz.spdm=lshz.spdm2'•print@str•exec(@str)•return获取库存信息获取销售信息将查询值插入临时表万能报表制作sql描述区•Select描述•lsb.khdmaskhdm,lsb.xsslasxssl,lsb.spdmasspdm,lsb.kcslaskcsl,lsb.xsjeasxsje,lsb.xssl*shangpin.cbjeasxscb,•(lsb.xsje-lsb.xssl*shangpin.cbje)asxsjxccj,•lsb.kcsl*shangpin.cbjeasjccbje,•lsb.kcsl*shangpin.bzjjasjcbzjjje,•lsb.xssl*shangpin.bzjjasxsbzjjje,•lsb.kcsl*shangpin.bzsjasjcbzsjje,•lsb.kcsl*shangpin.bzsj-lsb.kcsl*shangpin.cbjeasjcjxccj,•shangpin.spmcasspmc,shangpin.spmc,fjsx1.sxmcassxmc1,fjsx2.sxmcassxmc2,fjsx3.sxmcassxmc3,fjsx4.sxmcassxmc4,fjsx5.sxmcassxmc5,fjsx6.sxmcassxmc6,jijie.jjmcasjjmc,pinpai.ppmc,dalei.dlmc,kehu.khmc,quyu.qydm,quyu.qymc,•shangpin.bzjj,shangpin.jj1,shangpin.jj2,shangpin.bzsj,shangpin.sj1,shangpin.sj2,shangpin.sj3,shangpin.sj4•From描述•@tmptableaslsb,kehu,shangpin,quyu,pinpai,dalei,jijie,fjsx1,fjsx2,fjsx3,fjsx4,fjsx5,fjsx6•Where描述区•lsb.khdm=kehu.khdmandlsb.spdm=shangpin.spdmandkehu.qydm=quyu.qydm•andshangpin.fjsx1=fjsx1.sxdmandshangpin.fjsx2=fjsx2.sxdmandshangpin.fjsx3=fjsx3.sxdmandshangpin.fjsx4=fjsx4.sxdmandshangpin.fjsx5=fjsx5.sxdmandshangpin.fjsx6=fjsx6.sxdmandjijie.jjdm=shangpin.byzd5andshangpin.byzd3=pinpai.ppdmanddalei.dldm=shangpin.byzd4万能报表制作步骤•一、编写好报表所需sql语句•二、编辑条件区•三、编辑参数区•四、编辑数据区万能报表制作条件区万能报表制作条件区万能报表制作步骤•一、编写好报表所需sql语句•二、编辑条件区•三、编辑参数区•四、编辑数据区万能报表制作过程参数区该参数与存储过程相对应万能报表制作步骤•一、编写好报表所需sql语句•二、编辑条件区•三、编辑参数区•四、编辑数据区万能报表制作数据区•字段代码为sql描述区as的字段代码•字段名称任意定义•字段类型为该字段的类型•位置为该字段在报表查询结果中显示的位置万能报表制作注意事项如果该报表有使用存储过程,别忘记选中‘动态临时表’,在准备过程中输入存储过程名称品牌权限勾上就会统计的时候就会根据用户的品牌权限进行控制勾上渠道控制后,分公司用户只能对应对应渠道下面的单据用户过滤:用户页面下设置的用户方能使用设置的万能报表万能报表制作效果显示