Нумерованный список в отчете

отредактировано 22:54 Раздел: FastReport 4.0
Здрасте)
Подскажите плиз как можно в fast report(4) вывести нумерованный список в дереве.кучу литературы перерыл ..
юзал аналитические функции но все равно как то не так.
может быть и тем искал. есть ли возможность выводить список формата
1 ААА
1.1 ууу
1.2 еее
2 ББББ
2.1 апап
2.2 еее

Спасибо)

Комментарии

  • отредактировано 22:54
    по-моему я тоже это имел ввиду
    см в этом же форуме http://fast-report.com/ru/forum/index.php?showtopic=6429
    спасибо PhinoFC
  • RhinoFCRhinoFC Новосибирск
    отредактировано 22:54
    Zajigaev написал: »
    по-моему я тоже это имел ввиду
    см в этом же форуме http://fast-report.com/ru/forum/index.php?showtopic=6429
    спасибо PhinoFC

    Не, здесь другое. Здесь кросстаб не при делах.

    К автору вопроса. Сообщи побольше сведений, о том как хочешь отчёт построить. Само дерево как строится? Например используешь группировку (т.е. бэнды "GroupHeader") или берёшь данные для дерева из разных таблиц по мастер-деталь и, соответственно, используешь бэнды данных 1-го, 2-го и т.д. уровней? Тогда покумекаем.
  • отредактировано May 2009
    RhinoFC написал: »
    Не, здесь другое. Здесь кросстаб не при делах.

    К автору вопроса. Сообщи побольше сведений, о том как хочешь отчёт построить. Само дерево как строится? Например используешь группировку (т.е. бэнды "GroupHeader") или берёшь данные для дерева из разных таблиц по мастер-деталь и, соответственно, используешь бэнды данных 1-го, 2-го и т.д. уровней? Тогда покумекаем.

    источник данных Oraquery. возвращает набор данных деревяшки(id,idParent,.....)

    в отчете стоят два бэнда
    groupHeader1 ([Line],[имя],[количество])
    MasterData1([имя])

    так вот сейчас отчет выдает
    1 Узел 10
    Работа1
    Работа2
    2 Узел15 18
    работа3
    работа4

    а надо
    1 Узел 10
    1.1 Работа1
    1.2 Работа2
    2 Узел15 18
    2.1 работа3
    2.2 работа4

    зы.
    пытался поюзать level запросе select connect by
    и агрегатную функцию row_number() over(PArtition by Level order by.....)
    ну да ..замечательно, вторую циферку в формате (1.1) выдает ..но связать с первой не могу.
    вот и подумал а может быть в самом фаст реполорте для нумерованного списка что нить есть.
  • RhinoFCRhinoFC Новосибирск
    отредактировано 22:54
    Пусть будут два Мемо: memGrp, со значением [Line] и memData с пустым значением. Располагаются они соответственно на бэнде группы и бэнде данных. Для memGrp создаём обработчик OnAfterPrint, а для memData - OnBeforePrint:
    var
      L: string;
        
    procedure memDataOnBeforePrint(Sender: TfrxComponent);
    begin
      TfrxMemoView(Sender).Memo.Text := L + '.[Line]';                                                                                       
    end;
    
    procedure memGrpOnAfterPrint(Sender: TfrxComponent);
    begin
      L := Trim(TfrxMemoView(Sender).Text);                                                                        
    end;
    
    

    Всё.

  • отредактировано 22:54
    RhinoFC написал: »
    Пусть будут два Мемо: memGrp, со значением [Line] и memData с пустым значением. Располагаются они соответственно на бэнде группы и бэнде данных. Для memGrp создаём обработчик OnAfterPrint, а для memData - OnBeforePrint:
    var
      L: string;
        
    procedure memDataOnBeforePrint(Sender: TfrxComponent);
    begin
      TfrxMemoView(Sender).Memo.Text := L + '.[Line]';                                                                                       
    end;
    
    procedure memGrpOnAfterPrint(Sender: TfrxComponent);
    begin
      L := Trim(TfrxMemoView(Sender).Text);                                                                        
    end;
    
    

    Всё.


    спасибо! щас попробую.
  • RhinoFCRhinoFC Новосибирск
    отредактировано 22:54
    Не пробуй. Можно ещё проще (ща сам попробовал)
    В memData в качестве значения пропиши: [memGrp.Value].[Line]
    И вообще ни какого когда не надо.

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

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