home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 February / Chip_2003-02_cd1.bin / zkuste / delphi / kompon / d34567 / KADAO77.ZIP / QueryDefDialogUnit.pas < prev    next >
Pascal/Delphi Source File  |  2001-04-02  |  3KB  |  98 lines

  1. unit QueryDefDialogUnit;
  2. //******************************************************************************
  3. //                    Delphi Dao Project Version 1.6
  4. //                 Copyright (c) 2000 by Kiril Antonov
  5. //******************************************************************************
  6.  
  7. interface
  8.  
  9. uses
  10.   SysUtils, Classes, Controls, Forms, Dialogs, StdCtrls, Grids;
  11.  
  12. type
  13.   TQueryDefDialog = class(TForm)                                   
  14.     StringGrid1: TStringGrid;
  15.     Button1: TButton;
  16.     Button2: TButton;
  17.     procedure Button2Click(Sender: TObject);
  18.     procedure Button1Click(Sender: TObject);
  19.     procedure StringGrid1Click(Sender: TObject);
  20.   private
  21.     { Private declarations }
  22.   public
  23.     { Public declarations }
  24.     Function Execute(ParmNames,ParamDaoTypes,ParamBDETypes:TStrings;Var ParmValues:TStrings):Boolean;
  25.   end;
  26.  
  27. var
  28.   QueryDefDialog : TQueryDefDialog;
  29.   ParmValuesTemp :TStrings;
  30.  
  31. implementation
  32. {$R *.DFM}
  33. Var
  34.  RC:Integer;
  35.  
  36. procedure TQueryDefDialog.Button2Click(Sender: TObject);
  37. begin
  38.   ModalResult := mrCancel;
  39. end;
  40.  
  41. procedure TQueryDefDialog.Button1Click(Sender: TObject);
  42. Var
  43.  X:Integer;
  44. begin
  45.   ParmValuesTemp.Clear;
  46.   For X:=1 to RC do ParmValuesTemp.Add(StringGrid1.Cells[4,X]);
  47.   ModalResult := mrOK;
  48. end;
  49.  
  50. Function TQueryDefDialog.Execute(ParmNames,ParamDaoTypes,ParamBDETypes:TStrings;Var ParmValues:TStrings):Boolean;
  51. Var
  52.   X:Integer;
  53. Begin
  54.   Result:=False;
  55.   StringGrid1.RowHeights[0]:=36;
  56.   StringGrid1.Cols[0].Add(' No:');
  57.   StringGrid1.Cols[1].Add(' Parameter name');
  58.   StringGrid1.Cols[2].Add(' Parameter DAO type');
  59.   StringGrid1.Cols[3].Add(' Parameter BDE type');
  60.   StringGrid1.Cols[4].Add(' Parameter Value');
  61.  
  62.   For X:=0 to ParmNames.Count-1 do
  63.       Begin
  64.         ParmNames.Strings[X]     := ' '+ParmNames.Strings[X];
  65.         ParamDaoTypes.Strings[X] := ' '+ParamDaoTypes.Strings[X];
  66.         ParamBDETypes.Strings[X] := ' '+ParamBDETypes.Strings[X];
  67.       End;
  68.  
  69.   StringGrid1.Cols[1].AddStrings(ParmNames);
  70.   StringGrid1.Cols[2].AddStrings(ParamDaoTypes);
  71.   StringGrid1.Cols[3].AddStrings(ParamBDETypes);
  72.   StringGrid1.Cols[4].AddStrings(ParmValues);
  73.  
  74.   RC:=ParmNames.Count;
  75.  
  76.   For X:=1 to ParmNames.Count do  StringGrid1.Cols[0].Add(' '+InTToStr(X));
  77.   ParmValuesTemp := TStringList.Create;
  78.   ParmValuesTemp.Clear;
  79.   if ShowModal=mrOK Then
  80.      Begin
  81.        ParmValues.Clear;
  82.        For X:=0 to ParmValuesTemp.Count-1 do
  83.            Begin
  84.              if ParmValuesTemp.Strings[X]='' Then ParmValuesTemp.Strings[X]:='NULL';
  85.              ParmValues.Add(ParmValuesTemp.Strings[X]);
  86.            End;
  87.        Result:=True;
  88.      End;
  89.   ParmValuesTemp.Free;
  90. End;
  91.  
  92. procedure TQueryDefDialog.StringGrid1Click(Sender: TObject);
  93. begin
  94.   if StringGrid1.Row > RC Then StringGrid1.Row:=RC;
  95. end;
  96.  
  97. end.
  98.