DBGrid

отредактировано 06:33 Раздел: FastReport 3.0
Здравствуйте !
подскажите пож-та
на форме есть DBGrid, выбираю запись и нажимаю Печать
открывается окно просмотра отчета , но отображаются данные не которые я выбрал а первая запись в DBGrid,
Вопрос: как зделать так чтоб отображалась выбранная запись в DBGrid???????

Комментарии

  • gpigpi
    отредактировано 06:33
    Установи frxDBDataset.RangeBegin=rbCurrent и frxDBDataset.RangeEnd=reCurrent у датасета, подключённого к отчёту
  • отредактировано 06:33
    не помогает.
  • gpigpi
    отредактировано 06:33
    Вот тестовый пример
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, frxClass, frxDBSet, StdCtrls, Grids, DBGrids, DB, DBTables;
    
    type
      TForm1 = class(TForm)
        Table1: TTable;
        DataSource1: TDataSource;
        DBGrid1: TDBGrid;
        Button1: TButton;
        frxDBDataset1: TfrxDBDataset;
        frxReport1: TfrxReport;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
         frxReport1.ShowReport();
    end;
    
    end.
    ======dfm======
    object Form1: TForm1
      Left = 192
      Top = 114
      Width = 696
      Height = 480
      Caption = 'Form1'
      Color = clBtnFace
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clWindowText
      Font.Height = -11
      Font.Name = 'MS Sans Serif'
      Font.Style = []
      OldCreateOrder = False
      PixelsPerInch = 96
      TextHeight = 13
      object DBGrid1: TDBGrid
        Left = 210
        Top = 36
        Width = 411
        Height = 283
        DataSource = DataSource1
        TabOrder = 0
        TitleFont.Charset = DEFAULT_CHARSET
        TitleFont.Color = clWindowText
        TitleFont.Height = -11
        TitleFont.Name = 'MS Sans Serif'
        TitleFont.Style = []
      end
      object Button1: TButton
        Left = 50
        Top = 246
        Width = 75
        Height = 25
        Caption = 'Button1'
        TabOrder = 1
        OnClick = Button1Click
      end
      object Table1: TTable
        Active = True
        DatabaseName = 'DBDEMOS'
        TableName = 'customer.db'
        Left = 42
        Top = 44
      end
      object DataSource1: TDataSource
        DataSet = Table1
        Left = 80
        Top = 44
      end
      object frxReport1: TfrxReport
        Version = '3.20'
        DotMatrixReport = False
        IniFile = '\Software\Fast Reports'
        PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick]
        PreviewOptions.Zoom = 1.000000000000000000
        PrintOptions.Printer = 'По умолчанию'
        ReportOptions.CreateDate = 38807.819964247680000000
        ReportOptions.LastChange = 38807.819964247680000000
        ScriptLanguage = 'PascalScript'
        ScriptText.Strings = (
          'begin'
          ''
          'end.')
        Left = 40
        Top = 88
        Datasets = <
          item
            DataSet = frxDBDataset1
            DataSetName = 'frxDBDataset1'
          end>
        Variables = <>
        Style = <>
        object Page1: TfrxReportPage
          PaperWidth = 209.973333333333400000
          PaperHeight = 296.862500000000000000
          PaperSize = 9
          LeftMargin = 10.000000000000000000
          RightMargin = 10.000000000000000000
          TopMargin = 10.000000000000000000
          BottomMargin = 10.000000000000000000
          object MasterData1: TfrxMasterData
            Height = 16.000000000000000000
            Top = 20.000000000000000000
            Width = 718.009912533333500000
            DataSet = frxDBDataset1
            DataSetName = 'frxDBDataset1'
            RowCount = 0
            object Memo1: TfrxMemoView
              Width = 282.000000000000000000
              Height = 16.000000000000000000
              Frame.Typ = [ftLeft, ftRight, ftTop, ftBottom]
              Memo.UTF8 = (
                '[frxDBDataset1."Company"]')
            end
          end
        end
      end
      object frxDBDataset1: TfrxDBDataset
        RangeBegin = rbCurrent
        RangeEnd = reCurrent
        UserName = 'frxDBDataset1'
        CloseDataSource = False
        DataSet = Table1
        Left = 82
        Top = 88
      end
    end
    
  • отредактировано 06:33
    может проблема в том что у меня в DBGrid отображаются несколько таблиц ?
  • gpigpi
    отредактировано 06:33
    Это как? Если отображается результат запроса, то разницы быть не должно
  • отредактировано 06:33
    в DBGrid у меня отображ-ся запрос.
    но всеравно не работает!
  • gpigpi
    отредактировано 06:33
    Проверил на запросе с JOIN. Тоже работает. Тестовый проект сможете сделать на основе DBDEMOS?

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

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