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

📄 realtyb35.pas

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

interface

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

type
    Tf_RealtyB35 = class(TForm)
    GroupBox1: TGroupBox;
    ListView1: TListView;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Label4: TLabel;
    Edit3: TEdit;
    Label5: TLabel;
    Edit4: TEdit;
    Label6: TLabel;
    Label7: TLabel;
    DateTimePicker1: TDateTimePicker;
    DateTimePicker2: TDateTimePicker;
    Label3: TLabel;
    Edit2: TEdit;
    procedure Button4Click(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
    procedure Button1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure Button2Click(Sender: TObject);
  
    procedure GetData;
    procedure NN6Click(Sender: TObject);
    procedure ToolButton10Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
     bMod:bool;
     sTable:string;
     cols:integer;
     bNew:bool;
  end;

var
  f_RealtyB35: Tf_RealtyB35;
implementation
uses data, main,RealtyB31,RealtyB31A,RealtyPrint1,DateUtils;
{$R *.dfm}

//初始化
procedure Tf_RealtyB35.GetData;
Var
    Query,query1,query2,query11,query22:TADOQuery;
    s,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10:string;
    i:integer;
    r1,r2,r3,r4:string;
begin
    ListView1.Items.Clear;
    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;
    Query1:=TADOQuery.Create(nil);
    Query1.Connection:=DataModuleADO.ADOConnection1;
    Query2:=TADOQuery.Create(nil);
    Query2.Connection:=DataModuleADO.ADOConnection1;
    Query11:=TADOQuery.Create(nil);
    Query11.Connection:=DataModuleADO.ADOConnection1;
    Query22:=TADOQuery.Create(nil);
    Query22.Connection:=DataModuleADO.ADOConnection1;

    s:='select * from 客户车位 where 客户 like ''%'+edit3.Text;
    s:=s+'%'' and 开始使用日期 >='''+datetostr(datetimepicker1.Date);
    s:=s+''' and 开始使用日期<='''+datetostr(datetimepicker2.date);  
    s:=s+'%'' order by 编号 ASC';

    Query.SQL.Add(s);
    Query.Open ;
    while not Query.Eof do
    begin
        i:=DaysBetween(date, strtodate(Query.FieldByName('取消使用日期').Value));

        s:='select * from 房间 where  编号='''+query.fieldbyname('房间').Value+'''';
        query2.SQL.Clear;
        query2.SQL.Add(s);
        query2.Open;
        if query2.RecordCount>0 then
        begin
            s2:=query2.fieldbyname('名称').Value;
            r1:=query2.fieldbyname('楼宇').Value;
            r2:=query2.fieldbyname('管理区').Value;
            r3:=query2.fieldbyname('管理处').Value;

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

                s:='select * from 车位 where 编号 ='''+query.fieldbyname('车位').Value;
                s:=s+''' and 名称 like ''%'+edit2.text+'%''';
                query11.SQL.Clear;
                query11.SQL.Add(s);
                query11.Open;
                if query11.recordcount>0 then
                begin
                    r4:=query11.fieldbyname('停车场').value;

                    s:='select * from 停车场 where 编号 ='''+r4;
                    s:=s+''' and 名称 like ''%'+edit4.text+'%''';
                    query22.SQL.Clear;
                    query22.SQL.Add(s);
                    query22.Open;
                    if query22.RecordCount>0 then
                    begin
                        s8:=query22.fieldbyname('名称').Value;

                        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  编号 ='''+r3+'''');
                        query1.Open;
                        if query1.RecordCount>0 then
                        begin
                            s7:=query1.fieldbyname('名称').Value;
                        end;

                        with 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(mainform.getName('车位',query.FieldByName('车位').Value));
                            SubItems.Add(s8);
                            SubItems.Add(Query.FieldByName('开始使用日期').Value);

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

                            if i>0 then  SubItems.Add('N')
                            else subitems.Add('Y');

                            SubItems.Add(query.fieldbyname('备注').Value);
                            SubItems.Add(query.fieldbyname('编号').Value);
                        end;
                    end;
                end;
            end;
        end;
        query.Next;
    end;
    query11.Close;
    query11.free;
    query22.close;
    query22.free;
    query2.close;
    query2.Free;
    query1.Close;
    query1.Free;
    query.Close;
    query.Free;
    if listview1.Items.Count > 0 then ListView1.Items.Item[0].Selected := True;
end;



//Tab
procedure Tf_RealtyB35.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_RealtyB35.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    Action := caFree;
end;

//新增
procedure Tf_RealtyB35.Button1Click(Sender: TObject);
begin
    getdata;
end;

//修改
procedure Tf_RealtyB35.Button2Click(Sender: TObject);
begin
    bNew:=true;
     f_RealtyB31A:=Tf_RealtyB31A.create(self);
     f_RealtyB31A.showmodal;
end;


//返回
procedure Tf_RealtyB35.Button4Click(Sender: TObject);
var
    Query:TADOQuery;
begin
    If ListView1.SelCount=0 Then exit;

    if(Application.MessageBox(PChar('确认要删除所选记录吗?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=1) then
    begin
        Query:=TADOQuery.Create(nil);
        Query.Connection:=DataModuleADO.ADOConnection1;

        DataModuleADO.ADOConnection1.BeginTrans;
        Query.SQL.Text:='delete from 客户车位 where 编号='''+listview1.Selected.SubItems[12]+'''';
        query.ExecSQL;
        DataModuleADO.ADOConnection1.CommitTrans;

        Query.Close;
        Query.Free;
        ListView1.Selected.Delete;
        if listview1.Items.Count > 0 then ListView1.Items.Item[0].Selected := True;
    end;
end;

//取数据

procedure Tf_RealtyB35.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
    if   Item.Selected = true then
    begin
          Sender.Canvas.Brush.Color   :=   clMenuHighlight;
          (Sender   as   TListView).Canvas.Font.Color   :=  clWhite;
    end;
end;


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

procedure Tf_RealtyB35.ToolButton10Click(Sender: TObject);
begin
    close;
end;


procedure Tf_RealtyB35.ToolButton3Click(Sender: TObject);
begin
    GetData;
end;
procedure Tf_RealtyB35.Button3Click(Sender: TObject);
begin
    if listview1.SelCount=0 then exit;

    bNew:=false;
    f_RealtyB31A:=Tf_RealtyB31A.create(self);
    f_RealtyB31A.showmodal;
end;

procedure Tf_RealtyB35.Button6Click(Sender: TObject);
begin
    close;
end;

procedure Tf_RealtyB35.Button5Click(Sender: TObject);
var
    i:integer;
    Query:TADOQuery;
    s:string;
begin
    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;

    DataModuleADO.ADOConnection1.BeginTrans;
    Query.SQL.Text:='delete from temp';
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    for i:=0 to listview1.Items.Count-1 do
    begin
        s:= 'insert into temp(列1,列2,列3,列4,列5,列6,列7,列8,列9,列10,';
        s:=s+'列11,列12,列13,列14)';
        s:=s+'values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,';
        s:=s+':s11,:s12,:s13,:s14)';

        query.sql.Clear ;
        query.sql.add(s);
        query.Parameters.ParamByName('s1').Value:=listview1.Items.Item[i].Caption;
        query.Parameters.ParamByName('s2').Value:=listview1.Items.Item[i].SubItems[0];
        query.Parameters.ParamByName('s3').Value:=listview1.Items.Item[i].SubItems[1];
        query.Parameters.ParamByName('s4').Value:=listview1.Items.Item[i].SubItems[2];
        query.Parameters.ParamByName('s5').Value:=listview1.Items.Item[i].SubItems[3];
        query.Parameters.ParamByName('s6').Value:=listview1.Items.Item[i].SubItems[4];
        query.Parameters.ParamByName('s7').Value:=listview1.Items.Item[i].SubItems[5];
        query.Parameters.ParamByName('s8').Value:=listview1.Items.Item[i].SubItems[6];
        query.Parameters.ParamByName('s9').Value:=listview1.Items.Item[i].SubItems[7];
        query.Parameters.ParamByName('s10').Value:=listview1.Items.Item[i].SubItems[8];
        query.Parameters.ParamByName('s11').Value:=listview1.Items.Item[i].SubItems[9];
        query.Parameters.ParamByName('s12').Value:=listview1.Items.Item[i].SubItems[10];
        query.Parameters.ParamByName('s13').Value:=listview1.Items.Item[i].SubItems[11];
        query.Parameters.ParamByName('s14').Value:=listview1.Items.Item[i].SubItems[12];
        


        DataModuleADO.ADOConnection1.BeginTrans;
        query.execsql;
        DataModuleADO.ADOConnection1.CommitTrans;
    end;

    query.Close;
    query.Free;

    sFilep:='RealtyB35.fr3';

    sTitlep:=Caption;
    sPrintc:='select * from temp';
    f_RealtyPrint1:=Tf_RealtyPrint1.Create(self);
    f_RealtyPrint1.showmodal;
end;

procedure Tf_RealtyB35.FormCreate(Sender: TObject);
begin
    DateTimePicker1.Date:=date;
    DateTimePicker2.Date:=date;    
end;

end.

⌨️ 快捷键说明

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