home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 25: Programming / pc_actual_25.iso / Delphi / Duck Report / _SETUP.1 / Test.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1998-11-24  |  5.9 KB  |  274 lines

  1. Unit Test;
  2. {$I DRLib.inc}
  3.  
  4. interface
  5.  
  6. uses
  7.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  8.   DBTables, StdCtrls, ExtCtrls, DREng, DRBase;
  9. Const
  10.     TEXT_RETURN        = Char(#13) + Char(#10);
  11. type
  12.   TFormMain = class(TForm)
  13.     Image2: TImage;
  14.     MemoShow: TMemo;
  15.     RGType: TRadioGroup;
  16.     BPrint: TButton;
  17.     BPreview: TButton;
  18.     DReport: TDuckReport;
  19.     procedure FormCreate(Sender: TObject);
  20.     procedure BPrintClick(Sender: TObject);
  21.     procedure BPreviewClick(Sender: TObject);
  22.   private
  23.         Procedure    ShowErrorAlias;
  24.      Procedure    WMCustom (Var Message: TMessage); Message WM_USER + 100;
  25.      Procedure    Bioleft (bPrint: Boolean);
  26.      Procedure    Customer (bPrint: Boolean);
  27.      Procedure    Envelope (bPrint: Boolean);
  28.      Procedure    LabelForm (bPrint: Boolean);
  29.      Procedure    SalesReport (bPrint: Boolean);
  30.      Procedure    OrderForm (bPrint: Boolean);
  31.         Procedure    SummaryShipVIA (bPrint: Boolean);
  32.      Procedure    SummaryPayment (bPrint: Boolean);
  33.   public
  34.   end;
  35.  
  36. var
  37.   FormMain: TFormMain;
  38.  
  39. implementation
  40.  
  41. uses FOrder, FYear;
  42.  
  43. {$R *.DFM}
  44. Procedure TFormMain.FormCreate(Sender: TObject);
  45. Var
  46.     St:            String;
  47.   StAlias:        String;
  48.   Database:    TDatabase;
  49.     List:            TStringList;
  50.   iPos:            Integer;
  51. Begin
  52.     St    := 'Duck Report Version ' + Display_VERSION;
  53.     {$IFDEF DRVERSION_FREE}
  54.         St    := St + ' (Freeware)';
  55.     {$ELSE}
  56.         {$IFDEF DRVERSION_REGISTER}
  57.          St    := St + ' (Register)';
  58.       {$ELSE}    { DRVERSION_FULL }
  59.      St    := St + ' (License)';
  60.       {$ENDIF}
  61.   {$ENDIF}
  62.   St    := St + ' Copyright (c) 1998';
  63.     MemoShow.Lines.Insert (0, St);
  64.  
  65.  
  66.     StAlias    := 'DRDEMOS';
  67.     St    := Application.ExeName;
  68.     St    := ExtractFileDir (St);
  69.     St    := UpperCase (St);
  70.     DReport.Directory    := St;
  71.   List        := TStringList.Create;
  72.   Session.GetAliasNames (List);
  73.   iPos    := List.IndexOf (StAlias);
  74.     if iPos <= 0 Then
  75.     Begin
  76.       iPos    := Pos ('\DEMOS\DEMO1', St);
  77.       if iPos <= 0 Then
  78.      Begin
  79.          ShowErrorAlias;
  80.      End;
  81.      Delete (St, iPos, Length (St) - iPos + 1);
  82.      St        := St + '\DATA';
  83.         List.Clear;
  84.      List.Add ('PATH =' + St);
  85.      List.Add ('DEFAULT DRIVER =PARADOX');
  86.      Try
  87.          Session.AddAlias (StAlias, 'PARADOX', List);
  88.      Finally
  89.         Session.SaveConfigFile;
  90.      End;
  91.   End;
  92.   List.Free;
  93. End;
  94. Procedure TFormMain.ShowErrorAlias;
  95. Begin
  96.     MessageBeep (0);
  97.     MessageDlg ('Please Apppend BDE Alias DRDEMOS.' + TEXT_RETURN +
  98.                      'And Setup Path to <Duck Report Dir.>\Data',
  99.                  mtError, [mbOK],0);
  100.     PostMessage (Self.Handle, WM_USER + 100, 0, 0);
  101. End;
  102. Procedure TFormMain.WMCustom (Var Message: TMessage);
  103. Begin
  104.     Close;
  105. End;
  106. Procedure TFormMain.BPrintClick(Sender: TObject);
  107. Begin
  108.     Case RGType.ItemIndex of
  109.         0:    Bioleft (TRUE);
  110.         1:    Customer (TRUE);
  111.         2:    Envelope (TRUE);
  112.         3:    LabelForm (TRUE);
  113.         4:    SalesReport (TRUE);
  114.         5:    OrderForm (TRUE);
  115.      6:    SummaryShipVIA (TRUE);
  116.      7:    SummaryPayment (TRUE);
  117.     End;
  118. End;
  119. Procedure TFormMain.BPreviewClick(Sender: TObject);
  120. Begin
  121.     Case RGType.ItemIndex of
  122.         0:    Bioleft (FALSE);
  123.         1:    Customer (FALSE);
  124.         2:    Envelope (FALSE);
  125.         3:    LabelForm (FALSE);
  126.         4:    SalesReport (FALSE);
  127.         5:    OrderForm (FALSE);
  128.      6:    SummaryShipVIA (FALSE);
  129.      7:    SummaryPayment (FALSE);
  130.     End;
  131. End;
  132. Procedure TFormMain.Bioleft (bPrint: Boolean);
  133. Begin
  134.     DReport.Filter        := '';
  135.     DReport.FileName    := 'BioLife.DRP';
  136.     DReport.OpenFile;
  137.     DReport.OpenDB;
  138.     if bPrint Then
  139.       DReport.Print
  140.     Else
  141.         DReport.Preview;
  142. End;
  143. Procedure TFormMain.Customer (bPrint: Boolean);
  144. Begin
  145.     DReport.Filter        := '';
  146.     DReport.FileName    := 'Customer.DRP';
  147.     DReport.OpenFile;
  148.     DReport.OpenDB;
  149.     if bPrint Then
  150.       DReport.Print
  151.     Else
  152.         DReport.Preview;
  153. End;
  154. Procedure TFormMain.Envelope (bPrint: Boolean);
  155. Begin
  156.     DReport.Filter        := '';
  157.     DReport.FileName    := 'Envelope.DRP';
  158.     DReport.OpenFile;
  159.     DReport.OpenDB;
  160.     if bPrint Then
  161.       DReport.Print
  162.     Else
  163.         DReport.Preview;
  164. End;
  165. Procedure TFormMain.LabelForm (bPrint: Boolean);
  166. Begin
  167.     DReport.Filter        := '';
  168.     DReport.FileName    := 'Label.DRP';
  169.     DReport.OpenFile;
  170.     DReport.OpenDB;
  171.     if bPrint Then
  172.       DReport.Print
  173.     Else
  174.         DReport.Preview;
  175. End;
  176. Procedure TFormMain.SalesReport (bPrint: Boolean);
  177. Begin
  178.     DReport.Filter        := '';
  179.     DReport.FileName    := 'Sales.DRP';
  180.     DReport.OpenFile;
  181.     DReport.OpenDB;
  182.     if bPrint Then
  183.       DReport.Print
  184.     Else
  185.         DReport.Preview;
  186. End;
  187. Procedure TFormMain.OrderForm (bPrint: Boolean);
  188. Var
  189.     dOrder:    Double;
  190. Begin
  191.     dOrder        := 0;
  192.     FormOrderNo    := TFormOrderNo.Create (Self);
  193.   FormOrderNo.ShowModal;
  194.   if FormOrderNo.ModalResult = mrOK Then
  195.   Begin
  196.       dOrder    := FormOrderNo.dOrder; 
  197.   End;
  198.   FormOrderNo.Free;
  199.  
  200.   if dOrder = 0 Then Exit;
  201.  
  202.     DReport.Filter        := '';
  203.     DReport.FileName    := 'Order.DRP';
  204.     DReport.OpenFile;
  205.   DReport.Variables.ByName['OrderNo'].AsDouble    := dOrder;
  206.     DReport.OpenDB;
  207.     if bPrint Then
  208.       DReport.Print
  209.     Else
  210.         DReport.Preview;
  211. End;
  212. Procedure TFormMain.SummaryShipVIA (bPrint: Boolean);
  213. Begin
  214.     DReport.Filter        := '';
  215.     DReport.FileName    := 'ShipVIA.drp';
  216.     DReport.OpenFile;
  217.     DReport.OpenDB;
  218.     if bPrint Then
  219.       DReport.Print
  220.     Else
  221.         DReport.Preview;
  222. End;
  223. Procedure TFormMain.SummaryPayment (bPrint: Boolean);
  224. Var
  225.     iYear:        Integer;
  226. Begin
  227.     iYear            := 0;
  228.     FormYear        := TFormYear.Create (Self);
  229.   FormYear.ShowModal;
  230.   if FormYear.ModalResult = mrOK Then
  231.       iYear    := FormYear.iYear;
  232.   FormYear.Free;
  233.     if iYear = 0 Then Exit;
  234.     DReport.Filter        := '';
  235.     DReport.FileName    := 'Payment.DRP';
  236.     DReport.OpenFile;
  237.     DReport.Variables.ByName['StartDate'].AsDateTime    := EncodeDate (iYear, 01, 01);
  238.   DReport.Variables.ByName['EndDate'].AsDateTime    := EncodeDate (iYear, 12, 31);
  239.     DReport.OpenDB;
  240.     if bPrint Then
  241.       DReport.Print
  242.     Else
  243.         DReport.Preview;
  244. End;
  245. End.
  246.  
  247.  
  248. Customer.drp
  249. Order.drp
  250.  
  251. invoice.drp
  252.  
  253. Label.drp
  254. Envelope.drp
  255.  
  256. BioLife.drp
  257. Barcode.drp
  258.  
  259. RichBioLife.drp
  260.  
  261. Lookup.drp
  262.  
  263. SummaryPayment.drp
  264. SummaryShipVIA.drp
  265. FormulaShipVIA.drp
  266. FormulaPayment.drp
  267.  
  268.  
  269. ChartYear.drp
  270. ChartSummary.drp
  271. ChartShipVIA.drp
  272. ChartPayment.drp
  273. ChartMonth.drp
  274.