Конференция "Базы" » Отчет в FastReport, выбранные строки [Access]
 
  • prygun (10.01.12 12:56) [0]
    Имеется программа "Прайс-лист" на Delphi. пользователь выбирает товар для покупки из базы данных. Как сделать отчет, содержащий выбранные строки? Нашел, как создать отчет с помощью FastReport, но только всей базы.
  • Ega23 © (10.01.12 13:11) [1]
  • OW © (10.01.12 13:34) [2]
    FastReport, видимо, имеет какой-то DataSet/ датасорс, на основании которого и строится отчет
    Вот и надо в этот DS / ДС положить выбранные строки

    а так круто было б :)

    > Нашел, как создать отчет с помощью FastReport, но только
    > всей базы.

    Кинул FastReport, он тебе все 12 000 таблиц в какой-то отчет загнал...
  • Inovet © (10.01.12 15:00) [3]
    > [0] prygun   (10.01.12 12:56)
    > Нашел, как создать отчет с помощью FastReport, но только всей базы

    Для начала надо вникнуть в идеологию инструмента. Способов несколько, смотря что надо.
  • Jeer © (10.01.12 16:50) [4]

    > но только всей базы.


    "Быть того не может" (С)

    Фильтр, select, слияние - наше все.
  • prygun (10.01.12 21:06) [5]
    Проблема решена.


    > FastReport, видимо, имеет какой-то DataSet/ датасорс, на
    > основании которого и строится отчет
    > Вот и надо в этот DS / ДС положить выбранные строки


    Спасибо за помощь! Создал копию исходной таблицы с пустыми полями, куда и копировал выбранное. Отлично все работает.
  • Ega23 © (10.01.12 22:03) [6]
    пипец.
    А в where ограничение прописать не судьба?
  • prygun (10.01.12 22:33) [7]
    sql не используется в программе.
  • Ega23 © (10.01.12 22:34) [8]

    > sql не используется в программе.


    ээээ... Не понял. А как же

    >  Создал копию исходной таблицы с пустыми полями, куда и
    > копировал выбранное.


    ????
  • prygun (11.01.12 08:40) [9]
    Access Database. В Microsoft Office создал таблицу. Копировал записи с использованием свойств и методов самих компонентов ADOTable.
  • Ega23 © (11.01.12 08:49) [10]

    >  компонентов ADOTable.


    А говоришь sql нет. Есть, но примитивный, select * from table. А тебе надо взять TADODataSet, прописать ему CommandText select * from table where ....  и уже его подавать в FR.
  • prygun (11.01.12 12:32) [11]
    procedure TMainForm.Action5Execute(Sender: TObject);
    var i,lCount: integer;
    begin
     DataModule1.ReportTable.Edit;
     DataModule1.ReportTable.Insert;
     lCount:=DataModule1.PriceTable.FieldCount;
     for i:=1 to lCount-1 do
       if (not DataModule1.PriceTable.Fields[i].IsNull) and (DataModule1.PriceTable.Fields[i].CanModify) then
         DataModule1.ReportTable.FieldByName(DataModule1.PriceTable.Fields[i].FieldName). Assign(DataModule1.PriceTable.Fields[i]);
    end;

    Здесь никаким sql и не пахнет. Если не прав, поправьте.
  • Ega23 © (11.01.12 12:39) [12]

    > Здесь никаким sql и не пахнет. Если не прав, поправьте.


    Здесь вовсю воняет примитивным TTable, который внутри себя содержит примитивный Select * from Table.
    Компонент данный сделан для лентяев. Сделан через жопу. Более-менее обоснован для Парадокса.
    Для всего остального есть православный TDataSet.
  • MsGuns © (11.01.12 13:31) [13]
    sql вредоносный язык. Кто его выучил, тот становится угрюмым, нудным и злым.
    Как Ega23 :)
  • Jeer © (11.01.12 17:41) [14]

    > Кто его выучил, тот становится


    ..гуру, а вот кто учит - то по тексту.
  • prygun (11.01.12 20:39) [15]
    Я могу согласиться с тем, что TADOTable примитивный компонент, но тем не менее для простейших программ уровня курсового проекта среднего специального учебного заведения он подходит более чем полностью.
  • Ega23 © (11.01.12 22:35) [16]

    > Как сделать отчет, содержащий выбранные строки?


    Как видно из вопроса - не подходит.

    Впрочем, можешь продолжать упорствовать. Мне же лучше - конкуренция на рынке меньше.
  • РВА (11.01.12 22:40) [17]
    В FastReport есть компонент для выборки перед построением отчета. В нем пишешь SQL с нужными критериями, а уже по ним будет построен отчет
  • sniknik © (11.01.12 23:01) [18]
    > Я могу согласиться с тем, что TADOTable примитивный компонент
    а вот это зря, он просто искусственно "приземлен, до уровня...", а вообще это тот же датасет, и значит равен по сложности...  ее же не убрали, а урезали/спрятали.

    > он подходит более чем полностью.
    подходит подходит... но только и в нем без SQL не обойтись, а ты так не не умеешь.
    да и вообще с датасетом проще.

    > учебного заведения
    не повод, что учишься на медика, стремится гланды только через задницу вырезать.

    > В нем пишешь SQL с нужными критериями
    какая разница где? если именно против него, а не места, у автора темы предубеждение.
  • prygun (11.01.12 23:02) [19]

    > Мне же лучше - конкуренция на рынке меньше.


    Sorry, Ega32, но мы не конкуренты. Я живу в Беларуси и работать на россиян и прочих иностранцев нет никакого желания.
 
Конференция "Базы" » Отчет в FastReport, выбранные строки [Access]
Есть новые Нет новых   [134431   +11][b:0][p:0.001]