📄 comp.pas
字号:
unit comp;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls, Mask, DBCtrls, Db;
type
TFormCompSetup = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label10: TLabel;
Label8: TLabel;
Label9: TLabel;
Label3: TLabel;
ButtonOk: TButton;
ButtonReturn: TButton;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label11: TLabel;
ButtonSetUp: TButton;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
DBEdit11: TDBEdit;
DateTimePickerLicence: TDateTimePicker;
Label12: TLabel;
EditCompCode: TEdit;
ButtonPrior: TButton;
ButtonNext: TButton;
ButtonAdd: TButton;
ButtonDelete: TButton;
Label7: TLabel;
DBEdit10: TDBEdit;
procedure ButtonOkClick(Sender: TObject);
procedure ButtonSetUpClick(Sender: TObject);
procedure ButtonReturnClick(Sender: TObject);
procedure EditCompCodeExit(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure FormActivate(Sender: TObject);
procedure DBEdit6Exit(Sender: TObject);
procedure ButtonPriorClick(Sender: TObject);
procedure ButtonNextClick(Sender: TObject);
procedure ButtonAddClick(Sender: TObject);
procedure ButtonDeleteClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DateTimePickerLicenceChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FormCompSetup: TFormCompSetup;
implementation
Uses HuaXia, Site, ErrorHit;
{$R *.DFM}
procedure TFormCompSetup.ButtonOkClick(Sender: TObject);
begin
Try
If (HuaXiaData.TableCompSet.State=DsEdit) Or (HuaXiaData.TableCompSet.State=DsInsert) Then
Begin
HuaXiaData.TableCompSet.Edit;
HuaXiaData.TableCompSet.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableCompSet.FieldByName('licence_date').Value:=DateTimePickerLicence.Date;
HuaXiaData.TableCompSet.Post;
End;
HuaXiaData.TableSite.Active:=True;
If HuaXiaData.TableSite.Locate('comp_code;site_code',VarArrayOf([EditCompCode.Text,'00']),[loCaseInsensitive])=False Then
HuaXiaData.TableSite.Append;
HuaXiaData.TableSite.Edit;
HuaXiaData.TableSite.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableSite.FieldByName('site_code').AsString:='00';
HuaXiaData.TableSite.FieldByName('site_name').AsString:=DbEdit1.text;
HuaXiaData.TableSite.FieldByName('site_address').AsString:=DbEdit2.text;
HuaXiaData.TableSite.FieldByName('contact_person').AsString:=DbEdit8.text;
HuaXiaData.TableSite.FieldByName('contact_phone').AsString:=DbEdit9.text;
HuaXiaData.TableSite.FieldByName('postcode').AsString:=DbEdit7.text;
HuaXiaData.TableSite.FieldByName('note').AsString:=DbEdit11.text;
HuaXiaData.TableSite.Post;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.ButtonSetUpClick(Sender: TObject);
begin
If EditCompCode.Text<>'' Then
FormSiteSetup.ShowModal
Else
Begin
If MessageDlg('公司代码为空,不能进行网点设置', mtConfirmation, [mbYes],0)=mrYes Then
ButtonSetUp.Enabled:=False;
End;
end;
procedure TFormCompSetup.ButtonReturnClick(Sender: TObject);
begin
Try
If (huaxiaData.TableCompset.State=DsInsert) or (huaxiaData.TableCompset.State=DsEdit) Then
If MessageDlg('所做修改尚未保存,保存修改吗?', mtConfirmation, [mbYes, mbNo],0)=mrYes Then
HuaXiaData.TableCompset.Post
Else
HuaXiaData.TableCompset.Cancel;
HuaXiaData.TableCompSet.Close;
Close;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.EditCompCodeExit(Sender: TObject);
begin
Try
If EditCompCode.Text<>'' Then
Begin
HuaXiaData.TableCompSet.Active:=True;
ButtonSetUp.Enabled:=True;
If HuaXiaData.TableCompSet.Locate('comp_code',EditCompCode.Text,[loCaseInsensitive]) Then
HuaXiaData.TableCompSet.Edit
Else
Begin
HuaXiaData.TableCompSet.Append;
HuaXiaData.TableCompSet.Edit;
HuaXiaData.TableCompSet.FieldByName('comp_code').AsString:=EditCompCode.Text;
End;
End
Else
Begin
If MessageDlg('该项输入内容不能为空,放弃输入吗?', mtConfirmation, [mbYes, mbNo],0)=mrYes Then
Begin
HuaXiaData.TableCompSet.cancel;
ActiveControl:=ButtonReturn;
End
Else
ActiveControl:=EditCompCode;
End;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.FormKeyPress(Sender: TObject; var Key: Char);
begin
If key=#13 then { 判断是按执行键}
Begin { 不是在TDbgrid控件内}
key:=#0;
perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
End;
end;
procedure TFormCompSetup.FormActivate(Sender: TObject);
begin
Try
HuaXiaData.TableCompSet.Active:=True;
HuaXiaData.TableSite.Active:=True;
If HuaXiaData.TableCompSet.RecordCount>0 Then
ButtonSetUp.Enabled:=True
Else
ButtonSetUp.Enabled:=False;
EditCompCode.Text:=HuaXiaData.TableCompSet.FieldByName('comp_code').AsString;
DateTimePickerLicence.DateTime:=Now;
If HuaXiaData.TableCompSet.RecordCount>0 Then
ButtonDelete.Enabled:=True
Else
ButtonDelete.Enabled:=False;
If HuaXiaData.TableCompSet.Eof Then
ButtonNext.Enabled:=False
Else
ButtonNext.Enabled:=True;
If HuaXiaData.TableCompSet.Bof Then
ButtonPrior.Enabled:=False
Else
ButtonPrior.Enabled:=True;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.DBEdit6Exit(Sender: TObject);
begin
Try
If DBEdit6.Text<>'' Then
Begin
HuaXiaData.TableCompSet.Active:=True;
ButtonSetUp.Enabled:=True;
If HuaXiaData.TableCompSet.Locate('comp_code',DBEdit6.Text,[loCaseInsensitive]) Then
HuaXiaData.TableCompSet.Edit
Else
Begin
HuaXiaData.TableCompSet.Append;
HuaXiaData.TableCompSet.Edit;
End;
End
Else
Begin
ButtonSetUp.Enabled:=False;
HuaXiaData.TableCompSet.Close;
End;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.ButtonPriorClick(Sender: TObject);
begin
Try
HuaXiaData.TableCompSet.Active;
If (HuaXiaData.TableCompSet.State=DsEdit) Or (HuaXiaData.TableCompSet.State=DsInsert) Then
Begin
HuaXiaData.TableCompSet.Edit;
HuaXiaData.TableCompSet.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableCompSet.FieldByName('licence_date').Value:=DateTimePickerLicence.Date;
HuaXiaData.TableCompSet.Post;
End;
HuaXiaData.TableCompSet.Prior;
ButtonSetUp.Enabled:=True;
Try
DateTimePickerLicence.DateTime:=HuaXiaData.TableCompSet.FieldByName('licence_date').Value;
Except
DateTimePickerLicence.DateTime:=Now;
End;
EditCompCode.Text:=HuaXiaData.TableCompSet.FieldByName('comp_code').AsString;
If HuaXiaData.TableCompSet.RecordCount>0 Then
ButtonDelete.Enabled:=True
Else
ButtonDelete.Enabled:=False;
If HuaXiaData.TableCompSet.Eof Then
ButtonNext.Enabled:=False
Else
ButtonNext.Enabled:=True;
If HuaXiaData.TableCompSet.Bof Then
ButtonPrior.Enabled:=False
Else
ButtonPrior.Enabled:=True;
HuaXiaData.TableSite.Active:=True;
If HuaXiaData.TableSite.Locate('comp_code;site_code',VarArrayOf([EditCompCode.Text,'00']),[loCaseInsensitive])=False Then
HuaXiaData.TableSite.Append;
HuaXiaData.TableSite.Edit;
HuaXiaData.TableSite.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableSite.FieldByName('site_code').AsString:='00';
HuaXiaData.TableSite.FieldByName('site_name').AsString:=DbEdit1.text;
HuaXiaData.TableSite.FieldByName('site_address').AsString:=DbEdit2.text;
HuaXiaData.TableSite.FieldByName('contact_person').AsString:=DbEdit8.text;
HuaXiaData.TableSite.FieldByName('contact_phone').AsString:=DbEdit9.text;
HuaXiaData.TableSite.FieldByName('postcode').AsString:=DbEdit7.text;
HuaXiaData.TableSite.FieldByName('note').AsString:=DbEdit11.text;
HuaXiaData.TableSite.Post;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.ButtonNextClick(Sender: TObject);
begin
Try
HuaXiaData.TableCompSet.Active;
If (HuaXiaData.TableCompSet.State=DsEdit) Or (HuaXiaData.TableCompSet.State=DsInsert) Then
Begin
HuaXiaData.TableCompSet.Edit;
HuaXiaData.TableCompSet.FieldByName('licence_date').Value:=DateTimePickerLicence.Date;
HuaXiaData.TableCompSet.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableCompSet.Post;
End;
HuaXiaData.TableCompSet.Next;
ButtonSetUp.Enabled:=True;
EditCompCode.Text:=HuaXiaData.TableCompSet.FieldByName('comp_code').AsString;
Try
DateTimePickerLicence.DateTime:=HuaXiaData.TableCompSet.FieldByName('licence_date').Value;
Except
DateTimePickerLicence.DateTime:=Now;
End;
If HuaXiaData.TableCompSet.RecordCount>0 Then
ButtonDelete.Enabled:=True
Else
ButtonDelete.Enabled:=False;
If HuaXiaData.TableCompSet.Eof Then
ButtonNext.Enabled:=False
Else
ButtonNext.Enabled:=True;
If HuaXiaData.TableCompSet.Bof Then
ButtonPrior.Enabled:=False
Else
ButtonPrior.Enabled:=True;
HuaXiaData.TableSite.Active:=True;
If HuaXiaData.TableSite.Locate('comp_code;site_code',VarArrayOf([EditCompCode.Text,'00']),[loCaseInsensitive])=False Then
HuaXiaData.TableSite.Append;
HuaXiaData.TableSite.Edit;
HuaXiaData.TableSite.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableSite.FieldByName('site_code').AsString:='00';
HuaXiaData.TableSite.FieldByName('site_name').AsString:=DbEdit1.text;
HuaXiaData.TableSite.FieldByName('site_address').AsString:=DbEdit2.text;
HuaXiaData.TableSite.FieldByName('contact_person').AsString:=DbEdit8.text;
HuaXiaData.TableSite.FieldByName('contact_phone').AsString:=DbEdit9.text;
HuaXiaData.TableSite.FieldByName('postcode').AsString:=DbEdit7.text;
HuaXiaData.TableSite.FieldByName('note').AsString:=DbEdit11.text;
HuaXiaData.TableSite.Post;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
End;
procedure TFormCompSetup.ButtonAddClick(Sender: TObject);
begin
Try
HuaXiaData.TableCompSet.Active;
If (HuaXiaData.TableCompSet.State=DsEdit) Or (HuaXiaData.TableCompSet.State=DsInsert) Then
Begin
HuaXiaData.TableCompSet.Edit;
HuaXiaData.TableCompSet.FieldByName('licence_date').Value:=DateTimePickerLicence.Date;
HuaXiaData.TableCompSet.FieldByName('comp_code').AsString:=EditCompCode.Text;
HuaXiaData.TableCompSet.Post;
End;
HuaXiaData.TableCompSet.Append;
If HuaXiaData.TableCompSet.RecordCount>0 Then
ButtonDelete.Enabled:=True
Else
ButtonDelete.Enabled:=False;
If HuaXiaData.TableCompSet.Eof Then
ButtonNext.Enabled:=False
Else
ButtonNext.Enabled:=True;
If HuaXiaData.TableCompSet.Bof Then
ButtonPrior.Enabled:=False
Else
ButtonPrior.Enabled:=True;
FormCompSetUp.ActiveControl:=EditCompCode;
ButtonSetUp.Enabled:=True;
EditCompCode.text:='';
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.ButtonDeleteClick(Sender: TObject);
begin
Try
HuaXiaData.TableCompSet.Active;
If (HuaXiaData.TableCompSet.State=DsEdit) Or (HuaXiaData.TableCompSet.State=DsInsert) Then
HuaXiaData.TableCompSet.Cancel
Else
HuaXiaData.TableCompSet.Delete;
Try
DateTimePickerLicence.DateTime:=HuaXiaData.TableCompSet.FieldByName('licence_date').Value;
Except
DateTimePickerLicence.DateTime:=Now;
End;
If HuaXiaData.TableCompSet.RecordCount>0 Then
ButtonDelete.Enabled:=True
Else
ButtonDelete.Enabled:=False;
If HuaXiaData.TableCompSet.Eof Then
ButtonNext.Enabled:=False
Else
ButtonNext.Enabled:=True;
If HuaXiaData.TableCompSet.Bof Then
ButtonPrior.Enabled:=False
Else
ButtonPrior.Enabled:=True;
EditCompCode.Text:=HuaXiaData.TableCompSet.FieldByName('comp_code').AsString;
ButtonSetUp.Enabled:=True;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Try
HuaXiaData.TableCompSet.Active:=False;
HuaXiaData.TableSite.Active:=False;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
procedure TFormCompSetup.DateTimePickerLicenceChange(Sender: TObject);
begin
Try
HuaXiaData.TableCompSet.Edit;
Except
On E:Exception Do
Begin
ShowMessage('数据库连接失败,请检验网络连接是否正常');
Exit;
End;
End;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -