Подсчет процентов в итогах сводной таблицы (матрица)

отредактировано May 2010 Раздел: FastReport .NET
Здравствуйте,
Существует сводная таблица (матрица). В каждой строке задано 3 значения, первые два, (param1, param2)являются данными из базы, третье вычисляется по выражению:
IIf([param1]!=0,100*[param2]/[param1],0);
Соответственно в опции "функция" полей param1 и param2, выставив вариант "Сумма",получаем в итогах таблицы сумму соответствующих полей, это собственно и нужно.
Но как быть с процентами? Сумма или другие опции по отношию к полю вычисления процентов, естественно, не подходят. Как внести выражение в итоговое поле?
Спасибо.

Комментарии

  • отредактировано 22:54
    Здравствуйте,

    Объект "Матрица" не поддерживает такие вещи. Рекомендую использовать объект "Таблица" в динамическом режиме.
  • отредактировано May 2010
    AlexTZ написал: »
    Здравствуйте,

    Объект "Матрица" не поддерживает такие вещи. Рекомендую использовать объект "Таблица" в динамическом режиме.
    Спасибо за быстрый ответ. Не совсем понятно, что Вы подразумеваете под динамическим режимом. Как столбец из базы вывести в заголовках столбцов таблицы и построить сводный отчет, используя обычную таблицу? Если можно, опишите, пожалуйста этот вариант подробнее.
    P.S. Еще одни маленький вопрос. Возможно ли использование формул при выгрузке отчета в формат Excel? (подобно дизайнеру отчетов iReport)
  • отредактировано 22:54
    Посмотрите описание здесь:
    http://fast-report.com/documentation/UserM...objectprint.htm
    Примеры использования здесь:
    http://fast-report.com/documentation/UserM...ectexamples.htm
    а также в демо (категория Table).
    Формулы в excel использовать нельзя.
  • отредактировано 22:54
    В одном из следующих билдов добавлю поддержку выражений в итогах.
  • отредактировано 22:54
    AlexTZ написал: »
    В одном из следующих билдов добавлю поддержку выражений в итогах.
    Спасибо! Будем ждать с нетерпением!
  • отредактировано 22:54
    В последнем билде попробуйте следующее:
    Для третьего значения укажите тип функции - "Пользовательская" и задайте следующее выражение:

    IIf(Matrix1.Value(0) != 0, 100 * Matrix1.Value(1) / Matrix1.Value(0), 0)

    где Matrix1 - имя объекта Matrix
  • отредактировано 22:54
    AlexTZ написал: »
    В последнем билде попробуйте следующее:
    Для третьего значения укажите тип функции - "Пользовательская" и задайте следующее выражение:

    IIf(Matrix1.Value(0) != 0, 100 * Matrix1.Value(1) / Matrix1.Value(0), 0)

    где Matrix1 - имя объекта Matrix
    Спасибо! Все отлично работает!

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

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