📄 pas_landlord.~pas
字号:
unit pas_landlord;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls, ComCtrls, Buttons,
ToolWin;
type
TForm_landlord = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit_no: TEdit;
Edit_name: TEdit;
Edit_phone: TEdit;
Edit_tel: TEdit;
Edit_addr: TEdit;
Label9: TLabel;
Edit_remarks: TEdit;
Label10: TLabel;
edit_credit: TEdit;
ToolBar1: TToolBar;
SpeedButton1: TSpeedButton;
ToolButton1: TToolButton;
SpeedButton2: TSpeedButton;
ToolButton2: TToolButton;
SpeedButton3: TSpeedButton;
ToolButton4: TToolButton;
SpeedButton4: TSpeedButton;
ToolButton7: TToolButton;
SpeedButton5: TSpeedButton;
ToolButton3: TToolButton;
SpeedButton7: TSpeedButton;
ToolButton5: TToolButton;
DBGrid: TDBGrid;
SpeedButton6: TSpeedButton;
DBNavigator1: TDBNavigator;
procedure addClick(Sender: TObject);
procedure setUnValidClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure validClick(Sender: TObject);
procedure selecteverything(); {查询所有的数据}
procedure selectvalid();
procedure allClick(Sender: TObject);
procedure unvalidClick(Sender: TObject);
procedure setValidClick(Sender: TObject);
procedure DBGridCellClick(Column: TColumn);
procedure selectClick(Sender: TObject);
procedure DBGridDblClick(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); {查询所有的有效数据}
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_landlord: TForm_landlord;
implementation
uses pas_dm;
{$R *.dfm}
procedure Tform_landlord.selecteverything;
begin
with pas_dm.DM.Query_landlord do
begin
close;
sql.Clear;
sql.Add(' select l_no as 合同编号,'+
' l_name as 房东姓名 ,'+
' l_phone as 手机,'+
' l_tel as 电话,'+
' l_credit as 信用卡号,'+
' l_addr as 地址,'+
' l_remarks as 备注'+
' from landlord ');
open;
end;
end;
procedure Tform_landlord.selectvalid(); {查询所有的有效数据}
begin
with pas_dm.DM.Query_landlord do
begin
close;
sql.Clear;
sql.Add(' select l_no as 合同编号,'+
' l_name as 房东姓名 ,'+
' l_phone as 手机,'+
' l_tel as 电话,'+
' l_credit as 信用卡号,'+
' l_addr as 地址,'+
' l_remarks as 备注'+
' from landlord where l_validorno=1');
open;
end;
end;
procedure TForm_landlord.validClick(Sender: TObject);
begin
with pas_dm.DM.Query_landlord do
begin
close;
sql.Clear;
sql.Add(' select l_no as 合同编号,'+
' l_name as 房东姓名 ,'+
' ho_no 房子,'+
' l_phone as 手机,'+
' l_tel as 电话,'+
' l_credit as 信用卡号,'+
' l_addr as 地址,'+
' l_remarks as 备注'+
' from landlord,house_histry where l_name=ho_landlord l_validorno=1');
open;
end;
end;
procedure TForm_landlord.addClick(Sender: TObject);
var
s:string;
begin
if (edit_no.Text='') or (edit_name.Text='') or (edit_phone.Text='')
then
begin
showmessage('编号/中文名/手机不能为空');
exit;
end;
try
with pas_dm.DM.Query_landlord do
begin
Close;
SQL.Clear;
s:='insert into landlord(l_no,l_name,l_ename,l_phone,l_tel,l_credit,l_addr,l_remarks,l_validorno) values('''+trim(edit_no.Text)+''','''+
trim(edit_name.Text)+''','''','''+trim(edit_phone.Text)+''','''+
trim(edit_tel.Text)+''','''+trim(edit_credit.Text)+''','''+
trim(edit_addr.Text)+''','''+trim(edit_remarks.Text)+''',1)';
SQL.Add(s);
ExecSQL;
showmessage('添加 '+edit_name.Text+' 成功!');
end;
except
showmessage('添加'+edit_name.Text+'失败!注意编号是否重复');
end;
selectvalid();
end;
procedure TForm_landlord.setUnValidClick(Sender: TObject);
var
s:string;
begin
with pas_dm.DM.Query_landlord do
begin
if IDOK=messagebox(handle,pchar('编号为 '+dbgrid.Fields[0].AsString+' 的房东将被设为无效'),'警告', MB_OKCANCEL)
then
begin
try
s:=dbgrid.Fields[0].AsString;
Close;
SQL.Clear;
SQL.Add('update landlord set l_validorno=0 where l_no='''+s+'''');
ExecSQL;
except
showmessage('出错');
end;
if RowsAffected=1 then
begin
showmessage(s+'设置无效成功');
end;
end;
end;
selectvalid();
end;
procedure TForm_landlord.FormShow(Sender: TObject);
begin
selectvalid();
end;
procedure TForm_landlord.allClick(Sender: TObject);
begin
selecteverything();
end;
procedure TForm_landlord.unvalidClick(Sender: TObject);
begin
with pas_dm.DM.Query_landlord do
begin
close;
sql.Clear;
sql.Add(' select l_no as 合同编号,'+
' l_name as 房东姓名 ,'+
' l_phone as 手机,'+
' l_tel as 电话,'+
' l_credit as 信用卡号,'+
' l_addr as 地址,'+
' l_remarks as 备注'+
' from landlord where l_validorno=0');
open;
end;
end;
procedure TForm_landlord.setValidClick(Sender: TObject);
var
s:string;
begin
with pas_dm.DM.Query_landlord do
begin
if IDOK=messagebox(handle,pchar('编号为 '+dbgrid.Fields[0].AsString+' 的房东将被设为有效'),'警告', MB_OKCANCEL)
then
begin
try
s:=dbgrid.Fields[0].AsString;
Close;
SQL.Clear;
SQL.Add('update landlord set l_validorno=1 where l_no='''+s+'''');
ExecSQL;
except
showmessage('出错');
end;
if RowsAffected=1 then
begin
showmessage(s+'设置有效成功');
end;
end;
end;
selectvalid();
end;
procedure TForm_landlord.DBGridCellClick(Column: TColumn);
begin
with pas_dm.DM.Query_landlord do
begin
if dbgrid.FieldCount=0 then
begin
showmessage('没有打开数据库');
exit;
end;
if dbgrid.Fields[0].AsString='' then
begin
showmessage('数据库没有数据');
exit;
end;
edit_no.Text:=Fields.Fields[0].AsString;
edit_name.Text:=Fields.Fields[1].AsString;
edit_phone.Text:=Fields.Fields[2].AsString;
edit_tel.Text:=Fields.Fields[3].AsString;
edit_addr.Text:=Fields.Fields[5].AsString;
edit_credit.Text:=Fields.Fields[4].AsString;
edit_remarks.Text:=Fields.Fields[6].AsString;
end;
end;
procedure TForm_landlord.selectClick(Sender: TObject);
var
s:string;
begin
s:= ' where l_name like ''%'+trim(edit_name.Text)+'%'' ';
with pas_dm.DM.Query_landlord do
begin
close;
sql.Clear;
sql.Add(' select l_no as 房东编号,'+
' l_name as 房东姓名 ,'+
' l_phone as 手机,'+
' l_tel as 电话,'+
' l_credit as 信用卡号,'+
' l_addr as 地址,'+
' l_remarks as 备注'+
' from landlord '+s);
open;
end;
end;
procedure TForm_landlord.DBGridDblClick(Sender: TObject);
var
s: string;
begin
with pas_dm.DM.Query_landlord do
begin
if dbgrid.FieldCount=0 then
begin
showmessage('没有打开数据库');
exit;
end;
if dbgrid.Fields[0].AsString='' then
begin
showmessage('数据库没有数据');
exit;
end;
s:= dbgrid.Fields[0].AsString;
end;
with pas_dm.DM.AQ1 do
begin
close;
sql.Clear;
sql.Add('select l_name,valid= case l_validorno when ''1'' then ''有效'' else ''无效'' end from landlord where l_no='''+trim(s)+'''');
open;
showmessage(trim(dm.AQ1.Fields.Fields[0].AsString)+' 是'+dm.AQ1.Fields.Fields[1].AsString+'的');
close;
sql.Clear;
end;
end;
procedure TForm_landlord.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_F4 then
begin
speedbutton7.Click;
Key := 0;
exit;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -