Cross Отчет
Добрый день...
С помошью addvalue построил Кросс отчет...
Как добраться к значениям полученным в ячейках отчета? и в дальнейшем их использовать...
Или как можно присвоить значение строки:
Cross1.AddValue([<SK8."KRS">], [<SK8."Zak">], [<SK8."Value">]);
какой нить переменной???
Очень нужно...
С помошью addvalue построил Кросс отчет...
Как добраться к значениям полученным в ячейках отчета? и в дальнейшем их использовать...
Или как можно присвоить значение строки:
Cross1.AddValue([<SK8."KRS">], [<SK8."Zak">], [<SK8."Value">]);
какой нить переменной???
Очень нужно...
Комментарии
Отчет такой...одна строка кол-во мероприятий, вторая стоимость каждого мероприятия - получаю их общую стоимость...
Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [<SK8."Kolvo">]);
Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [<SK8."COST">]);
Мне еще нужно получить и вывести отдельной строкой среднюю стоимость, т.е в конце поделить общую стоимось на кол-во мероприятий...
Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [?????]);
Как???
у тебя "количество" и "цена" находятся в переменных
тогда:
Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [<SK8."COST">/<SK8."Kolvo">]);
<SK8."Kolvo"> всегда равно 1
грубо говоря кол-во - это число строк в селекте...
[<SK8."COST">/<SK8."Kolvo">] - эта формула мне даст просто сумарную стоимость, а не среднюю...
У тебя запрос строится по дате?
Тогда делай запрос по дате, вычисляй SUM(COST) и дели на количество строк
(Query1->RecordCount()).
Присваивай это отдельной переменной, например TotalAvg.
Далее в событии отчета OnGetValue засовывай полученные данные в переменную самого отчета(которая уже должна быть созданной(TotalAvg)):
if(CompareText(VarName,"TotalAvg")==0)
{
Value=TotalAvg;
}
И выводи в отчете переменную TotalAvg.