home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 23 / IOPROG_23.ISO / SOFT / MEMTABLE.ZIP / Unit1.pas < prev   
Encoding:
Pascal/Delphi Source File  |  1999-02-04  |  2.8 KB  |  116 lines

  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   Db, Grids, DBGrids, MemTable, ExtCtrls, DBCtrls, TeeProcs, TeEngine,
  8.   Chart, StdCtrls, Series, DBChart, kbmMemTable;
  9.  
  10. type
  11.   TForm1 = class(TForm)
  12.     DBChart1: TDBChart;
  13.     Series1: TBarSeries;
  14.     Panel1: TPanel;
  15.     DBGrid1: TDBGrid;
  16.     DBNavigator1: TDBNavigator;
  17.     DataSource1: TDataSource;
  18.     Button1: TButton;
  19.     Button2: TButton;
  20.     Button3: TButton;
  21.     kbmMemTable1: TkbmMemTable;
  22.     kbmMemTable1PERIOD: TIntegerField;
  23.     kbmMemTable1VALUE: TIntegerField;
  24.     kbmMemTable1COLOR: TIntegerField;
  25.     kbmMemTable1CALC: TStringField;
  26.     Memo1: TMemo;
  27.     Button4: TButton;
  28.     Button5: TButton;
  29.     Button6: TButton;
  30.     procedure Button1Click(Sender: TObject);
  31.     procedure Button2Click(Sender: TObject);
  32.     procedure Button3Click(Sender: TObject);
  33.     procedure MemTable1CalcFields(DataSet: TDataSet);
  34.     procedure Button4Click(Sender: TObject);
  35.     procedure Button5Click(Sender: TObject);
  36.     procedure Button6Click(Sender: TObject);
  37.   private
  38.     { Private declarations }
  39.   public
  40.     { Public declarations }
  41.   end;
  42.  
  43. var
  44.   Form1: TForm1;
  45.  
  46. implementation
  47.  
  48. {$R *.DFM}
  49.  
  50. procedure TForm1.Button1Click(Sender: TObject);
  51. var
  52.    i:integer;
  53. begin
  54.      with kbmMemTable1 do
  55.      begin
  56.           Close;
  57.           Open;
  58.           for i:=1 to 100 do
  59.           begin
  60.                Append;
  61.                FieldByName('PERIOD').asinteger:=i;
  62.                FieldByName('VALUE').asinteger:=i*2;
  63.                FieldByName('COLOR').asinteger:=i*4;
  64.                Post;
  65.           end;
  66.      end;
  67. end;
  68.  
  69.  
  70. procedure TForm1.Button2Click(Sender: TObject);
  71. begin
  72.      kbmMemTable1.SaveToFile('c:\test.csv',[mtfSaveData,mtfSaveCalculated]);
  73. end;
  74.  
  75. procedure TForm1.Button3Click(Sender: TObject);
  76. begin
  77.      kbmMemTable1.Open;
  78.      kbmMemTable1.EmptyTable;
  79.      kbmMemTable1.LoadFromFile('c:\test.csv');
  80. end;
  81.  
  82. procedure TForm1.MemTable1CalcFields(DataSet: TDataSet);
  83. begin
  84.      if kbmMemTable1.Fields[0].IsNull then
  85.         kbmMemTable1.Fields[3].AsString:='NULL'
  86.      else
  87.          kbmMemTable1.Fields[3].AsString:='';
  88. end;
  89.  
  90. procedure TForm1.Button4Click(Sender: TObject);
  91. begin
  92.      Memo1.Lines.Text:=kbmMemTable1.CommaText;
  93. end;
  94.  
  95. procedure TForm1.Button5Click(Sender: TObject);
  96. begin
  97.      kbmMemTable1.CommaText:=Memo1.Lines.Text;
  98. end;
  99.  
  100. // Dynamically define a set of fields.
  101. procedure TForm1.Button6Click(Sender: TObject);
  102. begin
  103.      with kbmMemTable1,kbmMemTable1.FieldDefs do
  104.      begin
  105.           Close;
  106.           Clear;
  107.           Add('Period', ftInteger, 0, false);
  108.           Add('VALUE', ftInteger, 0, false);
  109.           Add('Color', ftInteger, 0, false);
  110.           Add('CALC', ftString, 20, false);
  111.           CreateTable;
  112.      end;
  113. end;
  114.  
  115. end.
  116.