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

📄 pas_landlord.~pas

📁 比较详细的功能
💻 ~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 + -