Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Подписи на каждой странице


Автор: TAmateur 20.10.2008, 12:25
Всем привет!
Есть отчёт. В нём несколько страниц. Необходимо, чтобы в низу каждой страницы выводились инициалы ответственных лиц, которые в свою очередь берутся из отдельной таблицы.  Положил page footer, и на него мemo. Запустил. Но на каждой странице появилось только одна запись с инициалами. Как правильно сделать? Заранее спасибо.

Автор: Frees 20.10.2008, 12:42
на вскидку. можно через SubReport 
ложиш его на page footer а в самом SubReport ложиш дата бэнд а на этот дата бэнд (связываеш его с табл ответственных)уже мемку с ответственными 

но наверно есть и другие способы

Автор: Deniz 20.10.2008, 12:44
Цитата(TAmateur @  20.10.2008,  15:25 Найти цитируемый пост)
Есть отчёт.
какой?
Цитата(TAmateur @  20.10.2008,  15:25 Найти цитируемый пост)
Но на каждой странице появилось только одна запись с инициалами.
а должно быть много?

Автор: TAmateur 20.10.2008, 12:50
Цитата(Frees @  20.10.2008,  12:42 Найти цитируемый пост)
ложиш его на page footer а в самом SubReport ложиш дата бэнд а на этот дата бэнд (связываеш его с табл ответственных)уже мемку с ответственными  

Так пробовал. Но вылетает AV.  При frReport.ShowPerort. Может есть другой способ?

Добавлено через 2 минуты и 41 секунду
Deniz, 
Цитата(Deniz @  20.10.2008,  12:44 Найти цитируемый пост)
какой?

fast report 3.x.

Цитата(Deniz @  20.10.2008,  12:44 Найти цитируемый пост)
а должно быть много? 

На данный момент в таблице две записи. Т.е. в подвале каждой страницы надо выводить по две записи. Но выводится только одна, первая запись.

Автор: Frees 20.10.2008, 12:54
хм чето кроме как скрипт писать ниче в голову не лезет, а может с АV разобраться проще?

Автор: Deniz 20.10.2008, 14:06
Цитата(Frees @  20.10.2008,  15:54 Найти цитируемый пост)
хм чето кроме как скрипт писать ниче в голову не лезет, а может с АV разобраться проще? 
Зачем скрипт? Достаточно определить переменную, и в нее запихнуть всю информацию с другой таблицы.
Примерно так:
Код

  Podp:='';
  TablePodpis.First;
  while not TablePodpis.eof do
  begin
    Podp:=Podp + TablePodpis.FindField('Name').asString;
    TablePodpis.Next;
    if not TablePodpis.eof then Podp:=Podp + #13;
  end;
  frxReport1.Variables['Podp1']:=QuotedStr(Podp);

Автор: TAmateur 20.10.2008, 15:00
Frees и Deniz, Спасибо. Воспользовался кодом Deniz.

Автор: Frees 20.10.2008, 15:07
Deniz, тоже самое можно в скрипте в самом отчете сделать + от этого в проге не будет кода для отчета, весь код в отчете будет

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)