对一个表的数据进行分类汇总,后在在打印的报表中把结果打印出来(急急!!!!!!) ( 积分: 300 )

  • 主题发起人 主题发起人 n@p
  • 开始时间 开始时间
N

n@p

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库是SQL2000,表结构如下:<br><br>住院ID号&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;费用类型&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;费用名称&nbsp;&nbsp;&nbsp;&nbsp;规格&nbsp;&nbsp;&nbsp;&nbsp;数量&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;单价&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;日期<br><br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;四环素&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;100#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;100&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-01<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;四环素&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;100#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-02<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;中药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;人参&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2g&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;76&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-02<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;四环素&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;100#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-02<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;皮康箱&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10ml&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-04<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;中药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;苍耳子&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7g&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-02<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;低值耗材&nbsp;&nbsp;&nbsp;&nbsp;一次性注射器&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-04<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;皮康箱&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10ml&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-04<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;滴药水&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3ml&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;23&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;17&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-05<br>2004110001&nbsp;&nbsp;&nbsp;&nbsp;中药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;樟木&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10g&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-01-05<br><br>要求报表打印出如下结果:<br><br>费用名称&nbsp;&nbsp;规格&nbsp;&nbsp;&nbsp;数量&nbsp;&nbsp;&nbsp;单价&nbsp;&nbsp;&nbsp;金额<br><br>.四环素&nbsp;&nbsp;&nbsp;&nbsp;100#&nbsp;&nbsp;&nbsp;&nbsp;109&nbsp;&nbsp;&nbsp;&nbsp;1.5&nbsp;&nbsp;&nbsp;163.5<br>.皮康箱&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10ml&nbsp;&nbsp;&nbsp;4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5&nbsp;&nbsp;&nbsp;&nbsp;10<br>.滴药水&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3ml&nbsp;&nbsp;&nbsp;&nbsp;23&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;23<br>--------------------------------西药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;合计:&nbsp;&nbsp;196.5元<br>.<br>人参&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2g&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;70&nbsp;&nbsp;&nbsp;350<br>樟木&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10g&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.2&nbsp;&nbsp;&nbsp;22.4<br><br>---------------------------------中药费&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;小计:&nbsp;&nbsp;&nbsp;13元<br><br>..(同上,略)<br><br>.<br><br><br>------------------------------总合计:&nbsp;&nbsp;&nbsp;元<br><br>(具体要求:&nbsp;&lt;1&gt;要在报表中体现如上结果,使用的报表控件请说明<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;2&gt;每种相同的药名和规格,数量要合计在一行显示。如四环素<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;3&gt;每种费用类型小计,报表最后有个总合计。)
 
查询出来&nbsp;进行分组打印就行了
 
用臨時表,西藥放在一個臨時表,&nbsp;中藥放在一個臨時表.<br>把最後的結果放在總臨時表中.<br>把總臨時表顯示出來.
 
用fastreport做好简单
 
select&nbsp;費用類型,0&nbsp;as&nbsp;OrderNo,規格,數量,單價,單價*(sum(isnull(數量,0)))&nbsp;as&nbsp;金額&nbsp;<br>Insert&nbsp;Into&nbsp;#TempData<br>from&nbsp;TableData<br>group&nbsp;by&nbsp;費用類型,規格,數量,單價<br><br>Insert&nbsp;Into&nbsp;#tempData(費用類型,OrderNo,金額)<br>select&nbsp;費用類型,1,sum(金額)<br>from&nbsp;#tempData<br>group&nbsp;by&nbsp;費用類型<br><br>select&nbsp;费用名称&nbsp;,&nbsp;规格&nbsp;,&nbsp;&nbsp;数量&nbsp;,&nbsp;&nbsp;单价&nbsp;,&nbsp;&nbsp;金额<br>from&nbsp;#tempData<br>order&nbsp;by&nbsp;费用名称,OrderNo
 
用fastreport&nbsp;的组,组头分为西药费/中药费...
 
查询的语句用&nbsp;这种格式&nbsp;&nbsp;select&nbsp;费用类型,费用名称,规格,数量,单价,sum(金额)金额&nbsp;from&nbsp;table&nbsp;group&nbsp;by&nbsp;费用类型,费用名称,规格,数量,单价<br>然后按照Dstorm说的,使用组头以及组尾来建立报表。组头放入‘费用类型’,组尾放入sum(金额)
 
1、用fastreport的分组可以实现<br>2、可以用cxdbgrid控件来进行分组实现
 
后退
顶部