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

📄 ammeterreplace_f.pas

📁 县级供电企业电费核算源码, 在客户处正常运行8年以上, Delphi 5开发,数据库为Interbase/Firebird, 深入使用Procedure和Trigger等, 对入门者具有很好的参考价值
💻 PAS
字号:
unit AmmeterReplace_F;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Grids, DBGrids, ComCtrls, Mask, DBCtrls, ExtCtrls, Transfer_Frm;

type
  TF_AmmeterReplace = class(TForm)
    PC: TPageControl;
    Ts_House: TTabSheet;
    TS_Ammeter: TTabSheet;
    DBG_House: TDBGrid;
    DBG_Ammeter: TDBGrid;
    Panel1: TPanel;
    Bt_HouseNext: TButton;
    Bt_HouseCancel: TButton;
    Bt_HouseLast: TButton;
    DBE_House_No: TDBEdit;
    DBE_Ammeter_Order: TDBEdit;
    Ts_NewAmmeter: TTabSheet;
    E_Ammeter_No: TEdit;
    E_Ammeter_Model: TEdit;
    E_Ammeter_Count: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label7: TLabel;
    Panel4: TPanel;
    Bt_NewAmmeterCancel: TButton;
    Bt_NewAmmeterLast: TButton;
    Memo2: TMemo;
    Bt_NewAmmeterComplete: TButton;
    Bt_PrintCard: TButton;
    Panel3: TPanel;
    Bt_AmmeterNext: TButton;
    Bt_AmmeterCancel: TButton;
    Bt_AmmeterLast: TButton;
    DTP_Ammeter_Date: TDateTimePicker;
    TFrm_Transfer1: TFrm_Transfer;
    procedure Bt_TransferSelectClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDeactivate(Sender: TObject);
    procedure Bt_AmmeterCancelClick(Sender: TObject);
    procedure Bt_AmmeterNextClick(Sender: TObject);
    procedure Bt_HouseNextClick(Sender: TObject);
    procedure Bt_HouseCancelClick(Sender: TObject);
    procedure Bt_AmmeterLastClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure Bt_NewAmmeterCompleteClick(Sender: TObject);
    procedure Bt_NewAmmeterLastClick(Sender: TObject);
    procedure Bt_NewAmmeterCancelClick(Sender: TObject);
    procedure Bt_PrintCardClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  F_AmmeterReplace: TF_AmmeterReplace;

implementation

uses TransferSelect_F, Table_DM, Comm, CommSmdljf;

{$R *.DFM}


procedure TF_AmmeterReplace.Bt_TransferSelectClick(Sender: TObject);
begin
	F_TransferSelect.Show();
    PC.ActivePage := TS_House;
end;

procedure TF_AmmeterReplace.FormActivate(Sender: TObject);
begin
    P_OpenTable(Dm_Table.Tb_House);
    P_OpenTable(Dm_Table.Tb_Ammeter);
	Dm_Table.Tb_House.EnableControls();
end;

procedure TF_AmmeterReplace.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
	If Dm_Table.Tb_House.Modified then
    	Dm_Table.Tb_House.Cancel();
	If Dm_Table.Tb_Ammeter.Modified then
    	Dm_Table.Tb_Ammeter.Cancel();
    Dm_Table.Tb_House.Close();
    Dm_Table.Tb_Ammeter.Close();
end;

procedure TF_AmmeterReplace.FormDeactivate(Sender: TObject);
begin
	Dm_Table.Tb_House.DisableControls();
end;









procedure TF_AmmeterReplace.Bt_AmmeterCancelClick(Sender: TObject);
begin
	Close();
end;




procedure TF_AmmeterReplace.Bt_AmmeterNextClick(Sender: TObject);
begin
	if DM_Table.Tb_Ammeter.Eof Then
    	ShowMessage('你必须选择一块电表')
    else
    Begin
		PC.ActivePage := Ts_NewAmmeter;
    	E_Ammeter_No.Text := '';
    	DTP_Ammeter_Date.Date := Date();
		E_Ammeter_Count.Text := '0';
		E_Ammeter_Model.Text := DM_Table.Tb_Ammeter['f_Ammeter_Model'];
    End;

end;

procedure TF_AmmeterReplace.Bt_HouseNextClick(Sender: TObject);
begin
	PC.ActivePage := Ts_Ammeter;
end;

procedure TF_AmmeterReplace.Bt_HouseCancelClick(Sender: TObject);
begin
	Close();
end;

procedure TF_AmmeterReplace.Bt_AmmeterLastClick(Sender: TObject);
begin
	PC.ActivePage := Ts_House;
end;







procedure TF_AmmeterReplace.FormShow(Sender: TObject);
begin
	PC.ActivePage := Ts_House;
end;

procedure TF_AmmeterReplace.Bt_NewAmmeterCompleteClick(Sender: TObject);
begin
	if Bt_PrintCard.Enabled Then
    	MessageBox(Handle,'用户表卡尚未打印,请先打印表卡.','系统提示',MB_OK)
    Else
	Begin
    	if Dm_Table.Tb_Ammeter.Modified then
    		Dm_Table.Tb_Ammeter.Post();
		P_AmmeterReplace(DBE_House_No.Text, StrToInt(DBE_Ammeter_Order.Text));
    End;
end;

procedure TF_AmmeterReplace.Bt_NewAmmeterLastClick(Sender: TObject);
begin
	PC.ActivePage := Ts_Ammeter;
end;

procedure TF_AmmeterReplace.Bt_NewAmmeterCancelClick(Sender: TObject);
begin
	Close();
end;

procedure TF_AmmeterReplace.Bt_PrintCardClick(Sender: TObject);
begin
	MessageBox(Handle,'表卡尚未设计好,按《完成》将删除此表的抄表数据','系统提示',0);
    (Sender as TButton).Enabled := false;
end;

procedure TF_AmmeterReplace.FormCreate(Sender: TObject);
begin
    DTP_Ammeter_Date.Date := Date();//设置初始换表时间
end;

end.

⌨️ 快捷键说明

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