我似乎在使用 Crystal Reports 中的组的 SQL 公式碰壁。
这是公式的逻辑: 在 INMAIN 表下,
如果 AGENCY 不等于 WCFD,则向我展示(分组)AGENCY。如果 AGENCY 等于 WCFD,请向我显示(分组依据)DISTRICT。但是,如果 DISTRICT 为 BLANK/NULL,则向我显示(分组依据)PRIMEUNIT。但是,如果 PRIMEUNIT 以“HU”开头,则将其添加到已经存在的代理组“HUFD”中。但是,如果 PRIMEUNIT 以“FL”开头,则将其添加到已经存在的代理组“FLFD”中。等等...
基本上,我正在尝试将所有属于 WCFD 一揽子机构范围内的空白/空区纳入各自的机构。 PRIMEUNIT 是找出特定事件属于哪个机构的好方法。
我开始的公式是:
if{inmain.agency}="WCFD" then {inmain.district} else
{inmain.agency}
这让我得到了一个不错的观点,但是有些地区的值是 BLANK 或 NULL。然后我尝试了以下公式:
if{inmain.agency}="WCFD" then {inmain.district} else
if{inmain.district}="" then {inmain.primeunit} else
{inmain.agency}
但这不起作用,因为它为所有具有空白/空区的机构提供了主要单位,而不仅仅是具有空白/空区的 WCFD 机构。
然而,我的烦恼不止于此。一旦我仅获得 WCFD 事件的主要单位,我将需要执行以下操作:
if{inmain.primeunit} = "HU*" then "HUFD"
if{inmain.primeunit} = "FL*" then "FLFD"
等等。 等等。
我尝试使用 CASE 公式,但没有达到我想要的效果,或者我不太了解如何使用它。
这有意义吗?有任何想法吗?感谢您的帮助。