Report或者BI有没有比较好的调用存储过程的方法
  1. 内存占用少

  2. 维护成本低

FineReport 蕉太狼 发布于 2021-11-5 15:29
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
elaizaLv6初级互助
发布于2021-11-5 16:29(编辑于 2021-11-5 16:31)

新建数据库查询,使用call 方法来调用存储过程(我的是oracle)

将存储过程写通用点,直接传参数就行了,报表制作都不用写sql,业务处理过程都在包里执行

下面是我调用存储过程的例子

=======

{call SP_REPORTRESULTD -- 月累计达成(超市)

(

'REP0501',-- in_repid

'${G_Operator}',-- in_oper

'${c_月初}',-- in_startdate

'${c_I_ReportDate}',-- in_enddate

'',-- in_contrastsdate

'',-- in_contrastedate

'C_SALEVALUE;C_PLAN_SALE;C_PLAN_SALE_MT',-- in_cols

'C_STORE_AREA',-- in_wcols

'${c_areas}',

'',-- in_shavc

'',-- in_shave

'',-- in_var

'',-- in_val

'',-- in_dg

'',-- in_ord

?

)}

  • 蕉太狼 蕉太狼(提问者) 我也是Oracle ,你说的我没太明白
    2021-11-05 17:17 
  • elaiza elaiza 回复 蕉太狼(提问者) 编写返回游标的存储过程,然后在finereport里新建建数据库查询,使用finereport里调用oracle存储过程的call方法,调用成功后返回的游标数据就是里需要的数据集,就看存储过程你那边怎么写,建议写的通用点,比如入参有开始时间和结束时间和对比开始时间和结束时间等等
    2021-11-08 08:47 
最佳回答
0
yzm339714Lv6中级互助
发布于2021-11-5 17:57

先做个多维度的宽表把,尽量把大部分业务都涵盖下,后面直接去这个表的数据,查的也会快不少

  • 3关注人数
  • 398浏览人数
  • 最后回答于:2021-11-5 17:57
    请选择关闭问题的原因
    确定 取消
    返回顶部