Страница 1 из 2

проблемы с элементом Table и вопросы по нему

Добавлено: 25 окт 2010, 08:29
Nickola
Добрый день!

1 Проблема : вставляю в отчет бэнд Table и устанавливаю ему в Свойствах параметр Доступность (Enabled) = Нет (False). И ничего не происходит: на предварительном прсомотре и печати - бэнд не скрывается. Такое ощущение, что бэнд параметр Доступность (Enabled) просто игнорирует.

2 Проблема: в этом же вставленном бэнде Table делаю Header и Footer по одной строке и, к примеру, между ними еще 4 строки с данными. В условиях (Conditions) на этом бэнде задаю для всей(!) таблицы скрываться (Component Is Enabled = false) при определенном условии на значение в одном из полей в источнике данных отчета. На предварительном просмотре получается, что 4 строки с данными скрываются, а строка Header и строка Footer таблицы остаются видны! Приходится задавать эти же условия условия для этих строк по отдельности. Это так задумано, или это ошибка?

3 Вопрос: не могу разобраться, как по определенному условию менять ширину отдельных колонок бэнда Table? Свойства Width или чего то подобного на колонках не нашел :( Как кодом менять ширину по событию/условию?

Заранее спасибо!
-
У меня триальная версию Stimulsoft Reports.Net Ultimate 2010.2 (2010.2.800.0)

проблемы с элементом Table и вопросы по нему

Добавлено: 26 окт 2010, 05:38
Anton Lozovskiy
Здравствуйте,
Nickola писал(а):1 Проблема : вставляю в отчет бэнд Table и устанавливаю ему в Свойствах параметр Доступность (Enabled) = Нет (False). И ничего не происходит: на предварительном прсомотре и печати - бэнд не скрывается. Такое ощущение, что бэнд параметр Доступность (Enabled) просто игнорирует.
Мы внесли изменения, патч будет доступен 26.10.2010.
Nickola писал(а):2 Проблема: в этом же вставленном бэнде Table делаю Header и Footer по одной строке и, к примеру, между ними еще 4 строки с данными. В условиях (Conditions) на этом бэнде задаю для всей(!) таблицы скрываться (Component Is Enabled = false) при определенном условии на значение в одном из полей в источнике данных отчета. На предварительном просмотре получается, что 4 строки с данными скрываются, а строка Header и строка Footer таблицы остаются видны! Приходится задавать эти же условия условия для этих строк по отдельности. Это так задумано, или это ошибка?
Есть очень много сложностей с последующим рендерингом таблицы, поэтому это не является ошибкой, лучше так и задавайте.
Nickola писал(а):3 Вопрос: не могу разобраться, как по определенному условию менять ширину отдельных колонок бэнда Table? Свойства Width или чего то подобного на колонках не нашел :( Как кодом менять ширину по событию/условию?
Сейчас очень проблематично из кода менять ширину колонок, но у нас есть эта задача в todo листе. Поэтому в будущем мы это реализуем.

Спасибо.

проблемы с элементом Table и вопросы по нему

Добавлено: 26 окт 2010, 09:23
Nickola
Есть очень много сложностей с последующим рендерингом таблицы, поэтому это не является ошибкой, лучше так и задавайте.
Так и задаю. А что еще делать то? :) Всю таблицу ведь через код не скрыть :)

Мне вообще изначально нужно было всего лишь скрывать отдельные колонки таблицы по условию, и затем раздвигать оставшиеся по ширине, чтобы они занимали место скрытых. Но т.к. изменение ширины мне не удалось, я сделал две таблицы, одну с одним количеством колонок, другую с другим, и попробовал их переключать через код по событию. Но когда у меня и это не получилось, т.к. скрытие таблицы не работает из-за ошибки, я стал делать через Condition. Но и там, вместо одного действия, мне пришлось сделать три - скрыть саму таблицу (но как оказалось - только строки с данными), а затем повторить условия на фиксированных строках - Header-е и Footer-е. Вот тогда, вроде бы, получилось. Да и то, теперь у меня вместо таких, скрытых кусками, таблиц получается какой то здоровый отступ. Т.е. между предыдущим или следующим бендом в зависимости от верхней или нижней скрытой таблицы, образуется толстый пробел. Т.е. место, под или над оставшейся не скрытой таблицей, не освобождается и сдвига бэндов не происходит. Это видать и есть проблемы рендеринга?
Сейчас очень проблематично из кода менять ширину колонок, но у нас есть эта задача в todo листе. Поэтому в будущем мы это реализуем.
Я изучаю и выбираю помимо Вашего продукта еще FastReport. Там никаких проблем с изменением ширин колонок элемента table из кода не возникает. :(

проблемы с элементом Table и вопросы по нему

Добавлено: 26 окт 2010, 09:39
Anton Lozovskiy
Здравствуйте,

Скрывать колонки по условию очень просто. Мы сделали пример для вас, посмотрите пожалуйста (Описание внутри).

Спасибо.

проблемы с элементом Table и вопросы по нему

Добавлено: 26 окт 2010, 09:50
fantomus
Извините за оффтоп, но позволю себе вставить "5 копеек".

Nickola, а Вы видели, когда был последний ответ разработчиков на форуме FastReport?
Когда были последние существенные изменения в их продукте?

Я в свое время выбирал между этими двумя генераторами, плюсы-минусы выписывал, тестил...
У каждого свои преимущества.
В результате были куплены оба :).

Но в последнее время судьба FastReport вызывает опасения.

проблемы с элементом Table и вопросы по нему

Добавлено: 26 окт 2010, 10:24
Nickola
Anton писал(а):Здравствуйте,

Скрывать колонки по условию очень просто. Мы сделали пример для вас, посмотрите пожалуйста (Описание внутри).

Спасибо.
Антон, спасибо за пример. Но мне это решение не подходит. У Вас в примере таблица просто растягивает последнюю ячейку при скрытии стоящих до нее.

У меня задача другая: есть Таблица, в которой есть 6 колонок. Первая и последняя колонки имеют жестко фиксированный размер и положение. Вторая и третья колонки тоже всегда на экране, но их размер должен меняться. Меняться их размер должен в зависимости от того, скрыты ли 4 и 5 колонки - они скрываются одновременно по опр. условию. Размер 2 и 3 колонки должен при скрытии пропорционально увеличиваться, чтобы получился суммарный размер: к примеру Column_2.Width = Column_2.Width + Column_4.Width. И тоже самое с колонками 3 и 5 соотвественно. В результате две растянутые в ширину колонки 2 и 3 занимают суммарное место - свое и колонок 4 и 5. При этом первя и 6 колонки остаются на своих местах и размер их не меняется.

проблемы с элементом Table и вопросы по нему

Добавлено: 27 окт 2010, 08:43
Nickola
fantomus писал(а):Извините за оффтоп, но позволю себе вставить "5 копеек".

Nickola, а Вы видели, когда был последний ответ разработчиков на форуме FastReport?
Когда были последние существенные изменения в их продукте?

Я в свое время выбирал между этими двумя генераторами, плюсы-минусы выписывал, тестил...
У каждого свои преимущества.
В результате были куплены оба :).

Но в последнее время судьба FastReport вызывает опасения.
[offtop]

Присоединюсь первый и последний раз к оффтопу. Звиняйте, если что не так.

Я не буду приводить здесь недостатки Stimulsoft Reports, которые я обнаружил для себя. Не ошибки, а именно недостатки. Ошибки я стараюсь сразу сообщить разработчикам для их исправления. А недостатки - это мое субъективное ощущение от продукта в целом. Скажу только одно - точно такой же отчет, как я пытаюсь сделать сейчас на Stimulsoft Reports, я сделал немного ранее на FastReport гораздо быстрее. Хотя начинал я ознакомление с обоими продуктами с нуля, и Stimulsoft, по идее, даже имел небольшое преимущество, т.к. отчет на нем я делал идя по уже проторенному пути - копируя многие решения из первой реализации его на FastReport.

Я лучше "кину камень" в FastReport. Что меня заставило от них фактически отказаться - так это работа FastReport.NET с экспортом RichText элемента с введенным Rtf-текстом в различные форматы (Word, Excel). У них RTF-текст при экспорте преобразуется в картинку, в метафайл. Естественно, дальнейшему редактированию это уже не подлежит. А мне это было крайне важно. В Stimulsoft Reports с этим все как раз в порядке. И поддержка здесь гораздо отзывчивей, что несомненно радует. :)

[/offtop]

проблемы с элементом Table и вопросы по нему

Добавлено: 27 окт 2010, 11:14
Anton Lozovskiy
Здравствуйте,
Nickola писал(а):Антон, спасибо за пример. Но мне это решение не подходит. У Вас в примере таблица просто растягивает последнюю ячейку при скрытии стоящих до нее.

У меня задача другая: есть Таблица, в которой есть 6 колонок. Первая и последняя колонки имеют жестко фиксированный размер и положение. Вторая и третья колонки тоже всегда на экране, но их размер должен меняться. Меняться их размер должен в зависимости от того, скрыты ли 4 и 5 колонки - они скрываются одновременно по опр. условию. Размер 2 и 3 колонки должен при скрытии пропорционально увеличиваться, чтобы получился суммарный размер: к примеру Column_2.Width = Column_2.Width + Column_4.Width. И тоже самое с колонками 3 и 5 соотвественно. В результате две растянутые в ширину колонки 2 и 3 занимают суммарное место - свое и колонок 4 и 5. При этом первя и 6 колонки остаются на своих местах и размер их не меняется.
Сделать так как вы хотите очень просто, посмотрите пример (Описание внутри).

Спасибо.

проблемы с элементом Table и вопросы по нему

Добавлено: 27 окт 2010, 12:36
Nickola
Anton писал(а):Здравствуйте,

Сделать так как вы хотите очень просто, посмотрите пример (Описание внутри).

Спасибо.
Добрый вечер! Спасибо за еще один пример. Все равно не то, что нужно.

Во первых, мне нужно зафиксировать размер крайних колонок. А менять размер средних. Причем так, чтобы общая ширина таблицы оставалась неизменной. В Вашем примере, если я меняю так, как мне надо: делаю фиксированную ширину 5-ой колонки, а 4-ую освобождаю, то при скрытии 3-ей колонки таблица сжимается по ширине целиком, т.е. ее общая ширина меняется, она как бы смещается влево.

И второе, автосайз колонок мне не подходит, т.к. 2-е скрываемые колонки имеют разную ширину, поэтому мне и приходилось суммировать попарно размеры - давать остающейся на экране колонке сумму ее собсвенного размера и размера скрываемой. :(

проблемы с элементом Table и вопросы по нему

Добавлено: 29 окт 2010, 11:48
Anton Lozovskiy
Здравствуйте,
Во первых, мне нужно зафиксировать размер крайних колонок. А менять размер средних. Причем так, чтобы общая ширина таблицы оставалась неизменной. В Вашем примере, если я меняю так, как мне надо: делаю фиксированную ширину 5-ой колонки, а 4-ую освобождаю, то при скрытии 3-ей колонки таблица сжимается по ширине целиком, т.е. ее общая ширина меняется, она как бы смещается влево.
Действительно есть проблема для вашего примера, мы постараемся разобраться с ней.
И второе, автосайз колонок мне не подходит, т.к. 2-е скрываемые колонки имеют разную ширину, поэтому мне и приходилось суммировать попарно размеры - давать остающейся на экране колонке сумму ее собсвенного размера и размера скрываемой. :(
Нам нужно некоторое время, чтобы подготовить вам ответ.

Спасибо.