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

📄 realtyb31a.pas

📁 物业管理系统系统特点 一、 实现集中式管理 系统将集团公司、各分公司、各物业管理处连接到一起
💻 PAS
字号:
unit RealtyB31A;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, dbcgrids, Grids, DBGrids, DB, ADODB, StdCtrls, Buttons, ExtCtrls,
  StrUtils, ExtDlgs, ComCtrls, math, Menus, ImgList, ToolWin;

type
    Tf_RealtyB31A = class(TForm)
    L1: TLabel;
    L2: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label1: TLabel;
    Label4: TLabel;
    Label6: TLabel;
    Label5: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    DateTimePicker1: TDateTimePicker;
    Button2: TButton;
    Memo1: TMemo;
    Button3: TButton;
    Edit4: TEdit;
    DateTimePicker2: TDateTimePicker;
    Button7: TButton;
    Button5: TButton;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormCreate(Sender: TObject);
    procedure ToolButton10Click(Sender: TObject);
    procedure NN6Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);


    procedure getid;
    procedure Button7Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
       bOK:bool;
  end;

var
  f_RealtyB31A: Tf_RealtyB31A;
  sNum:string;

implementation

uses data, main, RealtyA11,RealtyA12,RealtyA14,RealtyB22,RealtyA15,Realtyb35,DateUtils;

{$R *.dfm}


procedure Tf_RealtyB31A.getid;
var
    Query:TADOQuery;
    s:string;
    i:integer;
begin
    query:=TADOQuery.Create(nil);
    query.Connection:=DataModuleADO.ADOConnection1;

    s := 'select top 1 * from 客户车位 ORDER BY 编号 DESC';

    Query.SQL.Add(s);
    Query.Open ;
    if query.recordcount > 0 then
    begin
        s:= Query.Fieldbyname('编号').AsString;
        s:= Copy(S, 1, 7);
        i:= strtoint(s)+1;
        if i<10 then edit4.text := '000000'+inttostr(i)
        else if (i > 9) and (i<100) then edit4.text := '00000'+inttostr(i)
        else if (i > 99) and (i<1000) then edit4.text := '0000'+inttostr(i)
        else if (i > 999) and (i<10000) then edit4.text := '000'+inttostr(i)
        else if (i > 9999) and (i<100000) then edit4.text := '00'+inttostr(i)
        else if (i > 99999) and (i<1000000) then edit4.text := '0'+inttostr(i)
        else if i>999999 then edit4.text := inttostr(i);
    end
    else  edit4.text := '0000001';


    Query.Close;
    Query.Free;
end;
procedure Tf_RealtyB31A.FormCreate(Sender: TObject);
var
    Query:TADOQuery;
    s,s1,s2,s3,s4,s5,s6:string;
    i:integer;
begin
    if f_RealtyB35.bNew=true then
    begin
        datetimepicker1.Date:=date;
        datetimepicker2.Date:=date;
        getid;
    end;

    if f_RealtyB35.bNew=false then
    begin
        query:=TADOquery.Create(nil);
        query.Connection:=DataModuleADO.ADOConnection1;

        query.SQL.Add('select * from 客户车位 where 编号='''+f_RealtyB35.ListView1.Selected.SubItems[12]+'''');
        query.Open;
        if query.RecordCount>0 then
        begin
            s3:=mainform.getName('房间',query.fieldbyname('房间').Value);
            s4:=mainform.getName('车位',query.fieldbyname('车位').Value);
            edit4.Text:=query.fieldbyname('编号').Value;
            edit1.Text:=query.fieldbyname('房间').Value+'--'+s3;
            edit2.Text:=query.fieldbyname('客户').Value;
            edit3.Text:=query.fieldbyname('车位').Value+'--'+s4;
            datetimepicker1.Date:=strtodate(query.fieldbyname('开始使用日期').Value);
            datetimepicker2.Date:=strtodate(query.fieldbyname('取消使用日期').Value);
            Memo1.Lines.Text:=query.fieldbyname('备注').Value; 
        end;
    end;
end;

//Tab
procedure Tf_RealtyB31A.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
    if key=13 then
        Begin
            key:=0;
            perform(WM_NEXTDLGCTL,0,0);
        end
    else if key=VK_ESCAPE then close;
end;


procedure Tf_RealtyB31A.ToolButton10Click(Sender: TObject);
begin
    NN6Click(Sender);
end;

procedure Tf_RealtyB31A.NN6Click(Sender: TObject);
begin
    close;
end;

procedure Tf_RealtyB31A.Button1Click(Sender: TObject);
begin
    f_RealtyA14:=Tf_RealtyA14.Create(self);
    f_RealtyA14.ToolButton6.Visible:=true;
    f_RealtyA14.ShowModal;

    if  f_RealtyA14.bOk=true then
    begin
       edit1.Text:=f_RealtyA14.sNum+'--'+f_RealtyA14.sName;
    end;
end;

procedure Tf_RealtyB31A.Button2Click(Sender: TObject);
begin
    f_RealtyB22:=Tf_RealtyB22.Create(self);
    f_RealtyB22.ToolButton6.Visible:=true;
    f_RealtyB22.ShowModal;

    if  f_RealtyB22.bOk=true then
    begin
        edit2.Text:=f_RealtyB22.ListView1.Selected.SubItems[0];
    end;
end;

procedure Tf_RealtyB31A.Button3Click(Sender: TObject);
begin
      f_RealtyA15:=Tf_RealtyA15.create(self);
      f_RealtyA15.ToolButton6.Visible:=true;
      f_RealtyA15.showmodal;
      if  f_RealtyA15.bOk=true then
      begin
        edit3.Text:=f_RealtyA15.sNum+'--'+f_RealtyA15.sName;
      end;
end;




procedure Tf_RealtyB31A.Button7Click(Sender: TObject);
Var
    query,query1:TADOQuery;
    s,s1,s2,s3,s4,s5,s6,s7,s8:string;
    i:integer;
    r1,r2,r3:string;
begin
    if edit1.Text='' then
    begin
        showmessage('请输入房间!');
        edit1.SetFocus;
        exit;
    end;
    if edit2.Text='' then
    begin
        showmessage('请输入客户!');
        edit1.SetFocus;
        exit;
    end;

    if edit3.Text='' then
    begin
        showmessage('请输入车位!');
        edit3.SetFocus;
        exit;
    end;

    if Memo1.Lines.Text='' then Memo1.Lines.Text:='-';

    query:=TADOquery.Create(nil);
    query.Connection:=DataModuleADO.ADOConnection1;
    query1:=TADOquery.Create(nil);
    query1.Connection:=DataModuleADO.ADOConnection1;


    if f_RealtyB35.bNew=true then
    begin
        s:='insert into 客户车位 (编号,房间,客户,车位,开始使用日期,取消使用日期,备注)';
        s:=s+'values(:s1,:s2,:s3,:s4,:s5,:s6,:s7)';

        query.SQL.Add(s);

        query.Parameters.ParamByName('s1').Value:=edit4.text;
        query.Parameters.ParamByName('s2').Value:=mainform.getNum(edit1.Text);
        query.Parameters.ParamByName('s3').Value:=mainform.getNum(edit2.Text);
        query.Parameters.ParamByName('s4').Value:=mainform.getNum(edit3.Text);
        query.Parameters.ParamByName('s5').Value:=datetostr(datetimepicker1.Date);
        query.Parameters.ParamByName('s6').Value:=datetostr(datetimepicker2.date);
        query.Parameters.ParamByName('s7').Value:=Memo1.Lines.Text;

        DataModuleADO.ADOConnection1.BeginTrans;
        query.ExecSQL;
        DataModuleADO.ADOConnection1.CommitTrans;


        query.SQL.Clear;
        Query.SQL.Add('select * from 客户车位 where 编号='''+edit4.Text+'''');
        Query.Open ;
        if query.RecordCount>0 then
        begin
            query1.SQL.Clear;
            query1.SQL.Add('select * from 房间 where  编号='''+query.fieldbyname('房间').Value+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s2:=query1.fieldbyname('名称').Value;
                r1:=query1.fieldbyname('楼宇').Value;
                r2:=query1.fieldbyname('管理区').Value;
                r3:=query1.fieldbyname('管理处').Value;
            end;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 客户资料 where 客户名称 ='''+query.fieldbyname('客户').Value+'''');
            query1.Open;
            if query1.RecordCount>0 then  s5:=query1.fieldbyname('电话').Value;


            query1.SQL.Clear;
            query1.SQL.Add('select * from 楼宇 where 编号 ='''+r1+'''');
            query1.Open;
            if query1.RecordCount>0 then  s1:=query1.fieldbyname('名称').Value;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 管理区 where 编号 ='''+r2+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s3:=query1.fieldbyname('名称').Value;
            end;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 组织机构 where  编号 ='''+r3+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s7:=query1.fieldbyname('名称').Value;
            end;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 停车场 where 管理区 ='''+r2+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s8:=query1.fieldbyname('名称').Value;
            end;
            with f_RealtyB35.ListView1.Items.Add do
            begin
                Caption:=s7;
                SubItems.Add(s3);
                SubItems.Add(s1);
                SubItems.Add(Query.FieldByName('房间').Value);
                SubItems.Add(s2);

                SubItems.Add(Query.FieldByName('客户').Value);
                SubItems.Add(s5);
                SubItems.Add(Query.FieldByName('车位').Value);
                SubItems.Add(s8);
                SubItems.Add(Query.FieldByName('开始使用日期').Value);

                SubItems.Add(Query.FieldByName('取消使用日期').Value);

                i:=DaysBetween(date, datetimepicker2.Date);
                if i>0 then  SubItems.Add('N')
                else subitems.Add('Y');

                SubItems.Add(query.fieldbyname('备注').Value);
                SubItems.Add(query.fieldbyname('编号').Value);
            end;
        end;
        query1.Close;
        query1.Free;
        query.Close;
        query.Free;

        if f_RealtyB35.listview1.Items.Count > 0 then f_RealtyB35.ListView1.Items.Item[0].Selected := True;

        edit1.Text:='';
        edit2.Text:='';
        edit3.Text:='';
        datetimepicker1.Date:=date;
        datetimepicker2.date:=date;
        Memo1.Lines.Text:='';
        getid;
    end;

    if f_RealtyB35.bNew=false then
    begin
        s:='update 客户车位 set 编号='''+edit4.Text;
        s:=s+''', 房间='''+mainform.getNum(edit1.Text);
        s:=s+''', 客户='''+mainform.getNum(edit2.Text);
        s:=s+''', 车位='''+mainform.getNum(edit3.Text);
        s:=s+''', 开始使用日期='''+datetostr(datetimepicker1.Date);
        s:=s+''', 取消使用日期='''+datetostr(datetimepicker2.Date);
        s:=s+''',备注='''+Memo1.Lines.Text;
        s:=s+''' where 编号='''+f_RealtyB35.ListView1.Selected.SubItems[12]+'''';

        query.SQL.Clear;
        query.SQL.Add(s);
        DataModuleADO.ADOConnection1.BeginTrans;
        query.ExecSQL;
        DataModuleADO.ADOConnection1.CommitTrans;


        query.SQL.Clear;
        Query.SQL.Add('select * from 客户车位 where 编号='''+edit4.Text+'''');
        Query.Open ;
        if query.RecordCount>0 then
        begin
            query1.SQL.Clear;
            query1.SQL.Add('select * from 房间 where  编号='''+query.fieldbyname('房间').Value+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s2:=query1.fieldbyname('名称').Value;
                r1:=query1.fieldbyname('楼宇').Value;
                r2:=query1.fieldbyname('管理区').Value;
                r3:=query1.fieldbyname('管理处').Value;
            end;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 客户资料 where 客户名称 ='''+query.fieldbyname('客户').Value+'''');
            query1.Open;
            if query1.RecordCount>0 then  s5:=query1.fieldbyname('电话').Value;


            query1.SQL.Clear;
            query1.SQL.Add('select * from 楼宇 where 编号 ='''+r1+'''');
            query1.Open;
            if query1.RecordCount>0 then  s1:=query1.fieldbyname('名称').Value;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 管理区 where 编号 ='''+r2+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s3:=query1.fieldbyname('名称').Value;
            end;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 组织机构 where  编号 ='''+r3+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s7:=query1.fieldbyname('名称').Value;
            end;

            query1.SQL.Clear;
            query1.SQL.Add('select * from 停车场 where 管理区 ='''+r2+'''');
            query1.Open;
            if query1.RecordCount>0 then
            begin
                s8:=query1.fieldbyname('名称').Value;
            end;

            with f_RealtyB35.ListView1.Selected do
            begin
                Caption:=s7;
                SubItems[0]:=s3;
                SubItems[1]:=s1;
                SubItems[2]:=Query.FieldByName('房间').Value;
                SubItems[3]:=s2;

                SubItems[4]:=Query.FieldByName('客户').Value;
                SubItems[5]:=s5;
                SubItems[6]:=Query.FieldByName('车位').Value;
                SubItems[7]:=s8;
                SubItems[8]:=Query.FieldByName('开始使用日期').Value;

                SubItems[9]:=Query.FieldByName('取消使用日期').Value;

                i:=DaysBetween(date, datetimepicker2.Date);
                if i>0 then  SubItems[10]:='N'
                else subitems[10]:='Y';

                SubItems[11]:=query.fieldbyname('备注').Value;
                SubItems[12]:=query.fieldbyname('编号').Value;
            end;
        end;
        query1.Close;
        query1.Free;
        query.Close;
        query.Free;
        close;
    end;

end;

procedure Tf_RealtyB31A.Button5Click(Sender: TObject);
begin
    close;
end;

end.

⌨️ 快捷键说明

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