2012-04-27 2 views
0

Вот что у меня есть. У меня есть 15 уникальных формул, названных Week1, Week2, ... Week15. Я хотел бы иметь возможность использовать имя параметра MYCount и использовать его для записи записей и их суммирования. Поэтому, если MyCount равен 3, цикл будет содержать Week1 + Week2 + Week3. Я знаю, как создать цикл, но я не могу понять, как построить имя формулы динамически. Вот что я до сих пор: (я использую Crystal Xi)Кристалл отчет динамическая формула имя

Whileprintingrecords; 
local NumberVar i := {?MyCount} 
For i := 1 To (MyCount-1) Do (
    i = {@Week & "i"} + i 
); 
x 
+1

Можете ли вы опубликовать логику для одной из формул Week? – craig

ответ

1

Я думаю, что вы можете быть более усложняющим. Почему бы просто не сделать:

Local numbervar x := 0; 
If param > 0 then 
X := x + week1; 
If param > 1 then 
X := x + week; 
And so on... 
X; 
+0

Благодарим вас за быстрый ответ. Формула будет очень большой. В конечном итоге у меня будет около 100 недель. Я надеялся не перечислять их всех, так как у меня будет несколько разных формул, делающих такие суммы. – Mike

+1

Спасибо за это, я наконец понял, что вы имеете в виду. Не мог видеть лес между деревьями ... Спасибо – Mike

0

Я не совсем то, что вы пытаетесь сделать, но вы можете рассмотреть другой подход.

Создайте формулу, которая будет сегмент поля на основе номера недели поля даты в:

//{@amount} 
// adjust firstDayOfWeek and firstDayOfYear parameters to match your organization's 
// definition of a week 
If DatePart("ww", {table.dateField})<={?Week} Then 
    {table.amount} 

Вставьте обобщенное поле на поле формулы.

0

Если вы используете поля формулы , чтобы вы могли суммировать по дате на странице, то вы считаете, что вместо использования функции Crystal's Crosstab?

+0

К сожалению, я не могу этого сделать. Мне нужно только суммировать определенные недели. Я действительно надеялся, что смогу построить формулу с переменной. – Mike

+0

@Mike: вы можете достичь этого, выбрав только соответствующие недели (если вам не нужны другие недели вообще) или настройка формулы для хранения значения для соответствующих недель (если вам нужно отобразить, но не суммировать другие недели). –

Смежные вопросы