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

📄 unit2.~pas

📁 小区抄表系统
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, DBCtrls, Grids, DBGrids, DB, ADODB,unit3;

type
  TForm2 = class(TForm)
    GroupBox1: TGroupBox;
    ComboBox1: TComboBox;
    GroupBox2: TGroupBox;
    ComboBox2: TComboBox;
    Button1: TButton;
    GroupBox3: TGroupBox;
    DBGrid1: TDBGrid;
    DBNavigator1: TDBNavigator;
    Button2: TButton;
    GroupBox4: TGroupBox;
    DBGrid2: TDBGrid;
    DBNavigator2: TDBNavigator;
    RadioGroup1: TRadioGroup;
    Edit1: TEdit;
    StaticText1: TStaticText;
    StaticText2: TStaticText;
    Edit2: TEdit;
    ADOQuery1: TADOQuery;
    DataSource1: TDataSource;
    Edit3: TEdit;
    Label2: TLabel;
    DataSource2: TDataSource;
    ADOQuery2: TADOQuery;
    Label1: TLabel;
    Edit4: TEdit;
    Label3: TLabel;
    Edit5: TEdit;
    Label4: TLabel;
    Edit6: TEdit;
    Label5: TLabel;
    Edit7: TEdit;
    Label6: TLabel;
    Edit8: TEdit;
    Label7: TLabel;
    Edit9: TEdit;
    Label8: TLabel;
    Edit10: TEdit;
    Button3: TButton;
    ADOCommand1: TADOCommand;
    Button4: TButton;
    procedure Button1Click(Sender: TObject);
    procedure DBGrid2CellClick(Column: TColumn);
    procedure Button2Click(Sender: TObject);
   // procedure Button4Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
var
   num,num1,sj1,sj2:string;
begin
  num:=edit3.Text;
  sj1:=edit1.text;
  sj2:=edit2.Text;
  if combobox1.Text='编号' then
  begin   //1
    if combobox2.text='电表' then
        begin  //2
          if radiogroup1.ItemIndex=1 then
          begin //*
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select max(示数) as 当前读数 from 数据信息 where (编号= '''+num+''')and (表名=''电表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end   //*
          else if radiogroup1.ItemIndex=0 then
          begin //*
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select (max(示数)-min(示数)) as 历史示数 from 数据信息 where (编号= '''+num+''')and (表名=''电表'')and (记录日期 between :a and :b)';
          adoquery1.Parameters.ParamByName('a').Value:=strtodate(trim(edit1.Text));
          adoquery1.Parameters.ParamByName('b').Value:=strtodate(trim(edit2.Text));
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end  //*
         else if radiogroup1.ItemIndex=2 then
          begin //*
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select * from 数据信息 where (编号= '''+num+''')and (表名=''电表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end   //*
        end  // 2
     else if combobox2.Text='水表'then
        begin //5
          if radiogroup1.ItemIndex=1then
          begin //
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select max(示数) as 当前读数 from 数据信息 where (编号= '''+num+''')and (表名=''水表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=0then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select (max(示数)-min(示数)) as 历史示数 from 数据信息 where (编号= '''+num+''')and (表名=''水表'')and (记录日期 between :a and :b)';
          adoquery1.Parameters.ParamByName('a').Value:=strtodate(trim(edit1.Text));
          adoquery1.Parameters.ParamByName('b').Value:=strtodate(trim(edit2.Text));
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end
         else if radiogroup1.ItemIndex=2 then
          begin //*
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select * from 数据信息 where (编号= '''+num+''')and (表名=''水表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end   //*
        end //5
       else if combobox2.Text='煤气表'then
         begin  //
          if radiogroup1.ItemIndex=1then
          begin
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select max(示数) as 当前读数 from 数据信息 where (编号= '''+num+''')and (表名=''煤气表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=0then
          begin
         Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select (max(示数)-min(示数)) as 历史示数 from 数据信息 where (编号= '''+num+''')and (表名=''煤气表'')and (记录日期 between :a and :b)';
          adoquery1.Parameters.ParamByName('a').Value:=strtodate(trim(edit1.Text));
          adoquery1.Parameters.ParamByName('b').Value:=strtodate(trim(edit2.Text));
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=2 then
          begin //*
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select * from 数据信息 where (编号= '''+num+''')and (表名=''煤气表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end   //*
        end //
        else  if combobox2.Text='所有' then
           begin
          if radiogroup1.ItemIndex=1then
          begin
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 表名,max(示数) as 当前读数 from 数据信息 where (编号= '''+num+''') group by 表名';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=0then
          begin
         Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 表名,(max(示数)-min(示数)) as 历史示数 from 数据信息 where (编号= '''+num+''')and (记录日期 between :a and :b) group by 表名';
          adoquery1.Parameters.ParamByName('a').Value:=strtodate(trim(edit1.Text));
          adoquery1.Parameters.ParamByName('b').Value:=strtodate(trim(edit2.Text));
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
        end
        else if radiogroup1.ItemIndex=2 then
          begin //*
           Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select * from 数据信息 where (编号= '''+num+''')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (编号='''+num+''') ';
          Adoquery2.Open;
          end   //*
        end
    end
    else if combobox1.Text='户主姓名'then
      begin
    if combobox2.text='电表'then
        begin
          if radiogroup1.ItemIndex=1then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 编号,max(示数) as 当前读数 from 户主查询 where (户主姓名= '''+num+''')and (表名=''电表'') group by 编号';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (户主姓名='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=0then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 编号,(max(示数)-min(示数)) as 历史示数 from 户主查询 where (户主姓名= '''+num+''')and (表名=''电表'')and (记录日期 between :a and :b) group by 编号';
          adoquery1.Parameters.ParamByName('a').Value:=strtodate(trim(edit1.Text));
          adoquery1.Parameters.ParamByName('b').Value:=strtodate(trim(edit2.Text));
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (户主姓名='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=2then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 编号,户主姓名,表名,示数,记录日期,记录时间,告警提示 from 户主查询 where (户主姓名= '''+num+''')and (表名=''电表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (户主姓名='''+num+''') ';
          Adoquery2.Open;
          end
        end
     else if combobox2.Text='水表'then
        begin
          if radiogroup1.ItemIndex=1then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 编号,max(示数) as 当前读数 from 户主查询 where (户主姓名= '''+num+''')and (表名=''水表'') group by 编号';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (户主姓名='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=0then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 编号,(max(示数)-min(示数)) as 历史示数 from 户主查询 where (户主姓名= '''+num+''')and (表名=''水表'')and (记录日期 between :a and :b) group by 编号';
          adoquery1.Parameters.ParamByName('a').Value:=strtodate(trim(edit1.Text));
          adoquery1.Parameters.ParamByName('b').Value:=strtodate(trim(edit2.Text));
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (户主姓名='''+num+''') ';
          Adoquery2.Open;
          end
          else if radiogroup1.ItemIndex=2then
          begin
          Adoquery1.Close;
          Adoquery1.SQL.Clear;
          Adoquery1.SQL.text:='select 编号,户主姓名,表名,示数,记录日期,记录时间,告警提示 from 户主查询 where (户主姓名= '''+num+''')and (表名=''水表'')';
          Adoquery1.Open;
          Adoquery2.Close;
          Adoquery2.SQL.Clear;
          Adoquery2.SQL.text:='select *from 居名基本信息 where (户主姓名='''+num+''') ';
          Adoquery2.Open;
          end
        end
       else if combobox2.Text='煤气表'then
         begin
          if radiogroup1.ItemIndex=1then

⌨️ 快捷键说明

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