Объект Matrix - фича

отредактировано 23:13 Раздел: FastReport .NET
Натолкнулся на "фичу" у объекта Matrix с установленным свойством AutSize==true:
Имя строки задается как: "012345678901234567890123456789 " + rowIndex.ToString(); //32+ символа
имя колонки: "9876543210987654321098765432109876543210987654321098765432 " +columnIndex.ToString();//60+ символов

на шаблоне отчета на единственном бенде лежит объект Matrix привязанный к данным.
при построении отчета на первой странице выводятся только заголовки строк, со второй страницы матрица начинает выводится как надо.
если увеличить длину имени колонки на 1 символ (или строки), то при построении отчета новые страницы не прекращают генерироватся и съедают всю свободную память (Кнопка "Отмена" не прекращает построение).
видимо бага в механизме расчета свободного места под матрицу (Колонка не умещается на текущей странице => переносится на новую страницу, но на этой новой странице она также не умещается, и т.д).

Комментарии

  • отредактировано 23:13
    Да, как минимум для одной колонки нужно место (если включено повторение заголовков - место для заголовков+одной колонки). То же касается и строк. Пофиксить можно, чтобы отчет не вылетал. Но такой отчет будет непригоден для распечатки, т.к. часть информации будет за пределами страницы.
  • отредактировано 23:13
    AlexTZ написал: »
    Пофиксить можно, чтобы отчет не вылетал. Но такой отчет будет непригоден для распечатки, т.к. часть информации будет за пределами страницы.

    ИМХО соит пофиксить, при построении превью пользователь будет видеть, что таблица вылезла за границы и выставлять размеры руками. А то как сейчас, со стороны пользователя, даже непонятно в чем ошибка.
  • отредактировано 23:13
    Будет исправлено в следующем билде.
  • отредактировано October 2009
    ЗДравствуйте.
    Есть сводный отчет, точнее должен быть. Добавляю запрос в источники данных, данные отображаются так как и должны через "Показать данные". ДОбавляю матрицу, вставляю в нее поля где они должны быть. Нажимаю просмотр, появляется табличка "доступ к данным" и через некоторое время (1-3 секунды) дизайнер крашится без каких либо объяснений.

    Что можно предпринять?

    Еще вопрос, как можно использовать в качестве строк индексы, а выводить поле, например "название", которое использует этот уникальный индекс?
    И я так понял, группировки мне уже не получить используя эту матрицу? Точнее я имею в виду иерарахию в виде
    _____________первый уровень
    ______________второй
    _____________третий

    а не то что может получиться

    первый уровень|второй|
    |второй|
    |второй|

    Возможно ли такое сделать используя матрицу?

    Переместил матрицу на заголовок отчета, краш прекратился. Ранее он был на заголовке страницы. Остальные вопросы пока под вопросом.
  • отредактировано 23:13
    Здравствуйте,

    Для построения матрицы можно использовать одно значение, а при печати заменять его другим. Пример есть в демо, Matrix/Print Month Names.
  • отредактировано February 2012
    AlexTZ написал: »
    Да, как минимум для одной колонки нужно место (если включено повторение заголовков - место для заголовков+одной колонки). То же касается и строк. Пофиксить можно, чтобы отчет не вылетал. Но такой отчет будет непригоден для распечатки, т.к. часть информации будет за пределами страницы.
    AlexTZ написал: »
    Будет исправлено в следующем билде.

    Сорри за некропостинг :) Столкнулся с данной проблемой - при большой длинне символьных данных в матрице получаем зависание на "вычисление размеров" и последующий висяк с поеданием памяти. Может баг был исправлен ,но я не знаю способа побороть эту проблему? WordWrap в ячейке матрицы вообще для чего?
    И ещё заметил - если AutoSize вырубаем и у нас в установленные размеры опять не убираются данные - так же висим :)

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

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