使用一列的多个公式的水晶报告
问题描述:
好的....我会尽力解释这一点,因为我可以.... 我有一个SQL查询,拉回我需要的报告正确的数据。 这是它的样子使用一列的多个公式的水晶报告
sample componentname enteredvalue
C1234-1 Am-241 Activity 2.35E+001
C1234-1 Am-241 2s TPU 3.26E-002
C1234-1 Am-241 1s TPU 3.22E-002
C1234-1 U-238 Activity 6.32E-001
C1234-1 U-238 2s TPU 1.23E+002
C1234-1 U-238 1s TPU 2.00E+001
我需要的组件名,并与该组件名称相关的enteredvalue和无空白水平显示它的东西。 像这样
componentname activity 2s TPU 1s TPU
Am-241 2.35E+001 3.26E-002 3.22E-002
U-238 6.32E+002 1.23E+002 2.00E+001
我试图接近这一多种不同的方式,我仍然无法弄清楚。我试过使用公式来恢复列,但我一直得到空白。
任何洞察将是非常有益的。
答
如果要在报告的同一行中使用它们,则需要分离组件名称的第一个和第二个部分,然后将它们存储在变量中。您还需要按组件名称的第一部分(如“U-238”)进行分组,您可以使用公式进行组合split({table.component_name}," ",2)[1]
现在您将拥有组页眉,详细信息和组页脚部分;每个人都需要自己的公式来跟踪要显示的值。
// Initialize the variables in the Group Header
whileprintingrecords;
stringvar activity_value := "";
stringvar TwoS_value := "";
stringvar OneS_value := "";
// Update the variables in the Details section
whileprintingrecords;
stringvar activity_value;
stringvar TwoS_value;
stringvar OneS_value;
select split({table.component_name}," ",2)[2]
case "Activity" : activity_value := {table.entered_value};
case "2s TPU" : TwoS_value := {table.entered_value};
case "1s TPU" : OneS_value := {table.entered_value};
// Display the variables in the Group Footer (one formula for each variable)
whileprintingrecords;
stringvar activity_value
或者,您也可以使用两个公式将组件名称分解到交叉表中。因此,例如,可以使交叉表的行成为组件名的前半部分,然后列将成为后半部分。
你可以发布你的公式吗? – Ryan 2013-05-07 19:09:34
这是一个公式。它只是为我声明的任何内容调用组件名称。如果{Command.SubstanceCode} ='NESHAP-AFC'则{Command_1.ComponentName} ='U-233/234 2s TPU'或{Command_1.ComponentName} ='U-238 2s TPU'或{Command_1.ComponentName} = 'Pu-238 2s TPU'或{Command_1.ComponentName} ='Pu-239/240 2s TPU'或{Command_1.ComponentName} ='Am-241 2s TPU'' 无论组件名称不精确。 – Braden 2013-05-07 19:49:00