我正试图写一个报告来访问一个非常大的数据库,这使得子报告的使用。。。不好说。在这种情况下,我如何避免它们:
我从一张病人就诊表开始。每次就诊都可以有多个重要读数(比如在一个与就诊表多对一的‘重要’表中),我需要每种类型的最小值和最大值。为此,我按患者就诊分组,然后使用公式计算最小值/最大值,并在分组页脚中显示它们。到现在为止,一直都还不错。但是,还有另一个表Orders,它也包含了该次访问的所有订单,我还想选择一些最小/最大值来显示该遭遇。
为了避免使用子报表,我在抑制的详细信息中添加了更多的公式,这些公式还可以找到这些顺序值的最小值/最大值,并显示在组页脚中。问题是Crystal只返回有医嘱的患者就诊(尽管是外部连接的),而我需要的是所有可能有或可能没有任何医嘱的就诊的列表。更复杂的是,还有一个订单表我也需要处理(一个用于药物,一个用于程序)。有什么想法吗?
(visitID, patName, visitDate)
------------------------------------------------------------------
1, Patient A, July-24-2009
2, Patient B, July-25-2009
(visitID, line, medName, dosage)
------------------------------------------------------------------
1, 1, Aspirin, 200mg
1, 2, Aspirin, 500mg
2, 1, Codeine, 100mg
2, 2, Codeine, 200mg
2, 3, ValerianCap, 700mg
(visitID, line, procName, procType, cost)
------------------------------------------------------------------
1, 1, Xray-wrist, xray, $500
1, 2, Xray-elbow, xray, $300
+-----------------------------------------------
| Patient A
| Med Orders:
| Max Aspirin Dosage: 500mg
|
| Proc. Orders:
| Max cost Xray: $500
|
+-----------------------------------------------
| Patient B
| Med Orders:
| ...
+-----------------------------------------------