如何通过水晶报表中的结果集中的索引获取字段值?

时间:2016-06-24 13:43:11

标签: crystal-reports report

我有一个将数据传递到水晶报表的存储过程。结果集看起来像这样;

Product | Price
----------------
Apple   | 0.20
Pear    | 0.35
Orange  | 0.10
Tomato  | 0.23

我以我需要的方式显示我需要的大部分数据,但无法访问整行数据,只能访问单个字段。

我可以使用NthLargest函数访问特定价格;

NthLargest (2,{up_Fruit;1.Price})

返回值0.23。我也想得到相关产品(番茄)

如何做到这一点?我找不到任何方法将一个字段中的值与另一个字段中的值相关联,例如获得整行。

最终,我想在我的报告中展示这样的内容;

Second most expensive product is Tomato, it costs $0.23.

我可以管理所有字符串格式,但无法获取价格为0.23的产品。

我使用的是Crystal语法。

1 个答案:

答案 0 :(得分:1)

使用以下代码重新使用您的公式:

Local Stringvar array x;
Local Numbervar i;
Local Stringvar display;

x:=x+({up_Fruit;1.Product} &"-"&ToText({up_Fruit;1.Price}));

join(x);

for i:=1 to UBound(x) do
(
if ToText(NthLargest (2,{up_Fruit;1.Price})) in x[i]
then
display:=x[i]
else
display:=""

);

"Second most expensive product is "& Split(display,"-")[1] & " , it costs "& Split(display,"-")[2]