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

📄 timeset.pas

📁 路灯控制 可以实现路灯远程开关等
💻 PAS
字号:
unit Timeset;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, Grids, DBGrids, StdCtrls, ComCtrls, TabNotBk, Buttons;

type
  TFrm_Time = class(TForm)
    GroupBox1: TGroupBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    TabbedNotebook1: TTabbedNotebook;
    GroupBox2: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Edit1: TEdit;
    Edit7: TEdit;
    UpDown4: TUpDown;
    Edit9: TEdit;
    UpDown5: TUpDown;
    Edit10: TEdit;
    UpDown6: TUpDown;
    DBGrid1: TDBGrid;
    DataSource_SJ1: TDataSource;
    DataSource_SJ2: TDataSource;
    DateTimePicker1: TDateTimePicker;
    Label1: TLabel;
    DateTimePicker2: TDateTimePicker;
    CheckBox1: TCheckBox;
    BitBtn4: TBitBtn;
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure DataSource_SJ1DataChange(Sender: TObject; Field: TField);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frm_Time: TFrm_Time;

implementation

uses DM, TD;

{$R *.dfm}

procedure TFrm_Time.FormCreate(Sender: TObject);

begin

tabbednotebook1.ActivePage:='平时开关时间表';
with dm.DataModule1.ADO_SJ1 do
begin
 close;
 sql.Clear;
 sql.Add('select *from 平时开关灯时间表');
 open;
end;
end;

procedure TFrm_Time.BitBtn1Click(Sender: TObject);
var
s1,s2:string;
s:array[1..10] of string;
begin

     if checkbox1.Checked then s2:='是';
      if checkbox1.Checked=false then s2:='否';
      if edit1.Text='' then
       begin
       Application.MessageBox('时间表名称不能为空!','提示!',64);
       edit1.SetFocus;
       exit;
       end;
        with dm.DataModule1.ADO_SJ1  do
       begin
        s[1]:=edit1.Text;
        s[2]:=timetostr(datetimepicker1.time);
        s[3]:=timetostr(datetimepicker2.time);
        s[4]:=edit9.Text;
        s[5]:=edit10.Text;
        s[6]:=edit7.Text;
       Close;
       SQL.Clear;
       SQL.Add('select *  from 平时开关灯时间表 where 时间表名称='''+s[1]+'''');
       Open;
      if not Eof then
      Application.MessageBox('时间表名称不能重复!','提示!',64)
      else
       begin
       with dm.DataModule1.ADO_SJ1 do
       begin
       Close;
       SQL.Clear;
       SQL.Add('Insert Into 平时开关灯时间表 values(:a1,:a2,:a3,:a4,:a5,:a6,:a7)');
        parameters.ParamByName('a1').Value:=s[1];
        parameters.ParamByName('a2').Value:=s[2];
        parameters.ParamByName('a3').Value:=s[3];
        parameters.ParamByName('a4').Value:=s2;
        parameters.ParamByName('a5').Value:=s[4];
        parameters.ParamByName('a6').Value:=s[5];
        parameters.ParamByName('a7').Value:=s[6];
        execsql;
       end;
       end;
       end;
       with dm.DataModule1.ADO_SJ1 do
       begin
       close;
       sql.Clear;
       sql.Add('select * from 平时开关灯时间表');
       open;
       end;
   end;





//---------------删除------------------------
procedure TFrm_Time.BitBtn2Click(Sender: TObject);
begin
 //-------------------------------------------
  if tabbednotebook1.ActivePage='开关灯时间表' then
  begin

  if MessageDlg('确实要删除吗?',mtWarning, [mbYes, mbNo], 0) = mrYes then
  begin
     with dm.DataModule1.ADO_SJ1 do
       begin
       Close;
       SQL.Clear;
       SQL.Add('Delete From 平时开关灯时间表 where (时间表名称='''+edit1.Text+''')');
       execsql;
       end;
  end;
   with dm.DataModule1.ADO_SJ1  do
      begin
     Close;
    SQL.Clear;
    SQL.Add('Select * From 平时开关灯时间表');
    Open;
  end;

  end;
end;


///////////////////////////////////////////
procedure TFrm_Time.BitBtn3Click(Sender: TObject);
var
s1,s2:string;
begin
   ////////////////////////////////////////////////////////////

  if tabbednotebook1.ActivePage='开关灯时间表' then
  begin
    if checkbox1.Checked then s2:='是';
    if checkbox1.Checked=false then s2:='否';
   with dm.DataModule1.ADO_SJ1  do
    begin
    s1:=fieldbyname('时间表名称').AsString;
    Close;
    SQL.Clear;
    SQL.Add('update 平时开关灯时间表 set ');
    SQL.add('时间表名称='''+edit1.text+'''');
    SQL.add(',开灯时间='''+timetostr(datetimepicker1.Time)+'''');
    SQL.add(',关灯时间='''+timetostr(datetimepicker2.Time)+'''');
    SQL.add(',是否采用光控='''+s2+'''');
    SQL.add(',光照度上限='''+Edit9.text+'''');
    SQL.add(',光照度下限='''+Edit10.text+'''');
    SQL.add(',时间偏移量='''+Edit7.text+'''');
    SQL.Add('where 时间表名称='''+s1+'''');
     ExecSQL;
    Close;
    SQL.Clear;
    SQL.Add('Select * From 平时开关灯时间表');
    Open;
    end;
    end;
    ///////////////////////////////////////////////////////////////

end;

/////////////////////////////////////////////
procedure TFrm_Time.BitBtn4Click(Sender: TObject);
var
s,s1,s2:string;
begin
 s1:=dm.DataModule1.ADO_SJ1.fieldbyname('开灯时间').AsString;
  s2:=dm.DataModule1.ADO_SJ1.fieldbyname('关灯时间').AsString;

 // s:=frm_td.Edit15.Text;

 with dm.DataModule1.ADO_KZTD do
 begin
  close;
  sql.Clear;
  sql.Add('update 区域配置 set');

    SQL.add('开灯时间='''+s1+'''');
    SQL.add(',关灯时间='''+s2+'''');
    SQL.Add('where 区域号='''+frm_td.Edit15.Text+'''');
     ExecSQL;
    Close;
  end;

   with dm.DataModule1.ADO_KZTD do
 begin
  close;
  sql.Clear;
  sql.Add('select * from 区域配置 ');
  open;

  end;


end;

procedure TFrm_Time.DataSource_SJ1DataChange(Sender: TObject;
  Field: TField);
var
s:string;
begin

  with dm.DataModule1.ADO_SJ1   do
   begin

   edit1.Text:=fieldbyname('时间表名称').AsString;
   datetimepicker1.Time:=strtotime(fieldbyname('开灯时间').AsString);
   datetimepicker2.Time:=strtotime(fieldbyname('关灯时间').AsString);
    s:=fieldbyname('是否采用光控').AsString;
    edit9.Text:=fieldbyname('光照度上限').AsString;
    edit10.Text:=fieldbyname('光照度下限').AsString;
    edit7.Text:=fieldbyname('时间偏移量').AsString;
  end;

  if s='是' then checkbox1.Checked:=true;
  if s='否' then checkbox1.Checked:=false;

end;

end.

⌨️ 快捷键说明

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