相同行分组汇总

怎么在report编辑器对相同行进行汇总合并,

image.png

image.png

FineReport Chaoniubi欢 发布于 2023-5-22 16:19
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-5-22 16:22(编辑于 2023-5-22 16:53)

条件分组

image.png

------------

WorkBook1.rar

image.png

  • Chaoniubi欢 Chaoniubi欢(提问者) 条件应该怎么写呢
    2023-05-22 16:26 
  • Z4u3z1 Z4u3z1 回复 Chaoniubi欢(提问者) 条件你不是写出来了么
    2023-05-22 16:37 
  • Chaoniubi欢 Chaoniubi欢(提问者) 回复 Z4u3z1 不是,我是按照这个条件得出来的数据,比如数据中:1001等于电力事业部,1002也等于电力事业部,然后报表生成的时候是分开展示的,即都是电力事业部没有数据汇总合并。
    2023-05-22 16:43 
  • Chaoniubi欢 Chaoniubi欢(提问者) 回复 Z4u3z1 就等于说报表展示出来有两个电力事业部行项目,我想让他合并汇总,显示成一个
    2023-05-22 16:44 
  • Z4u3z1 Z4u3z1 回复 Chaoniubi欢(提问者) 模板上传了,请下载参考
    2023-05-22 16:53 
最佳回答
0
坚定的小帆薯Lv7高级互助
发布于2023-5-22 16:21(编辑于 2023-5-22 16:24)

能在sql中处理,在sql中处理方便一些;

不能的话,前面选择分组【分组设置公式】,后面进行汇总即可,

分组汇总- FineReport帮助文档 - 全面的报表使用教程和学习资料  https://help.fanruan.com/finereport/doc-view-149.html

最佳回答
0
1592Lv6高级互助
发布于2023-5-22 16:22

数据集里处理,case when then end

最佳回答
0
用户k6280494Lv6资深互助
发布于2023-5-22 16:22(编辑于 2023-5-22 16:24)

前面选择分组

image.png

后面选择汇总求和

image.png

最佳回答
0
大林3143511Lv5中级互助
发布于2023-5-22 16:34

利用SQL中group by 就实现了,实在不行,你发下SQL,我们一起研究下:)

  • Chaoniubi欢 Chaoniubi欢(提问者) SELECT CASE WHEN CL.VBELN_IM IS NULL THEN MV.VBELN_IM ELSE CL.VBELN_IM END AS 交货单, CASE WHEN CL.VBELP_IM2 IS NULL THEN MV.VBELP_IM2 ELSE CL.VBELP_IM2 END AS 交货单行项目, CL.AWREF AS 物料凭证, CL.T_MSL AS 发货数量, CL.T_TSL AS 发货金额, CASE WHEN CL.T_MSL=0 THEN 0 ELSE CL.T_TSL/CL.T_MSL END AS 发货单价, CL.T_FKIMG AS 开票数量, CL.I_TSL AS 发货已开票金额, CL.T_NETWR AS 已开票未税金额, CL.T_MSL-CL.T_FKIMG AS 未开票数量, (CL.T_MSL-CL.T_FKIMG)*SO.NETWR AS 未开票金额, CL.T_TSL+CL.I_TSL AS 发出成本, MV.TSL AS 调整, CASE WHEN MV.TSL IS NULL THEN CL.T_TSL+CL.I_TSL WHEN CL.T_TSL IS NULL OR CL.I_TSL IS NULL THEN MV.TSL ELSE CL.T_TSL+CL.I_TSL+MV.TSL END AS 发出成本调整, SO.AUART AS 订单类型, SO.VBELN AS 销售订单, SO.POSNR AS 销售订单行项目, SO.VKORG AS 销售组织, SO.VKBUR AS 销售大区, TVK.BEZEI AS 销售大区名称, SO.LIFNR AS 销售员编号, lfa1.name1 AS 销售员名称, SO.KWMENG AS 订单数量, SO.NETWR AS 订单未税单价, SO.KUNNR AS 客户, B.NAME_ORG1 AS 客户名称, left(WL.BUDAT,6) AS 过账日期, REPLACE(LTRIM(REPLACE( WL.MATNR, \'0\', \' \')),\' \', \'0\') AS 物料, WL.MAKTX AS 物料描述, WL.VERPR/ WL.PEINH AS 交货实际单价, CASE WHEN (WL.VERPR/ WL.PEINH)*(CL.T_MSL-CL.T_FKIMG) IS NULL THEN MV.A_TSL ELSE (WL.VERPR/ WL.PEINH)*(CL.T_MSL-CL.T_FKIMG) END AS 发出实际成本 FROM( SELECT CASE WHEN AL.VBELN_IM IS NULL THEN BL.VGBEL ELSE AL.VBELN_IM END AS VBELN_IM, CASE WHEN AL.VBELP_IM2 IS NULL THEN BL.VGPOS2 ELSE AL.VBELP_IM2 END AS VBELP_IM2, AL.AWREF, --AL.BELNR, CASE WHEN AL.T_MSL IS NULL THEN 0 ELSE AL.T_MSL END AS T_MSL, CASE WHEN AL.T_TSL IS NULL THEN 0 ELSE AL.T_TSL END AS T_TSL, CASE WHEN BL.T_FKIMG IS NULL THEN 0 ELSE BL.T_FKIMG END AS T_FKIMG, CASE WHEN BL.T_TSL IS NULL THEN 0 ELSE BL.T_TSL END AS I_TSL, CASE WHEN BL.T_NETWR IS NULL THEN 0 ELSE BL.T_NETWR END AS T_NETWR FROM ( -----发货求和 SELECT AW.VBELN_IM, AW.VBELP_IM2, --MAX(AW.BELNR) AS BELNR, MAX(AW.AWREF) AS AWREF, SUM(AW.MSL) AS T_MSL, SUM(AW.TSL) AS T_TSL FROM DW_T01_FACT_ACDOCA_1406010000_WL AW --WHERE AW.RBUKRS=\'1000\' AND AW.BUDAT<=\'20221031\' WHERE AW.RBUKRS=\'${pBUKRS}\' AND left(AW.BUDAT,6)>=\'${开始日期}\' AND left(AW.BUDAT,6)<=\'${结束日期}\' GROUP BY AW.VBELN_IM,AW.VBELP_IM2 HAVING SUM(AW.TSL)<>0 )AL FULL JOIN( ----开票求和 SELECT AV.VGBEL, AV.VGPOS2, SUM(AV.FKIMG) AS T_FKIMG, SUM(AV.TSL) AS T_TSL, SUM(AV.NETWR) AS T_NETWR FROM DW_T01_FACT_ACDOCA_1406010000_RV AV --WHERE AV.RBUKRS=\'1000\' AND AV.BUDAT<=\'20221031\' WHERE AV.RBUKRS=\'${pBUKRS}\' AND left(AV.BUDAT,6)>=\'${开始日期}\' AND left(AV.BUDAT,6)<=\'${结束日期}\' GROUP BY AV.VGBEL,AV.VGPOS2 HAVING SUM(AV.TSL) <>0 )BL ON AL.VBELN_IM =BL.VGBEL AND AL.VBELP_IM2 =BL.VGPOS2 )CL LEFT JOIN DW_T01_FACT_SALES_ORDER SO ON SO.LIPS_VBELN = CL.VBELN_IM AND SO.LIPS_POSNR =CL.VBELP_IM2 LEFT JOIN DW_T01_FACT_ACDOCA_1406010000_WL WL ON WL.AWREF = CL.AWREF AND WL.VBELN_IM =CL.VBELN_IM AND WL.VBELP_IM2 =CL.VBELP_IM2 --AND WL.BELNR = CL.BELNR LEFT JOIN ODS_SAP_T_BUT000 B ON B.PARTNER= SO.KUNNR LEFT JOIN ODS_SAP_T_LFA1 LFA1 ON LFA1.LIFNR = SO.LIFNR LEFT JOIN ODS_SAP_T_TVKBT TVK ON TVK.VKBUR=SO.VKBUR FULL JOIN ( SELECT * FROM ODS_FR_T_MANUAL_VOUCHER_1406010000 MA WHERE MA.RBUKRS=\'${pBUKRS}\' AND left(MA.BUDAT,6)>=\'${开始日期}\' AND left(MA.BUDAT,6)<=\'${结束日期}\')MV ON MV.VBELN_IM = CL.VBELN_IM AND MV.VBELP_IM2 =CL.VBELP_IM2 --AND MV.RBUKRS=\'${pBUKRS}\' AND left(MV.BUDAT,6)>=\'${开始日期}\' AND left(MV.BUDAT,6)<=\'${结束日期}\' WHERE --1=1 --(CL.T_TSL+CL.I_TSL+MV.TSL) <>0 (CASE WHEN MV.TSL IS NULL THEN CL.T_TSL+CL.I_TSL WHEN CL.T_TSL IS NULL OR CL.I_TSL IS NULL THEN MV.TSL ELSE CL.T_TSL+CL.I_TSL+MV.TSL END)<>0 --未开票数量<>0 AND 发出成本<>0 ${if(len(pDELIVERY_NUM) == 0,\"\",\"and CL.VBELN_IM LIKE \'%\" + pDELIVERY_NUM + \"%\'\")} ${if(len(pORDER_NUMBER) == 0,\"\",\"and SO.VBELN LIKE \'\" + pORDER_NUMBER + \"\'\")} ${if(len(pCOSTOMER_NUMBER) == 0,\"\",\"and SO.KUNNR LIKE \'%\" + pCOSTOMER_NUMBER + \"%\'\")} ${if(len(pMARKET_ORG) == 0,\"\",\"and SO.VKORG = \'\" + pMARKET_ORG + \"\'\")} --${if(len(pMATERIAL_NUMBER) == 0,\"\",\"and WL.MATNR LIKE \'%${pMATERIAL_NUMBER}%\')} --AND WL.MATNR LIKE \'%${pMATERIAL_NUMBER}%\' ${if(len(pMATERIAL_NUMBER) == 0,\"\",\"AND WL.MATNR LIKE \'%\" + pMATERIAL_NUMBER + \"%\'\")}
    2023-05-22 16:47 
最佳回答
0
yoggaLv5见习互助
发布于2023-5-22 16:40

双击第一个字段对于的单元格,选分组image.png

  • 6关注人数
  • 620浏览人数
  • 最后回答于:2023-5-22 16:53
    请选择关闭问题的原因
    确定 取消
    返回顶部