Cross Отчет

отредактировано 09:28 Раздел: FastReport 3.0
Добрый день...
С помошью addvalue построил Кросс отчет...
Как добраться к значениям полученным в ячейках отчета? и в дальнейшем их использовать...
Или как можно присвоить значение строки:
Cross1.AddValue([<SK8."KRS">], [<SK8."Zak">], [<SK8."Value">]);
какой нить переменной???
Очень нужно...

Комментарии

  • отредактировано 09:28
    kazan_maloy написал:
    Добрый день...
    С помошью addvalue построил Кросс отчет...
    Как добраться к значениям полученным в ячейках отчета? и в дальнейшем их использовать...
    Или как можно присвоить значение строки:
    Cross1.AddValue([<SK8."KRS">], [<SK8."Zak">], [<SK8."Value">]);
    какой нить переменной???
    Очень нужно...
    Непонятно...Ты хочешь менять значения в сформированном отчете?
  • отредактировано 09:28
    Подробней...
    Отчет такой...одна строка кол-во мероприятий, вторая стоимость каждого мероприятия - получаю их общую стоимость...
    Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [<SK8."Kolvo">]);
    Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [<SK8."COST">]);
    Мне еще нужно получить и вывести отдельной строкой среднюю стоимость, т.е в конце поделить общую стоимось на кол-во мероприятий...
    Cross1.AddValue([<SK8."KRS">], [<SK8."ZAK">], [?????]);
    Как???
  • отредактировано 09:28
    kazan_maloy написал:
    Подробней...
    Отчет такой...одна строка кол-во мероприятий, вторая стоимость каждого мероприятия - получаю их общую стоимость...
    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">]);


  • отредактировано 09:28
    в том то и дело что
    <SK8."Kolvo"> всегда равно 1
    грубо говоря кол-во - это число строк в селекте...
    [<SK8."COST">/<SK8."Kolvo">] - эта формула мне даст просто сумарную стоимость, а не среднюю...
  • отредактировано 09:28
    kazan_maloy написал:
    в том то и дело что
    <SK8."Kolvo"> всегда равно 1
    грубо говоря кол-во - это число строк в селекте...
    [<SK8."COST">/<SK8."Kolvo">] - эта формула мне даст просто сумарную стоимость, а не среднюю...
    Тебе надо стоимость всех мероприятий разделить на количество всех мероприятий?
    У тебя запрос строится по дате?
    Тогда делай запрос по дате, вычисляй SUM(COST) и дели на количество строк
    (Query1->RecordCount()).
    Присваивай это отдельной переменной, например TotalAvg.
    Далее в событии отчета OnGetValue засовывай полученные данные в переменную самого отчета(которая уже должна быть созданной(TotalAvg)):
    if(CompareText(VarName,"TotalAvg")==0)
    {
    Value=TotalAvg;
    }

    И выводи в отчете переменную TotalAvg.



Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.