LazReport, Editor sample, remember last exported report/export filter + repeat export button

git-svn-id: trunk@40989 -
This commit is contained in:
jesus 2013-05-02 02:22:15 +00:00
parent 8c3cc53457
commit 82d0f181c3
15 changed files with 247 additions and 97 deletions

View File

@ -1,22 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<CONFIG>
<LazReport>
<Version Value="25"/>
<Version Value="26"/>
<Title Value=""/>
<Subject Value=""/>
<KeyWords Value=""/>
<Comments Value=""/>
<ReportCreateDate Value="1899-12-30 00:00:00"/>
<ReportLastChange Value="2013-03-29 12:05:28"/>
<ReportLastChange Value="2013-04-26 02:47:54"/>
<ReportVersionBuild Value=""/>
<ReportVersionMajor Value=""/>
<ReportVersionMinor Value=""/>
<ReportVersionRelease Value=""/>
<ReportAutor Value=""/>
<Script Value=""/>
<Pages>
<PrintToDefault Value="False"/>
<DoublePass Value="False"/>
<SelectedPrinter Value="PDF"/>
<SelectedPrinter Value="HP LaserJet 1200 Series PCL"/>
<PageCount Value="1"/>
<Page1>
<Name Value="Page1"/>
@ -35,7 +36,7 @@
<Orientation Value="poPortrait"/>
<UseMargins Value="True"/>
<PrintToPrevPage Value="False"/>
<ColCount Value="0"/>
<ColCount Value="1"/>
<ColGap Value="0"/>
<LayoutOrder Value="loColumns"/>
<ObjectCount Value="21"/>
@ -62,9 +63,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Top Left&#xA;"/>
<Memo Value="Top Left&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -106,9 +109,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Top Center&#xA;"/>
<Memo Value="Top Center&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -150,9 +155,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Top Right&#xA;"/>
<Memo Value="Top Right&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -194,9 +201,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Vertical Right&#xA;"/>
<Memo Value="Vertical Right&#xD;&#xA;Linea 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -238,9 +247,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Vertical Center&#xA;"/>
<Memo Value="Vertical Center&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -282,9 +293,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Vertical Left&#xA;"/>
<Memo Value="Vertical Left&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -326,9 +339,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Bottom Right&#xA;"/>
<Memo Value="Bottom Right&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -370,9 +385,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Bottom Center&#xA;"/>
<Memo Value="Bottom Center&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -414,9 +431,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Bottom Left&#xA;"/>
<Memo Value="Bottom Left&#xD;&#xA;Line 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -458,9 +477,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Canvas: [Canvas]&#xA;"/>
<Memo Value="Canvas: [Canvas]&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -502,9 +523,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Top Center&#xA;"/>
<Memo Value="Top Center&#xD;&#xA;Linea 2&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -546,9 +569,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="γεια σας κόσμο&#xA;"/>
<Memo Value="γεια σας κόσμο&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -590,9 +615,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="مرحبا العالم&#xA;"/>
<Memo Value="مرحبا العالم&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -634,9 +661,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Griego&#xA;"/>
<Memo Value="Griego&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -678,9 +707,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="Árabe&#xA;"/>
<Memo Value="Árabe&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -722,9 +753,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="γεια σας κόσμο&#xA;"/>
<Memo Value="γεια σας κόσμο&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -766,9 +799,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="γεια σας κόσμο&#xA;"/>
<Memo Value="γεια σας κόσμο&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -810,9 +845,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="مرحبا العالم&#xA;"/>
<Memo Value="مرحبا العالم&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -854,9 +891,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="مرحبا العالم&#xA;"/>
<Memo Value="مرحبا العالم&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -898,9 +937,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="中华人民共和国&#xA;"/>
<Memo Value="中华人民共和国&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -942,9 +983,11 @@
<Data>
<Format Value="556"/>
<FormatStr Value=""/>
<Memo Value="中华人民共和国&#xA;"/>
<Memo Value="中华人民共和国&#xD;&#xA;"/>
<Script Value=""/>
</Data>
<Tag Value=""/>
<FURLInfo Value=""/>
<Font>
<Name Value="Arial"/>
<Size Value="10"/>
@ -981,7 +1024,7 @@
<Item Value="Fecha"/>
</Objects2>
</FVal>
<ParentVars Value="Jujibo&#xA; Canvas&#xA; Fecha&#xA;"/>
<ParentVars Value="Jujibo&#xD;&#xA; Canvas&#xD;&#xA; Fecha&#xD;&#xA;"/>
</Pages>
</LazReport>
</CONFIG>

View File

@ -54,32 +54,35 @@
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local>
</RunParams>
<RequiredPackages Count="7">
<RequiredPackages Count="8">
<Item1>
<PackageName Value="lr_extexp"/>
<PackageName Value="lrcairoexport"/>
</Item1>
<Item2>
<PackageName Value="lazreport"/>
<MinVersion Minor="9" Release="6" Valid="True"/>
<PackageName Value="lr_extexp"/>
</Item2>
<Item3>
<PackageName Value="lazreportpdfexport"/>
<MinVersion Minor="5" Valid="True"/>
<PackageName Value="lazreport"/>
<MinVersion Minor="9" Release="6" Valid="True"/>
</Item3>
<Item4>
<PackageName Value="Printer4Lazarus"/>
<PackageName Value="lazreportpdfexport"/>
<MinVersion Minor="5" Valid="True"/>
</Item4>
<Item5>
<PackageName Value="LCL"/>
<PackageName Value="Printer4Lazarus"/>
</Item5>
<Item6>
<PackageName Value="FCL"/>
<MinVersion Major="1" Valid="True"/>
<PackageName Value="LCL"/>
</Item6>
<Item7>
<PackageName Value="FCL"/>
<MinVersion Major="1" Valid="True"/>
</Item7>
<Item8>
<PackageName Value="DBFLaz"/>
<MinVersion Minor="1" Release="1" Valid="True"/>
</Item7>
</Item8>
</RequiredPackages>
<Units Count="3">
<Unit0>

View File

@ -7,7 +7,7 @@ uses
Forms,
maincalleditor,
lazreportpdfexport,
lazreport;
lazreport, lrcairoexport;
{$R calleditorwithpkg.res}

View File

@ -1,7 +1,3 @@
Arabic translation of Free Pascal Lazarus Project.
Copyright (C) 2012 Lazarus Project
This file is distributed under the same license as the Lazarus package.
Khaled Shagrouni <shagrouni@gmail.com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: Free Pascal Lazarus Project.\n"
@ -21,7 +17,6 @@ msgstr ""
msgid "Active report: %s"
msgstr "التقرير النشط %s"
مركّب/ تركيب
#: maincalleditor.cerappcaption
msgctxt "maincalleditor.cerappcaption"
msgid "LazReport Test Suite"
@ -191,6 +186,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "مصغرات"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr "اختبار رئيسي-تفصيل"

View File

@ -185,6 +185,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Vorschaubilder"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr ""

View File

@ -182,6 +182,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Imágenes"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr ""

View File

@ -186,6 +186,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Vignettes"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr ""

View File

@ -183,6 +183,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Miniature"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr "Test master-detail"

View File

@ -1,4 +1,3 @@
Valdas Jankūnas <zmuogs@gmail.com>, 2009, 2010, 2012.
msgid ""
msgstr ""
"Project-Id-Version: calleditorwithpkg\n"
@ -186,6 +185,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Miniatiūros"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr "Testas pagrindinis-detalės"

View File

@ -177,6 +177,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr ""
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr ""

View File

@ -182,6 +182,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Miniaturas"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr "Teste Mestre-Detalhe"

View File

@ -182,6 +182,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Эскизы"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr "Режим 'главный-подчинённый'"

View File

@ -182,6 +182,10 @@ msgctxt "TFRMMAIN.ACCTHUMBNAILS.CAPTION"
msgid "Thumbnails"
msgstr "Ескізи"
#: tfrmmain.btnexportlast.caption
msgid "Repeat Export"
msgstr ""
#: tfrmmain.btnmasterdetail.caption
msgid "Master-Detail Test"
msgstr "Тест 'Основний-Детальний'"

View File

@ -5,10 +5,11 @@ object frmMain: TfrmMain
Width = 828
ActiveControl = Panel1
Caption = 'LazReport Test Suite'
ClientHeight = 520
ClientHeight = 525
ClientWidth = 828
Font.Name = 'Sans'
Menu = MainMenu1
OnCloseQuery = FormCloseQuery
OnCreate = frmMainCreate
ShowHint = True
LCLVersion = '1.1'
@ -16,8 +17,8 @@ object frmMain: TfrmMain
AnchorSideLeft.Control = Owner
AnchorSideBottom.Control = grid
Left = 6
Height = 17
Top = 100
Height = 18
Top = 98
Width = 36
Anchors = [akLeft, akBottom]
BorderSpacing.Around = 6
@ -28,10 +29,10 @@ object frmMain: TfrmMain
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = grid
Left = 751
Height = 17
Top = 100
Width = 71
Left = 744
Height = 18
Top = 98
Width = 78
Anchors = [akRight, akBottom]
BorderSpacing.Around = 6
Caption = 'Expression'
@ -39,8 +40,8 @@ object frmMain: TfrmMain
end
object sbar: TStatusBar
Left = 0
Height = 19
Top = 501
Height = 23
Top = 502
Width = 828
Panels = <
item
@ -56,12 +57,12 @@ object frmMain: TfrmMain
AnchorSideRight.Control = lblExpr
AnchorSideBottom.Control = grid
Left = 48
Height = 27
Height = 26
Top = 90
Width = 697
Width = 690
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
ItemHeight = 0
ItemHeight = 18
OnSelect = comboIndexSelect
TabOrder = 2
end
@ -72,8 +73,8 @@ object frmMain: TfrmMain
AnchorSideRight.Control = grid
AnchorSideBottom.Control = sbar
Left = 0
Height = 378
Top = 123
Height = 380
Top = 122
Width = 204
Anchors = [akTop, akLeft, akBottom]
Color = clMoneyGreen
@ -91,8 +92,8 @@ object frmMain: TfrmMain
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = sbar
Left = 0
Height = 378
Top = 123
Height = 380
Top = 122
Width = 828
Anchors = [akTop, akLeft, akRight, akBottom]
Color = clWhite
@ -115,7 +116,7 @@ object frmMain: TfrmMain
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 5
ChildSizing.ControlsPerLine = 6
ClientHeight = 84
ClientWidth = 828
TabOrder = 4
@ -123,57 +124,57 @@ object frmMain: TfrmMain
Left = 6
Height = 33
Top = 6
Width = 173
Width = 116
Action = accNewReport
AutoSize = True
BorderSpacing.Around = 6
TabOrder = 0
end
object btnOpenReport: TButton
Left = 185
Left = 128
Height = 33
Top = 6
Width = 147
Width = 123
Action = accOpenReport
AutoSize = True
BorderSpacing.Around = 6
TabOrder = 2
end
object btnEditReport: TButton
Left = 338
Left = 257
Height = 33
Top = 6
Width = 138
Width = 113
Action = accEditReport
AutoSize = True
BorderSpacing.Around = 6
TabOrder = 3
end
object btnPreviewReport: TButton
Left = 482
Left = 376
Height = 33
Top = 6
Width = 165
Width = 154
Action = accPreviewReport
AutoSize = True
BorderSpacing.Around = 6
TabOrder = 4
end
object btnPrintReport: TButton
Left = 653
Left = 536
Height = 33
Top = 6
Width = 169
Width = 134
Action = accPrintReport
AutoSize = True
BorderSpacing.Around = 6
TabOrder = 5
end
object btnCustomPreview: TButton
Left = 6
Left = 676
Height = 33
Top = 45
Width = 173
Top = 6
Width = 146
Action = accCustomPreview
AutoSize = True
BorderSpacing.Around = 6
@ -181,10 +182,10 @@ object frmMain: TfrmMain
end
object btnPrintGrid: TButton
AnchorSideRight.Side = asrBottom
Left = 185
Left = 6
Height = 33
Top = 45
Width = 147
Width = 116
Action = accPrintGrid
AutoSize = True
BorderSpacing.Around = 6
@ -192,10 +193,10 @@ object frmMain: TfrmMain
end
object btnComposite: TButton
AnchorSideTop.Side = asrBottom
Left = 338
Left = 128
Height = 33
Top = 45
Width = 138
Width = 123
Action = accComposite
AutoSize = True
BorderSpacing.Around = 6
@ -204,29 +205,39 @@ object frmMain: TfrmMain
object btnImageList: TButton
AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom
Left = 482
Left = 257
Height = 33
Top = 45
Width = 165
Width = 113
Action = accThumbnails
AutoSize = True
BorderSpacing.Around = 6
TabOrder = 7
end
object btnMasterDetail: TToggleBox
Left = 653
Left = 376
Height = 33
Top = 45
Width = 169
Width = 154
AutoSize = True
BorderSpacing.Around = 6
Caption = 'Master-Detail Test'
OnClick = btnMasterDetailClick
TabOrder = 9
end
object btnExportLast: TButton
Left = 536
Height = 33
Top = 45
Width = 134
Caption = 'Repeat Export'
OnClick = btnExportLastClick
TabOrder = 10
end
end
object TheReport: TfrReport
Dataset = frDbDetail
DefaultCopies = 0
InitialZoom = pzDefault
Options = [roIgnoreFieldNotFound]
PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbHelp, pbExit]
@ -238,9 +249,6 @@ object frmMain: TfrmMain
OnExportFilterSetup = TheReportExportFilterSetup
left = 40
top = 192
ReportForm = {
19000000
}
end
object Detail: TDbf
IndexDefs = <>
@ -583,15 +591,13 @@ object frmMain: TfrmMain
top = 360
end
object Composite: TfrCompositeReport
DefaultCopies = 0
InitialZoom = pzDefault
Options = []
PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbHelp, pbExit]
DataType = dtDataSet
left = 40
top = 248
ReportForm = {
19000000
}
end
object LookCountries: TDbf
IndexDefs = <>
@ -634,4 +640,8 @@ object frmMain: TfrmMain
left = 420
top = 312
end
object lrCairoExport1: TlrCairoExport
left = 352
top = 128
end
end

View File

@ -27,10 +27,11 @@ interface
uses
Classes, SysUtils, Variants, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
Buttons, StdCtrls, LR_Const, LR_Class, LR_Desgn, Dbf, DB, DBGrids, LR_DBSet,
Buttons, StdCtrls, LR_Const, LR_Class, LR_Desgn, Dbf, DB, DBGrids, LR_DBSet, IniFiles,
LR_PGrid, Menus, ComCtrls, ActnList, Lr_e_txt, Lr_e_htm, LR_E_CSV, LR_DSet,
LR_BarC, LR_RRect, LR_Shape, LR_ChBox, lr_e_pdf, lconvencoding, lr_e_gen,
lr_utils, LCLProc, ExtCtrls, custompreview, LR_Pars, LR_e_htmldiv;
lr_utils, LCLProc, ExtCtrls, custompreview, LR_Pars, LR_e_htmldiv, lr_e_cairo,
LazLogger;
type
@ -63,10 +64,12 @@ type
btnOpenReport: TButton;
btnImageList: TButton;
btnComposite: TButton;
btnExportLast: TButton;
comboIndex: TComboBox;
frDbMaster: TfrDBDataSet;
frHtmlDivExport1: TfrHtmlDivExport;
frTNPDFExport1: TfrTNPDFExport;
lrCairoExport1: TlrCairoExport;
mastergrid: TDBGrid;
Panel1: TPanel;
srcMaster: TDatasource;
@ -134,8 +137,10 @@ type
procedure accPreviewReportExecute(Sender: TObject);
procedure accPrintGridExecute(Sender: TObject);
procedure accPrintReportExecute(Sender: TObject);
procedure btnExportLastClick(Sender: TObject);
procedure btnMasterDetailClick(Sender: TObject);
procedure comboIndexSelect(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: boolean);
procedure gridTitleClick(Column: TColumn);
procedure frmMainCreate(Sender: TObject);
procedure TheReportBeginDoc;
@ -150,11 +155,15 @@ type
FImageListIndex: Integer;
FObjCount: Integer;
FCountryIndex: Integer;
FCurReport: string;
procedure UpdateAppTranslation;
procedure SetIndex(const aIndexName: string);
procedure OpenReport(const aFileName:string);
procedure UpdateActiveReport;
function GetDataPath: string;
procedure MasterDetail;
procedure LoadConfig;
procedure SaveConfig;
public
{ public declarations }
end;
@ -364,6 +373,14 @@ begin
ShowMessage(cerPrepareFailed);
end;
procedure TfrmMain.btnExportLastClick(Sender: TObject);
begin
if TheReport.PrepareReport then
TheReport.ExportTo(nil, '')
else
ShowMessage(cerPrepareFailed);
end;
procedure TfrmMain.btnMasterDetailClick(Sender: TObject);
begin
MasterDetail;
@ -381,6 +398,11 @@ begin
end;
end;
procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: boolean);
begin
SaveConfig;
end;
procedure TfrmMain.gridTitleClick(Column: TColumn);
begin
if CompareText(Column.FieldName,'year')=0 then
@ -404,12 +426,11 @@ var
dataPath: string;
begin
DebugLogger.MaxNestPrefixLen:=100;
UpdateAppTranslation;
dataPath := ExtractFilePath(ParamStr(0));
{$ifdef Darwin}
dataPath := IncludeTrailingPathDelimiter(ExpandFileName(dataPath + '../../..'));
{$endif}
DataPath := GetDataPath;
LookCountries.Close;
LookCountries.FilePath := datapath + 'db/';
@ -429,16 +450,18 @@ begin
Master.Close;
Master.FilePath := datapath + 'db/';
Master.TableName := 'countries.dbf';
LoadConfig;
comboIndex.Clear;
comboIndex.Items.Add(cerNone);
for i:=0 to Detail.Indexes.Count-1 do
comboIndex.Items.Add(Detail.Indexes[i].Name);
FCountryIndex := ComboIndex.Items.IndexOf('BYCOUNTRY');
SetIndex('');
if FileExistsUTF8(datapath + 'salida.lrf') then
OpenReport(datapath + 'salida.lrf');
if FileExistsUTF8(fCurReport) then
OpenReport(fCurReport);
for i:=Low(rptArr) to High(rptArr) do begin
r := TfrReport.Create(self);
@ -521,6 +544,7 @@ end;
procedure TfrmMain.OpenReport(const aFileName: string);
begin
TheReport.LoadFromFile(aFileName);
fCurReport := TheReport.FileName;
UpdateActiveReport;
end;
@ -529,6 +553,14 @@ begin
SBar.Panels[0].Text:= format(cerActiveReport, [TheReport.FileName]);
end;
function TfrmMain.GetDataPath: string;
begin
result := ExtractFilePath(ParamStr(0));
{$ifdef Darwin}
result := IncludeTrailingPathDelimiter(ExpandFileName(dataPath + '../../..'));
{$endif}
end;
procedure TfrmMain.MasterDetail;
begin
if mastergrid.Visible then begin
@ -553,6 +585,34 @@ begin
end;
end;
procedure TfrmMain.LoadConfig;
var
ini: TIniFile;
s: string;
begin
ini := TIniFile.Create(GetDataPath+'config.ini');
s := ini.ReadString('General', 'LastReport', '');
if s<>'' then
fCurreport := s
else
fCurReport := GetDataPath + 'salida.lrf';
TheReport.DefExportFileName := ini.ReadString('General','LastExportFilename','');
TheReport.DefExportFilterClass := ini.ReadString('General','LastExportFilterClass', '');
ini.Free;
end;
procedure TfrmMain.SaveConfig;
var
ini: TIniFile;
s: string;
begin
ini := TIniFile.Create(GetDataPath+'config.ini');
ini.WriteString('General', 'LastReport', fCurReport);
ini.WriteString('General', 'LastExportFilename', theReport.DefExportFileName);
ini.WriteString('General', 'LastExportFilterClass', theReport.DefExportFilterClass);
ini.free;
end;
procedure TranslateResStrings;
var
Lang, FallbackLang: String;