delphi 10.3 FastReport 多设备跨平台 打印之解决方法

以下能WINDOWS10 +DELPHI 10.3 FastReport6.0上顺利通过

基础知识点:需掌握   https://blog.csdn.net/qq_25439957/article/details/87110559 

FastReport6.2对Multi-Device Application应用的支持不够友好,如下图;在palette    FastReport6.0才出现几个制件。非Multi-Device Application应用时是一大堆;

非Multi-Device Application应用时是一大堆;如下图

所以在 Multi-Device Application应用时,需要一些技巧;

1、依照  https://blog.csdn.net/qq_25439957/article/details/87110559   制作好 salse.fr3文件;

2、制作如下图

直接代码如下:

object Form2: TForm2
  Left = 0
  Top = 0
  Caption = 'Form2'
  ClientHeight = 371
  ClientWidth = 509
  FormFactor.Width = 320
  FormFactor.Height = 480
  FormFactor.Devices = [Desktop]
  DesignerMasterStyle = 0
  object Button1: TButton
    Position.X = 288.000000000000000000
    Position.Y = 136.000000000000000000
    TabOrder = 2
    Text = #39044#35272
    OnClick = Button1Click
  end
  object SqlserversalesdbConnection: TFDConnection
    Params.Strings = (
      'ConnectionDef=sql server salesdb')
    Connected = True
    LoginPrompt = False
    Left = 135
    Top = 67
  end
  object SalesTable: TFDQuery
    Active = True
    Connection = SqlserversalesdbConnection
    SQL.Strings = (
      'SELECT top 100* FROM SalesDB.dbo.Sales')
    Left = 135
    Top = 131
  end
  object FDGUIxWaitCursor1: TFDGUIxWaitCursor
    Provider = 'FMX'
    Left = 144
    Top = 208
  end
end

 

unit Unit2;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,frxClass,
  frxDBSet,
FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Error,
  FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def, FireDAC.Stan.Pool,
  FireDAC.Stan.Async, FireDAC.Phys, FireDAC.Phys.MSSQL, FireDAC.Phys.MSSQLDef,
  FireDAC.FMXUI.Wait, FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf,
  FireDAC.DApt, FMX.Controls.Presentation, FMX.StdCtrls, Data.DB,
  FireDAC.Comp.DataSet, FireDAC.Comp.Client, FireDAC.Comp.UI;

type
  TForm2 = class(TForm)
    SqlserversalesdbConnection: TFDConnection;
    SalesTable: TFDQuery;
    Button1: TButton;
    FDGUIxWaitCursor1: TFDGUIxWaitCursor;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.fmx}

procedure TForm2.Button1Click(Sender: TObject);
var
frxReport1: TfrxReport;
frxDBDataset1: TfrxDBDataset;
begin
    frxDBDataset1:=TfrxDBDataset.Create(self) ;
    frxDBDataset1.UserName:='frxDBDataset1';
    frxDBDataset1.DataSet:=SalesTable;

    frxReport1:=TfrxReport.Create(self);
    frxReport1.DataSet:=frxDBDataset1;
    frxReport1.LoadFromFile('C:\oz\test.fr3') ;
    frxReport1.showReport;
end;

end.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值