⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 data.~pas

📁 成都研究院全直径测试仪控制软件 delphi开发
💻 ~PAS
字号:
unit data;

interface

uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids,ADODB, DB, StdCtrls, Buttons, Excel2000,
  OleServer, ExcelXP;
type
  Tdatafrm = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    StringGrid1: TStringGrid;
    BitBtn1: TBitBtn;
    ComboBox1: TComboBox;
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Button2: TButton;
    ExcelApplication1: TExcelApplication;
    ExcelWorksheet1: TExcelWorksheet;
    SaveDialog1: TSaveDialog;
    ExcelWorkbook1: TExcelWorkbook;
    procedure FormShow(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
   procedure Init;
  public
    { Public declarations }
  end;

var
  datafrm: Tdatafrm;

implementation
 uses book;
{$R *.dfm}

procedure Tdatafrm.FormShow(Sender: TObject);
begin
  self.Init;
end;
procedure Tdatafrm.Init;
var
  AdoqInit : TADOQuery;
  strsql   : string;
  count    : integer;
  index    : integer;
begin
  AdoqInit := TADOQuery.Create(self);
  AdoqInit.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'\data.mdb;Persist Security Info=False';
  strsql := 'select * from coredata order by 序号';
  AdoqInit.SQL.Clear;
  AdoqInit.SQL.Add(strsql);

  AdoqInit.Open;
 // self.StringGrid1.Cols.Clear;
 // self.StringGrid1.Rows.Clear;
  self.StringGrid1.Cells[0,0] := '序号';
  self.StringGrid1.Cells[1,0] := '井号';
  self.StringGrid1.Cells[2,0] := '岩样号';
  self.StringGrid1.Cells[3,0] := '实验方向';
  self.StringGrid1.Cells[4,0] := '岩样长度';
  self.StringGrid1.Cells[5,0] := '岩样直径';
  self.StringGrid1.Cells[6,0] := '窗子长度';
  self.StringGrid1.Cells[7,0] := '空气温度';
  self.StringGrid1.Cells[8,0] := '粘度';
  self.StringGrid1.Cells[9,0] := '大气压';
  self.StringGrid1.Cells[10,0] := '1/Pu';
  self.StringGrid1.Cells[11,0] := '平均流量';
  self.StringGrid1.Cells[12,0] := '实验时间';
  self.StringGrid1.Cells[13,0] := '渗透率';
  self.StringGrid1.Cells[14,0] := '渗透率平均值';
  self.StringGrid1.Cells[15,0] := '克氏渗透率';
  self.StringGrid1.Cells[16,0] := '相关系数';
  count := AdoqInit.Recordset.RecordCount;
  self.StringGrid1.RowCount := count +1;
  index := 0;
  while not AdoqInit.Eof do
  begin
   index := index + 1;
  self.StringGrid1.Cells[0,index] := AdoqInit.fieldbyname('序号').AsString;
   self.StringGrid1.Cells[1,index] := AdoqInit.fieldbyname('井号').AsString;
   self.StringGrid1.Cells[2,index] := AdoqInit.fieldbyname('岩样号').AsString;
   self.StringGrid1.Cells[3,index] := AdoqInit.fieldbyname('实验方向').AsString;
   self.StringGrid1.Cells[4,index] := AdoqInit.fieldbyname('岩样长度').AsString;
   self.StringGrid1.Cells[5,index] := AdoqInit.fieldbyname('岩样直径').AsString;
   self.StringGrid1.Cells[6,index] := AdoqInit.fieldbyname('窗子长度').AsString;
   self.StringGrid1.Cells[7,index] := AdoqInit.fieldbyname('空气温度').AsString;
   self.StringGrid1.Cells[8,index] := AdoqInit.fieldbyname('粘度').AsString;
   self.StringGrid1.Cells[9,index] := AdoqInit.fieldbyname('大气压').AsString;
   self.StringGrid1.Cells[10,index] := AdoqInit.fieldbyname('1/Pu').AsString;
   self.StringGrid1.Cells[11,index] := AdoqInit.fieldbyname('平均流量').AsString;
   self.StringGrid1.Cells[12,index] := AdoqInit.fieldbyname('实验时间').AsString;
   self.StringGrid1.Cells[13,index] := AdoqInit.fieldbyname('渗透率').AsString;
   self.StringGrid1.Cells[14,index] := AdoqInit.fieldbyname('渗透率平均值').AsString;
   self.StringGrid1.Cells[15,index] := AdoqInit.fieldbyname('克氏渗透率').AsString;
   self.StringGrid1.Cells[16,index] := AdoqInit.fieldbyname('相关系数').AsString;


  AdoqInit.Next;
  end;
  AdoqInit.Close;
  AdoqInit.Free;
  end;
procedure Tdatafrm.Button2Click(Sender: TObject);
var
  AdoqInit : TADOQuery;
  strsql   : string;
begin
  if self.Edit2.Text = '' then
     exit;
  AdoqInit := TADOQuery.Create(self);
  AdoqInit.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'\data.mdb;Persist Security Info=False';
  strsql := 'select * from coredata where 序号 = ';
  strsql := strsql + self.Edit2.Text;
  AdoqInit.SQL.Clear;
  AdoqInit.SQL.Add(strsql);

  try
    AdoqInit.Open;
  except
    exit;
  end;
    AdoqInit.Delete;
  AdoqInit.Close;
  AdoqInit.Free;

end;

procedure Tdatafrm.BitBtn1Click(Sender: TObject);
var
  filename : string;
  Adoq     : TADOQuery;
  strsql   : string;
  index    : integer;
  i        : integer;
begin
 // self.SaveDialog1.Execute;
 // filename := self.SaveDialog1.FileName;
  filename := 'test';
  if filename <> '' then
  begin
    Try
        ExcelApplication1.Connect;   {启动Excel}
        Except
          MessageDlg('Excel may not be installed',mtError, [mbOk], 0);
          Abort;
        End;
        ExcelApplication1.Visible[0]:=True;     {使Excel可见}
        ExcelApplication1.Caption:='Excel Application';
        ExcelApplication1.Workbooks.Add(Null,0); {添加工作簿}
        ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]); {使ExcelWorkbook1对象和工作簿相关联}
        ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _Worksheet); {使ExcelWorksheet1对象和工作簿的第一张表格关联}
        index := 1;
         ExcelWorksheet1.Cells.Item[1,1].value := '序号';
          ExcelWorksheet1.Cells.Item[1,2].value := '井号';
          ExcelWorksheet1.Cells.Item[1,3].value := '岩样号';
          ExcelWorksheet1.Cells.Item[1,4].value := '实验方向';
          ExcelWorksheet1.Cells.Item[1,5].value := '岩样长度';
          ExcelWorksheet1.Cells.Item[1,6].value := '岩样直径';
          ExcelWorksheet1.Cells.Item[1,7].value := '窗子长度';
          ExcelWorksheet1.Cells.Item[1,8].value := '空气温度';
          ExcelWorksheet1.Cells.Item[1,9].value := '粘度';
          ExcelWorksheet1.Cells.Item[1,10].value := '大气压';
          ExcelWorksheet1.Cells.Item[1,11].value := '1/pu';
          ExcelWorksheet1.Cells.Item[1,12].value := '平均流量';
          ExcelWorksheet1.Cells.Item[1,13].value := '实验时间';
          ExcelWorksheet1.Cells.Item[1,14].value := '渗透率';
          ExcelWorksheet1.Cells.Item[1,15].value := '渗透率平均值';
          ExcelWorksheet1.Cells.Item[1,16].value := '克氏渗透率';
          ExcelWorksheet1.Cells.Item[1,17].value := '相关系数';
        for i := 1 to self.StringGrid1.RowCount -1 do
        begin
          index := index + 1;
          ExcelWorksheet1.Cells.Item[index,1].value := self.StringGrid1.Cells[0,index-1];
          ExcelWorksheet1.Cells.Item[index,2].value := self.StringGrid1.Cells[1,index-1];
          ExcelWorksheet1.Cells.Item[index,3].value := self.StringGrid1.Cells[2,index-1];
          ExcelWorksheet1.Cells.Item[index,4].value := self.StringGrid1.Cells[3,index-1];
          ExcelWorksheet1.Cells.Item[index,5].value := self.StringGrid1.Cells[4,index-1];
          ExcelWorksheet1.Cells.Item[index,6].value := self.StringGrid1.Cells[5,index-1];
          ExcelWorksheet1.Cells.Item[index,7].value := self.StringGrid1.Cells[6,index-1];
          ExcelWorksheet1.Cells.Item[index,8].value := self.StringGrid1.Cells[7,index-1];
          ExcelWorksheet1.Cells.Item[index,9].value := self.StringGrid1.Cells[8,index-1];
          ExcelWorksheet1.Cells.Item[index,10].value := self.StringGrid1.Cells[9,index-1];
          ExcelWorksheet1.Cells.Item[index,11].value := self.StringGrid1.Cells[10,index-1];
          ExcelWorksheet1.Cells.Item[index,12].value := self.StringGrid1.Cells[11,index-1];
          ExcelWorksheet1.Cells.Item[index,13].value := strtodate(self.StringGrid1.Cells[12,index-1]);
          ExcelWorksheet1.Cells.Item[index,14].value := self.StringGrid1.Cells[13,index-1];
          ExcelWorksheet1.Cells.Item[index,15].value := self.StringGrid1.Cells[14,index-1];
          ExcelWorksheet1.Cells.Item[index,16].value := self.StringGrid1.Cells[15,index-1];
          ExcelWorksheet1.Cells.Item[index,17].value := self.StringGrid1.Cells[16,index-1];
        end;
       // ExcelApplication1.Save;
        //  ExcelApplication1.Quit;
        //ExcelApplication1.Save(filename);
      //  ExcelWorkbook1.SaveAs(filename,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,0);
      //  ExcelWorkbook1.SaveAs(filename,null,null,null,null,null,null,null,null,null,null,1);
     //   ExcelWorkbook1.SaveAs(filename,'','','','','','','','','','',1);
        ExcelApplication1.Disconnect;
  end;

end;

procedure Tdatafrm.Button1Click(Sender: TObject);
var
  AdoqInit : TADOQuery;
  strsql   : string;
  count    : integer;
  index    : integer;
begin
  if self.Edit1.Text = '' then
     exit;
  AdoqInit := TADOQuery.Create(self);
  AdoqInit.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'\data.mdb;Persist Security Info=False';
  strsql := 'select * from coredata where '+self.ComboBox1.Text+' like ''%'+self.Edit1.text+'%'' order by 序号';
  AdoqInit.SQL.Clear;
  AdoqInit.SQL.Add(strsql);

  try
    AdoqInit.Open;
  except
    exit;
  end;
 // self.StringGrid1.Cols.Clear;
 // self.StringGrid1.Rows.Clear;
  self.StringGrid1.Cells[0,0] := '序号';
  self.StringGrid1.Cells[1,0] := '井号';
  self.StringGrid1.Cells[2,0] := '岩样号';
  self.StringGrid1.Cells[3,0] := '实验方向';
  self.StringGrid1.Cells[4,0] := '岩样长度';
  self.StringGrid1.Cells[5,0] := '岩样直径';
  self.StringGrid1.Cells[6,0] := '窗子长度';
  self.StringGrid1.Cells[7,0] := '空气温度';
  self.StringGrid1.Cells[8,0] := '粘度';
  self.StringGrid1.Cells[9,0] := '大气压';
  self.StringGrid1.Cells[10,0] := '1/Pu';
  self.StringGrid1.Cells[11,0] := '平均流量';
  self.StringGrid1.Cells[12,0] := '实验时间';
  self.StringGrid1.Cells[13,0] := '渗透率';
  self.StringGrid1.Cells[14,0] := '渗透率平均值';
  self.StringGrid1.Cells[15,0] := '克氏渗透率';
  self.StringGrid1.Cells[16,0] := '相关系数';
  count := AdoqInit.Recordset.RecordCount;
  self.StringGrid1.RowCount := count +1;
  index := 0;
  while not AdoqInit.Eof do
  begin
   index := index + 1;
   self.StringGrid1.Cells[0,index] := AdoqInit.fieldbyname('序号').AsString;
   self.StringGrid1.Cells[1,index] := AdoqInit.fieldbyname('井号').AsString;
   self.StringGrid1.Cells[2,index] := AdoqInit.fieldbyname('岩样号').AsString;
   self.StringGrid1.Cells[3,index] := AdoqInit.fieldbyname('实验方向').AsString;
   self.StringGrid1.Cells[4,index] := AdoqInit.fieldbyname('岩样长度').AsString;
   self.StringGrid1.Cells[5,index] := AdoqInit.fieldbyname('岩样直径').AsString;
   self.StringGrid1.Cells[6,index] := AdoqInit.fieldbyname('窗子长度').AsString;
   self.StringGrid1.Cells[7,index] := AdoqInit.fieldbyname('空气温度').AsString;
   self.StringGrid1.Cells[8,index] := AdoqInit.fieldbyname('粘度').AsString;
   self.StringGrid1.Cells[9,index] := AdoqInit.fieldbyname('大气压').AsString;
   self.StringGrid1.Cells[10,index] := AdoqInit.fieldbyname('1/Pu').AsString;
   self.StringGrid1.Cells[11,index] := AdoqInit.fieldbyname('平均流量').AsString;
   self.StringGrid1.Cells[12,index] := AdoqInit.fieldbyname('实验时间').AsString;
   self.StringGrid1.Cells[13,index] := AdoqInit.fieldbyname('渗透率').AsString;
   self.StringGrid1.Cells[14,index] := AdoqInit.fieldbyname('渗透率平均值').AsString;
   self.StringGrid1.Cells[15,index] := AdoqInit.fieldbyname('克氏渗透率').AsString;
   self.StringGrid1.Cells[16,index] := AdoqInit.fieldbyname('相关系数').AsString;
  AdoqInit.Next;
  end;
  AdoqInit.Close;
  AdoqInit.Free;

end;



end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -