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

📄 mxcz.pas

📁 用delphi开发的电力调度操作票系统并带有access数据库
💻 PAS
字号:
unit MXCZ;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls,Common, DB, ADODB;

type
  TFrm_MXCZ = class(TForm)
    CB_BDS: TComboBox;
    CB_MXNAME: TComboBox;
    Label1: TLabel;
    Label2: TLabel;
    BT_Sure: TButton;
    BT_Cancel: TButton;
    RG_ZH: TRadioGroup;
    RG_AC: TRadioGroup;
    ADOQuery: TADOQuery;
    procedure RG_ZHClick(Sender: TObject);
    procedure RG_ACClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BT_SureClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BT_CancelClick(Sender: TObject);
  private
    { Private declarations }
    function GetData(BDS_Name,MX_Name,CZ_Type:string):TKContent;
  public
    { Public declarations }
  end;

var
  Frm_MXCZ: TFrm_MXCZ;
  content:TKContent;
  
implementation

uses RptTable;

{$R *.dfm}
function TFrm_MXCZ.GetData(BDS_Name,MX_Name,CZ_Type:string):TKContent;
var
  content:TKContent;
  s,BDS_Num,MX_NUM:string;
begin
  //获变电所编号
  ADOQuery.Close;
  ADOQuery.SQL.Text:='select * from BDS where 变电所名称='''+BDS_Name+'''';
  ADOQuery.Open;
  BDS_Num:=ADOQuery.FieldByName('变电所编号').AsString;
  //获母线编号
  ADOQuery.Close;
  ADOQuery.SQL.Text:='select * from MXFD where 分段名称='''+MX_Name+'''';
  ADOQuery.Open;
  MX_NUM:=ADOQuery.FieldByName('分段编号').AsString;

  //获取操作内容
  ADOQuery.Close;
  ADOQuery.SQL.Text:='select * from MXCZ where 变电所编号='''+BDS_Num+''' and 母线编号='''+MX_NUM+''' and 操作类型='''+CZ_Type+''' order by 序号';
  ADOQuery.Open;
  content.Body:=TStringList.Create;
  ADOQuery.First;
  while not ADOQuery.Eof do
  begin
    s:=trim(ADOQuery.FieldByName('操作内容').AsString);
    content.Body.Add(s);
    ADOQuery.Next;
  end;
  ADOQuery.Close;
 
  Result:=content;
end;
procedure TFrm_MXCZ.RG_ZHClick(Sender: TObject);
begin
  RG_AC.ItemIndex:=-1;
end;

procedure TFrm_MXCZ.RG_ACClick(Sender: TObject);
begin
  RG_ZH.ItemIndex:=-1;
end;

procedure TFrm_MXCZ.FormCreate(Sender: TObject);
begin
  Self.ADOQuery.Connection:=Frm_Com.ADOConnection;
  Self.ADOQuery.SQL.Text:='select * from BDS';
  Self.ADOQuery.Open;
  Frm_Com.AddCoBoItem(CB_BDS,'变电所名称',Self.ADOQuery);//添加变电所
  
  Self.ADOQuery.SQL.Text:='select * from MXFD';
  Self.ADOQuery.Open;
  
  Frm_Com.AddCoBoItem(CB_MXNAME,'分段名称',Self.ADOQuery);//添加开关名
  Self.ADOQuery.Close;
end;

procedure TFrm_MXCZ.BT_SureClick(Sender: TObject);
begin
  //
  content.Body:=TStringList.Create;
  case RG_ZH.ItemIndex of
    0:
    begin
      content.Title:=CB_BDS.Text+CB_MXNAME.Text+'母线停电';
      content.Body.Add(CB_MXNAME.Text+'母线由运行转热备用');
      content.Body.Add(CB_MXNAME.Text+'母线由热备用转冷备用');
      content.B_Type:='ZH.ini';
    end;
    1:
    begin
      content.Title:=CB_BDS.Text+CB_MXNAME.Text+'母线送电';
      content.Body.Add(CB_MXNAME.Text+'母线由冷备用转热备用');
      content.Body.Add(CB_MXNAME.Text+'母线由热备用转运行');
      content.B_Type:='ZH.ini';
    end;
  end;

  case RG_AC.ItemIndex of
    0:
    begin
      content:=GetData(CB_BDS.Text,CB_MXName.Text,'停电检修');
      content.Title:=CB_BDS.Text+CB_MXName.Text+'母线停电检修';
      content.B_Type:='AC2.ini';
    end;
    1:
    begin
      content:=GetData(CB_BDS.Text,CB_MXName.Text,'拆除安措');
      content.Title:=CB_BDS.Text+CB_MXName.Text+'母线拆除安措';
      content.B_Type:='AC2.ini';
    end;

  end;

  if (RG_ZH.ItemIndex=-1) and (RG_AC.ItemIndex=-1) then//if Trim(content.B_Type)='' then
  begin
    showmessage('请选择票令类型!');
    exit;
  end;
  content.Body.Add(CB_BDS.Text);//发令单位

  //-->写入配置信息
  if Frm_Com.WriteINI(content.B_Type)=false then
  begin
    showmessage('写入配置信息时发生错误!配置文件可能丢失或损坏!');
    exit;
  end;
  //-->创建报表
  Self.Hide;
  Frm_Com.WriteData(content);
  Application.CreateForm(TFrm_Table,Frm_Table);
  Frm_Table.Show;
  Self.Close;
end;

procedure TFrm_MXCZ.FormShow(Sender: TObject);
begin
//初始化
  Content.Title:='';
end;

procedure TFrm_MXCZ.BT_CancelClick(Sender: TObject);
begin
  Close;
end;

end.

⌨️ 快捷键说明

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