Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2011, 10:37   #1
-=pasha=-
Пользователь
 
Регистрация: 22.06.2010
Сообщений: 41
По умолчанию Создание отчета

Есть база в аксесе. Подключена в делфи.Нужно сформировать отчет в Fastreport. На форму кидаю DataSource1,ADOQuery1,frxReport1,fr xCrossObject1,frxDBDataset1
2 кнопочки, по нажитии одной появляется пред просмотр, по другой- выход. У frxReport1 написал обрабочик на BeforePrint
Код:
procedure TForm12.frxReport1BeforePrint(Sender: TfrxReportComponent);
var
  Cross: TfrxCrossView;
  i, j: Integer;
begin
  if Sender is TfrxCrossView then
  begin
    Cross := TfrxCrossView(Sender);

    ADOQuery1.First;
    i := 0;
    while not ADOQuery1.Eof do
    begin
      for j := 0 to ADOQuery1.Fields.Count - 1 do
        Cross.AddValue([i], [ADOQuery1.Fields[j].DisplayLabel], [ADOQuery1.Fields[j].AsString]);

      ADOQuery1.Next;
      Inc(i);
    end;
  end;
end;
все бы ничего, да вот только заголовки столбцов съехали вправо, Как можно это исправить?
-=pasha=- вне форума Ответить с цитированием
Старый 18.01.2011, 11:32   #2
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Зачем все это?
Берешь ADOQuery1,frxReport1, frxDBDataset1.
В свойствах frxDBDataset1 указываешь DataSet:= ADOQuery1;
Заходишь в отчет и подключаешь frxDBDataset1.
Вытаскиваешь бэнд первого уровня, связываешь с frxDBDataset1 и бросаешь в бэнд нужные поля.
Всё. Никаких циклов не нужно.
_SERGEYX_ вне форума Ответить с цитированием
Старый 18.01.2011, 11:39   #3
-=pasha=-
Пользователь
 
Регистрация: 22.06.2010
Сообщений: 41
По умолчанию

Ну я просто в демке посмотрел, переделал под себя... Щас попробую по твоему

А если я хочу чтобы у меня все было динамически? Ну не Бросать на форму поля, а чтоб все было динамически... просто у меня таблица длинная и на одну страницу все не влазит, вот с помощью той процедурки, у меня заполнялась таблика с полями, что не влезло на один лист автоматом переходило на 2. Для этого и кинул кросс.

Последний раз редактировалось Stilet; 18.01.2011 в 15:21.
-=pasha=- вне форума Ответить с цитированием
Старый 18.01.2011, 12:03   #4
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Там в FastReport-е свойств куча. Можно переностить и на другую страницу, и в другую колонку.. и вообще что угодно и куда угодно. Я уже молчу про встроенный редактор кода, где на том же паскале можно написать что фантазия подскажет.
_SERGEYX_ вне форума Ответить с цитированием
Старый 18.01.2011, 12:09   #5
-=pasha=-
Пользователь
 
Регистрация: 22.06.2010
Сообщений: 41
По умолчанию

Свойств то куча, их нужно еще все знать) Ладно щас ченить потыкаю..
-=pasha=- вне форума Ответить с цитированием
Старый 20.01.2011, 07:44   #6
-=pasha=-
Пользователь
 
Регистрация: 22.06.2010
Сообщений: 41
По умолчанию

А как сделать чтобы в отчет тянулись только нужные поля? Допустим, я отмечу нужные поля галочкой, и именно эти поля потянутся в отчет. Как это можно реализовать?
-=pasha=- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание отчета bsi1952 Microsoft Office Access 1 27.06.2010 20:43
Создание отчета Alsou Общие вопросы Delphi 0 19.06.2010 19:43
Создание отчета Deni55 Microsoft Office Excel 13 15.06.2009 14:53
Создание отчета! Deni55 Microsoft Office Excel 10 16.04.2009 14:04
Создание отчета!!! Viento Microsoft Office Excel 12 26.01.2009 09:26