Модераторы: Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Редактирование строк из набора данных, Подстановка . и ; по условию 
:(
    Опции темы
former
Дата 1.6.2010, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: нет
Всего: 17



В отчете два бэнда - первого и второго уровня (связка master-detail). Данные подгружаются из Query самого отчета. В результате отчет имеет вид:
Код

Родитель 1
  - Потомок 1
  - Потомок 2
  - Потомок 3
Родитель 2
  - Потомок 1
  - Потомок 4
  - Потомок 6
...
и т.д.

Необходимо в перечислении потомков подставлять знаки ";" и ".", соответственно.
Код

Родитель 1
  - Потомок 1;
  - Потомок 2;
  - Потомок 3.
Родитель 2
  - Потомок 1;
  - Потомок 4;
  - Потомок 6.
...
и т.д.

Пытался сделать следующее. В событии OnBeforePrint:
Код

procedure EWorksQEWORKNAMEOnBeforePrint(Sender: TfrxComponent);
var EWStr:string;                                     
begin
  EWStr:=Lowercase('- '+<EWorksQ."EWORKNAME">);            
  if <Line> < EWorksQ.RecordCount then EWorksQEWORKNAME.Text:=EWStr+';'
  else if <Line> = EWorksQ.RecordCount then EWorksQEWORKNAME.Text:=EWStr+'.';  
end;

Однако, это не помогло. Везде проставляются точки.
Что делаю не так?

FastReport 4.9

Это сообщение отредактировал(а) former - 1.6.2010, 17:44


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
pseud
Дата 11.6.2010, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: нет
Всего: 40



Если есть возможность, почитай.
Цитата

Руководство пользователя. Скрипт. Печать итоговой суммы по группе в заголовке группы.

мне кажется, что тебе поможет именно этот подход:
Цитата

- отчет делается двухпроходным;

Мне тестовый отчет изобрести не удалось. А ты попробуй.




--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
former
Дата 11.6.2010, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: нет
Всего: 17



Цитата(pseud @  11.6.2010,  12:30 Найти цитируемый пост)
мне кажется, что тебе поможет именно этот подход:

pseud, документацию я читал, с подходом знаком.
В нем нет необходимости и только усложняет.
Достаточно использовать IIF. Но проблема, по всей видимости, с frxFIBQuery, т.к. с ADO все работает.
Все равно спасибо!


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Deniz
Дата 21.7.2010, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: нет
Всего: 44



Цитата(former @  11.6.2010,  16:20 Найти цитируемый пост)
Но проблема, по всей видимости, с frxFIBQuery
вероятно данные подгружаются по мере необходимости и EWorksQ.RecordCount постоянно увеличивается. Попробуйте FetchAll для DataSet'а.


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Репортинговые системы | Следующая тема »


 




[ Время генерации скрипта: 0.0403 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.