【发布时间】:2019-10-23 18:32:48
【问题描述】:
我不太擅长 python,但似乎我需要更改 python 字符串才能获得所需的结果,但我不知道该怎么做。在水晶报告中,我可以使用部分专家为该部分着色,但随后它将所有主要标题着色为相同颜色。例如我有这个:
If {@GroupNumber} = 1 then "prepress"
else
if {@GroupNumber} = 2 then "stock"
else
if {@GroupNumber} = 3 then "press"
else
if {@GroupNumber} = 4 then "ink"
else
if {@GroupNumber} = 5 then "postpress"
这些是不同的“组”,都使用相同的标题。它为每个部分提供了不同的标题,但我需要找到一种方法以不同的颜色指定每个标题。有什么建议可以让这些标题用颜色编码吗?
if GroupNumber = 1 then fuchsia
else
If GroupNumber = 2 then yellow
else
If GroupNumber = 3 then yellow
else
If GroupNumber = 4 then yellow
else
If GroupNumber = 5 then green
只有我的“新闻”标题显示正确的结果。所有其他人都显示为黑色,我不知道为什么。
【问题讨论】:
-
我不确定我是否理解。您想有条件地选择 Crystal Reports 中某个部分的背景颜色吗?如果是这样,请使用部分专家,使用背景颜色公式并将相同的公式放在那里,但不要使用您提到的字符串,只需使用颜色常量(白色,黑色,红色等)或 RGB 函数,如“rgb (255, 0, 0)"。
-
是的,你理解正确。我试过把这个公式放在专家部分。它适用于第一个标题“印前”,但随后所有其他标题都变黑了。不知道为什么第一个标题完美地工作,而不是其他四个。有什么想法可能是错的吗?我使用了颜色格式“crFuchsia”——它有效,但“crYellow”和“crGreen”只是显示为黑条。
-
如果 (a) 为黑色,则颜色显示为黑色; (b) 无效; (c) 它是空的。例如,如果它不属于您的任何 if,则它将为空。也许您应该打印您的 {@GroupNumber} 以检查它是否具有您期望的值。
-
我已经尝试打印它并产生相同的结果。其他字段都显示为黑色。公式对于措辞是正确的——如上所示,颜色是唯一不起作用的东西。我不知道如何排除故障,因为我不太了解水晶。是 B 还是 C,但我不确定
-
您真的在第一个公式中使用“{@GroupNumber}”,在第二个公式中使用“GroupNumber”吗? “{@GroupNumber}”是你自己写的公式,而“GroupNumber”是水晶报表的保留字。你知道吗?
标签: python arrays string crystal-reports crystal-reports-formulas