![](/img/trans.png)
[英]How can I rename a field heading in detail section of Crystal Reports
[英]How can I show, in Crystal Reports 2008, the current and previous record on the same Detail section?
我想知道水晶报告中是否有办法做以下事情:
我有一个包含这样数据的表:
ID MeshName RetainedWeight 654 3.3 inches 20.00 789 3.0 inches 20.00 321 1.4 inches 20.00 ...
我需要在这样的水晶报告中展示它们:
Title Here % Retained 3 inches 33.3 Retained 2.3 inches, passing 3 inches 33.3 Retained 1.4 inches, passing 2.3 inches 33.3 Retained ... inches, passing 1.4 inches ...
所以,正如你所看到的,我需要显示当前记录以及前一个记录的MeshName
,任何想法?
我在想:可能有一些变量保留了以前的MeshName
......?
您可以使用上一个和下一个功能来引用上一个或下一个详细信息行中的值。
因此,在您的示例中,它可能是一个名为@Title的公式,其中包含以下文本:
"Retained " & ToText({MyTable.Inches}) & " inches, passing " & ToText(Previous({MyTable.Inches})) & " inches"
您还可以使用PreviousIsNull和NextIsNull函数来确保您没有上一行或第一行的问题。
如果ID值始终是连续的(即“先前记录”,则表示当前记录的ID为1的记录),您可以在SQL端而不是在水晶报告中进行。 我假设你说“桌子”你正在使用数据库。 这是一个完整的例子(我在这个例子中使用了Oracle):
CREATE TABLE DATA (ID NUMBER, MeshName VARCHAR2(50), RetainedWeight NUMBER(25,2))
INSERT INTO DATA VALUES (1,'3 inches',20.00);
INSERT INTO DATA VALUES (2,'2.3 inches',20.00);
INSERT INTO DATA VALUES (3,'1.4 inches',20.00);
SELECT 'Retained ' || a.meshname ||
CASE
WHEN b.id IS NOT NULL THEN
', passing ' || b.meshname
ELSE
' '
END
FROM DATA a
LEFT OUTER JOIN DATA b
ON b.id = a.id-1
ORDER BY a.id
SELECT查询的结果是:
Retained 3 inches
Retained 2.3 inches, passing 3 inches
Retained 1.4 inches, passing 2.3 inches
2.如果您想尝试直接在水晶中进行,那么您可以查看Previous
功能。 这是一个可能有用的链接: http : //www.tek-tips.com/viewthread.cfm? qid = 1460030& page = 9
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.