51.3、报表插件,直接SQL报表,存储过程,改写过滤条件原创
金蝶云社区-林荫大道_找工作身份
林荫大道_找工作
16人赞赏了该文章 1.2万次浏览 未经作者许可,禁止转载编辑于2020年07月12日 23:22:05



51.2



业务场景:如果不填写过滤条件,显示全部数据;



1、创建存储过程


create proc sp_Test
@FBILLNO varchar(100),
@FDATE varchar(100)
as
begin
declare @where nvarchar(1000);
declare @sql nvarchar(max);
set @where= ' where 1=1 '
if(@FBILLNO<>'')
begin
set @where = @where + ' and FBILLNO = '''+@FBILLNO+''''
end
if(@FDATE<>'')
begin
set @where = @where + ' and FDATE = '''+@FDATE+''''
end
set @sql=N'select FBILLNO as ''单据编号'',FDATE as ''日期'',FBILLTAXAMOUNT as ''税额'',
FBILLAMOUNT ''金额'',FBILLALLAMOUNT ''加税合计'' from T_SAL_ORDER t1 inner join T_SAL_ORDERFIN t2 on t1.FID=t2.FID' + @where
  exec sp_executesql @sql
end


image.png



2、


--当不输入过滤条件,查询出全部的数据

exec sp_Test '',''


image.png


image.png



3、


--如果加一个过滤条件,单据编号,只显示一行数据

exec sp_Test 'XSDD000001',''


image.png



--日期过滤

exec sp_Test '','2020/7/10'


image.png



4、点数据源,打开修改界面


image.png



5、勾选 存储过程,点测试,过滤条件不填写数据,显示全部的数据


exec sp_Test '#FBillNO#','#FDate#'


image.png



image.png


image.png



6、点编辑,权限控制设置,设置空权限,然后发布到主控台


image.png


image.png



image.png


【微课件】直接SQL账表(存储过程) 



总目录链接

https://vip.kingdee.com/article/64993872014591232

赞 16