Изменения в билде от 17 августа

Обсуждение Stimulsoft Reports.NET
4it
Сообщения: 78
Зарегистрирован: 29 июн 2010, 04:46
Откуда: Moscow

Изменения в билде от 17 августа

Сообщение 4it »

Здравствуйте.
17 Aug 2010
Add: Three new values for the property ProcessingDuplicates. Thses are BasedOnValueAndTagMerge, BasedOnValueAndTagHide and BasedOnValueRemoveText.
Объясните пожалуйста как работает данный тип обработки дубликатов, на основании чего группирует и чем отличается от basedOnTAg?

Спасибо
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Изменения в билде от 17 августа

Сообщение Ivan »

Здравствуйте.

В указанном билде были добавлены 3 новых вида обработки дубликатов:
- BasedOnValueAndTagMerge,
- BasedOnValueAndTagHide,
- BasedOnValueRemoveText

В прежних методах обработка значений и объектов производилась одновременно и уже после рендеринга всей страницы, т.е. размеры текстбокса уже не изменялись в любом случае.
Эти три типа отличаются от прежних тем, что обработка значений производится во время рендеринга текстбокса (в событии OnGetValue), и размер текстбокса вычисляется уже после этого в зависимости от значения. Обработка объектов (объединение/удаление ячеек) производится после рендеринга всей страницы, поэтому для правильной работы первых двух методов надо заполнять свойство Tag тем же значением, что и свойство Text.

Если надо принудительно перезапустить обработку дубликатов (например, при использовании группировок), можно использовать следующую команду в скрипте:

Код: Выделить всё

	Engine.ResetProcessingDuplicates("componentName");

Спасибо.
4it
Сообщения: 78
Зарегистрирован: 29 июн 2010, 04:46
Откуда: Moscow

Изменения в билде от 17 августа

Сообщение 4it »

Здравствуйте.

Не удалось найти указанное вами событие OnGetValue.
Не могли бы вы прислать пример использования обработки дубликатов BasedOnValueAndTagMerge.

Если у вас нет готового примера просьба сделать это на приложенном отчете.
Вложения
Обработка дубликатов.mrt
(16.53 КБ) 182 скачивания
med-01.accdb
(784 КБ) 347 скачиваний
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Изменения в билде от 17 августа

Сообщение Ivan »

Здравствуйте.

Вам не нужно искать и использовать событие OnGetValue, оно само используется внутри метода обработки дубликатов.
Вам только надо заполнять свойство Tag тем же значением, что и свойство Text.
Пример использования прикреплен к посту.

Спасибо.
Вложения
Processing duplicates.zip
(3.61 КБ) 180 скачиваний
4it
Сообщения: 78
Зарегистрирован: 29 июн 2010, 04:46
Откуда: Moscow

Изменения в билде от 17 августа

Сообщение 4it »

Спасибо.

Представлял себе эту обработку несколько иначе. Получается что это по сути аналог обработки дубликатов "соединить".

Было бы хорошо если б появился аналог обработки based on TAG. Только в поле TAG прописывалось бы содержание самой ячейки. И было бы некоторое значение (например VAlue), на основании которого и проводилась бы группировка. Тогда можно было бы выгружать отчет с колонтитулами и это решило бы многие проблемы с некорректным сжатием, т.к. по сути настройка экспорта в ртф LineHeightExactly=false не работает как надо.
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Изменения в билде от 17 августа

Сообщение Ivan »

Здравствуйте.
4it писал(а):Представлял себе эту обработку несколько иначе. Получается что это по сути аналог обработки дубликатов "соединить".
- BasedOnValueAndTagMerge - соединить дубликаты,
- BasedOnValueAndTagHide - спрятать дубликаты,
- BasedOnValueRemoveText - удалить текст дубликатов.
4it писал(а):Было бы хорошо если б появился аналог обработки based on TAG. Только в поле TAG прописывалось бы содержание самой ячейки. И было бы некоторое значение (например VAlue), на основании которого и проводилась бы группировка. Тогда можно было бы выгружать отчет с колонтитулами и это решило бы многие проблемы с некорректным сжатием, т.к.
Значение текстового поля ВСЕГДА должно определяться свойством Text. Свойство Tag - вспомогательное, назначение меняется в разных задачах.
Если мы правильно поняли ваше предложение, вы предлагаете содержимое текстового поля прописывать в свойстве Tag, для поля группировки ввести новое поле Value, а свойство Text не использовать вообще?.
4it писал(а):по сути настройка экспорта в ртф LineHeightExactly=false не работает как надо.
В описании свойства ясно сказано: "Gets or sets a value indicating a line height mode - "exactly" or "at least".
Т.е. это свойство выбирает режим использования высоты строки - "точно" или "как минимум".
В обоих случаях высота строки в Word будет равна или больше указанной, но не меньше.
Чтобы строка сжималась по высоте, надо не экспортировать высоту строки вообще. Готового свойства для этого пока нет. Но это применяется при включении свойства UsePageHeadersAndFooters.

Спасибо.
4it
Сообщения: 78
Зарегистрирован: 29 июн 2010, 04:46
Откуда: Moscow

Изменения в билде от 17 августа

Сообщение 4it »

4it wrote:
Представлял себе эту обработку несколько иначе. Получается что это по сути аналог обработки дубликатов "соединить".

- BasedOnValueAndTagMerge - соединить дубликаты,
- BasedOnValueAndTagHide - спрятать дубликаты,
- BasedOnValueRemoveText - удалить текст дубликатов.
Все это я прекрасно понимаю. Исходя из высланного вами примера можно сделать вывод что при использовании обработки дубликатов "соединить" и "BasedOnValueAndTagMerge" результат остается одинаковым. Просто несколько меняется отображение текста (во втором случае выполено сжатие ячеек по высоте).
4it wrote:
Было бы хорошо если б появился аналог обработки based on TAG. Только в поле TAG прописывалось бы содержание самой ячейки. И было бы некоторое значение (например VAlue), на основании которого и проводилась бы группировка. Тогда можно было бы выгружать отчет с колонтитулами и это решило бы многие проблемы с некорректным сжатием, т.к.

Значение текстового поля ВСЕГДА должно определяться свойством Text. Свойство Tag - вспомогательное, назначение меняется в разных задачах.
Если мы правильно поняли ваше предложение, вы предлагаете содержимое текстового поля прописывать в свойстве Tag, для поля группировки ввести новое поле Value, а свойство Text не использовать вообще?.
Я говорю о том, что получается неудобная ситуация:
Если в отчете необходимо использовать обработку дубликатов "BasedOnTag" и в связи с этим в поле Tag прописывается значение, в котором указывается значение ячейки предыдущего столбца и данного столбца, то пропадает возможность выгрузки при включении свойства UsePageHeadersAndFooters и соответственно правильного сжатия ячеек.

Как правильно решить эту проблему по-другому я не знаю, возможно мой предложенный вариант не корректен.

Спасибо.
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Изменения в билде от 17 августа

Сообщение Ivan »

Здравствуйте.
4it писал(а):Исходя из высланного вами примера можно сделать вывод что при использовании обработки дубликатов "соединить" и "BasedOnValueAndTagMerge" результат остается одинаковым. Просто несколько меняется отображение текста (во втором случае выполено сжатие ячеек по высоте).
Да, в описании так и написано.
4it писал(а):Я говорю о том, что получается неудобная ситуация:
Если в отчете необходимо использовать обработку дубликатов "BasedOnTag" и в связи с этим в поле Tag прописывается значение, в котором указывается значение ячейки предыдущего столбца и данного столбца, то пропадает возможность выгрузки при включении свойства UsePageHeadersAndFooters и соответственно правильного сжатия ячеек.
Мы немного доработали экспорт в RTF. Теперь поле Tag экспортируется только тогда, когда в нём содержится одно из ключевых слов "#PageNumber#", "#TotalPageCount#" или "#PageRef", ради которых эта фишка собственно и задумывалась.
Патч будет включен в следующий предрелизный билд.

Спасибо.
4it
Сообщения: 78
Зарегистрирован: 29 июн 2010, 04:46
Откуда: Moscow

Изменения в билде от 17 августа

Сообщение 4it »

Мы немного доработали экспорт в RTF. Теперь поле Tag экспортируется только тогда, когда в нём содержится одно из ключевых слов "#PageNumber#", "#TotalPageCount#" или "#PageRef", ради которых эта фишка собственно и задумывалась.
Патч будет включен в следующий предрелизный билд.
Огромное спасибо!
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Изменения в билде от 17 августа

Сообщение Ivan »

Здравствуйте.

Всегда рады помочь.

Спасибо.
Ответить