简体   繁体   English

汇总SSRS列集

[英]Summing an SSRS column set

I have a query which gathers Items from a database and generates a number of rows: 我有一个查询,该查询从数据库中收集项目并生成许多行:

    SELECT 
    ITEMID,
    SUM(dbo.CUSTINVOICETRANS.QTY) AS 'Quanity',
    SUM(LINEAMOUNTMST) AS 'Sales',
    COUNT(DISTINCT dbo.CUSTINVOICEJOUR.SALESID) AS 'Total Orders'
INTO
    #tempItemRevenue
FROM
    dbo.CUSTINVOICEJOUR INNER JOIN 
    dbo.CUSTINVOICETRANS ON dbo.CUSTINVOICEJOUR.INVOICEID = dbo.CUSTINVOICETRANS.INVOICEID
WHERE
    dbo.CUSTINVOICETRANS.DIMENSION2_ IN (@division)
    AND
    CONVERT(DATETIME, dbo.CUSTINVOICETRANS.INVOICEDATE, 101) BETWEEN @start AND @end
GROUP BY
    ITEMID

SELECT
    ITEMGROUPID AS 'Process',
    [DESCRIPTION] AS 'Division',
    ISNULL(PRICE / CASE WHEN PRICEUNIT = 0 THEN NULL ELSE PRICEUNIT END, 0) AS 'Unit Price',
    SUM(LOADQTY) AS 'Load Size',
    SUM(LOADQTY * ISNULL(PRICE / CASE WHEN PRICEUNIT = 0 THEN NULL ELSE PRICEUNIT END, 0)) AS 'Load Value',
    SUM(Sales) as 'Sales',
    SUM(Quanity) AS 'Quantity'
FROM
    dbo.INVENTTABLE INNER JOIN 
    dbo.INVENTTABLEMODULE ON dbo.INVENTTABLE.ITEMID = dbo.INVENTTABLEMODULE.ITEMID 
    INNER JOIN #tempItemRevenue ON dbo.INVENTTABLE.ITEMID = #tempItemRevenue.ITEMID 
    INNER JOIN dbo.DIMENSIONS ON NUM = dbo.INVENTTABLE.DIMENSION2_ 
    --INNER JOIN dbo.CUSTTABLE cu ON ACCOUNTNUM = CUSTACCOUNT
WHERE
    MODULETYPE = 2
    AND
    ITEMGROUPID IN (@group)
    AND
    dbo.INVENTTABLE.DIMENSION2_ IN (@division)
    and LOADQTY * ISNULL(PRICE / CASE WHEN PRICEUNIT = 0 THEN NULL ELSE PRICEUNIT END, 0) > 0
Group BY 
ITEMGROUPID,[DESCRIPTION],PRICE,PRICEUNIT

DROP TABLE #tempItemRevenue

This produces results like this: 这将产生如下结果:

Process Division    Unit Price  Load Size   Load Value  Sales   Quantity
Anodize Green Bay   0.132916        1050        139.5618    26      200
Anodize Green Bay   0.15375         2000        307.5       447.45  2983
Anodize Green Bay   0.156           5000        780         848     5300
Anodize Green Bay   0.1751          17040       2983.704    278.64  1548
Anodize Green Bay   0.187138516     13520       2530.112741 3147.35 16565

I put this into an SSRS table and it sums everything, but it sums each line...i need everything with the same Process to be summed ALL TOGETHER in a total. 我将其放入SSRS表中,并对所有内容进行求和,但对每一行进行求和...我需要将具有相同Process的所有内容总计在一起。 But I can't get report builder 3.0 to give me an option to sum all the lines. 但是我无法获得Report Builder 3.0给我一个汇总所有行的选项。 In essence, I want a single line per process and division (there are many combinations). 本质上,我希望每个过程和每个分区一行(有很多组合)。 not each line item. 并非每个订单项。 What am I doing wrong? 我究竟做错了什么? I can't seem to get the totals only. 我似乎无法只得到总数。 设计师当前结果

So, I'm able to add a totals row at the bottom of a Tablix field like this: 因此,我可以在Tablix字段的底部添加总计行,如下所示:

Click on the row header (so the whole row is highlighted). 单击行标题(因此整个行将突出显示)。 Right where the first text box in the Tablix says "Process", you'll see a bracket (signifying the row grouping. Right-click on that, then go down to Add Row, then Add Row outside group. That should give you a single row outside all the groups, in which you can sum everything above. 在Tablix中第一个文本框上显示“处理”的位置,您会看到一个括号(表示行分组。右键单击该行,然后转到“添加行”,然后在“组外添加行”。这应该给您一个所有组之外的一行,您可以在其中汇总以上所有内容。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM