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

📄 realtyb22.pas

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

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_RealtyB22 = class(TForm)
    GroupBox1: TGroupBox;
    ListView1: TListView;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    ToolButton2: TButton;
    ToolButton1: TButton;
    ToolButton3: TButton;
    ToolButton4: TButton;
    ToolButton5: TButton;
    ToolButton6: TButton;
    TreeView1: TTreeView;

    procedure ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);

    procedure FormCreate(Sender: TObject);

    procedure ToolButton1Click(Sender: TObject);

    procedure ToolButton5Click(Sender: TObject);
    procedure ToolButton6Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure TreeView1Click(Sender: TObject);
    procedure TreeView1CustomDrawItem(Sender: TCustomTreeView;
      Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
    procedure ToolButton3Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);

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

var
  f_RealtyB22: Tf_RealtyB22;
implementation
uses data, main,RealtyB22A,RealtyPrint1;
{$R *.dfm}


///////////////////////////////////////////////////////////通用代码-----------------------------
//初始化
procedure Tf_RealtyB22.FormCreate(Sender: TObject);
begin
    getStructure(TreeView1);
    TreeView1Click(Sender);
end;

//高亮
procedure Tf_RealtyB22.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_RealtyB22.TreeView1CustomDrawItem(Sender: TCustomTreeView;
  Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
    if Node.Selected=true then
    begin
        Sender.Canvas.Brush.Color := clMenuHighlight;
        (Sender as TTreeView).Canvas.Font.Color := clWhite;
    end;
end;

///////////////////////////////////////////////////////////功能代码-----------------------------
//取数据
procedure Tf_RealtyB22.TreeView1Click(Sender: TObject);
Var
    query,query1:TADOQuery;
    nLevel:integer;
    s,s1,s2,s3,s4:string;
begin
    listview1.Items.Clear;

    nLevel:=treeview1.Selected.Level;

    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;
    Query1:=TADOQuery.Create(nil);
    Query1.Connection:=DataModuleADO.ADOConnection1;

    if nLevel=0 then
    begin
        s:='select * from 客户资料 where 客户代码 like ''%'+Edit1.text;
        s:=s+'%'' and 客户名称 like ''%'+Edit2.text;
        s:=s+'%'' order by 客户代码 asc';

        query.SQL.Clear;
        Query.SQL.Add(s);
        Query.Open ;
        while not Query.Eof do
        begin
            with ListView1.Items.Add do
            begin
                Caption:=Query.FieldByName('客户代码').Value;
                SubItems.Add(Query.FieldByName('客户名称').Value);
                SubItems.Add(Query.FieldByName('联系人').Value);
                SubItems.Add(Query.FieldByName('电话').Value);
                SubItems.Add(Query.FieldByName('手机号').Value);
                SubItems.Add(Query.FieldByName('性别').Value);
                SubItems.Add(Query.FieldByName('客户类型').Value);
                SubItems.Add(Query.FieldByName('身份证号码').Value);
                SubItems.Add(Query.FieldByName('出生日期').Value);
                SubItems.Add(Query.FieldByName('文化程度').Value);
                SubItems.Add(Query.FieldByName('电子邮件').Value);
                SubItems.Add(Query.FieldByName('工作单位').Value);
                SubItems.Add(Query.FieldByName('传真').Value);
                SubItems.Add(Query.FieldByName('籍贯').Value);
                SubItems.Add(Query.FieldByName('地址').Value);
                SubItems.Add(Query.FieldByName('邮编').Value);
                SubItems.Add(Query.FieldByName('MSN').Value);
                SubItems.Add(Query.FieldByName('备注').Value);
                SubItems.Add(mainform.getName('组织机构',Query.FieldByName('管理处').Value));
            end;
            query.Next;
        end;
    end;     

    if nLevel>0 then
    begin
        s:='select * from 组织机构 where 名称 = '''+treeview1.Selected.Text+'''';

        query.SQL.Clear;
        Query.SQL.Add(s);
        Query.Open ;
        if query.RecordCount>0 then
        begin
            s1:=Query.FieldByName('stampt').Value;

            s:='select * from 组织机构 where 组织机构类别='''+'管理处';
            s:=s+''' and stampt like '''+s1+'%''';

            query1.SQL.Clear;
            Query1.SQL.Add(s);
            Query1.Open ;
            while not Query1.Eof do
            begin
                s:='select * from 客户资料 where 客户代码 like ''%'+Edit1.text;
                s:=s+'%'' and 客户名称 like ''%'+Edit2.text;
                s:=s+'%'' and 管理处 ='''+Query1.FieldByName('编号').Value;
                s:=s+''' order by 客户代码 asc';

                query.SQL.Clear;
                Query.SQL.Add(s);
                Query.Open ;
                while not Query.Eof do
                begin
                    with ListView1.Items.Add do
                    begin
                        Caption:=Query.FieldByName('客户代码').Value;
                        SubItems.Add(Query.FieldByName('客户名称').Value);
                        SubItems.Add(Query.FieldByName('联系人').Value);
                        SubItems.Add(Query.FieldByName('电话').Value);
                        SubItems.Add(Query.FieldByName('手机号').Value);
                        SubItems.Add(Query.FieldByName('性别').Value);
                        SubItems.Add(Query.FieldByName('客户类型').Value);
                        SubItems.Add(Query.FieldByName('身份证号码').Value);
                        SubItems.Add(Query.FieldByName('出生日期').Value);
                        SubItems.Add(Query.FieldByName('文化程度').Value);
                        SubItems.Add(Query.FieldByName('电子邮件').Value);
                        SubItems.Add(Query.FieldByName('工作单位').Value);
                        SubItems.Add(Query.FieldByName('传真').Value);
                        SubItems.Add(Query.FieldByName('籍贯').Value);
                        SubItems.Add(Query.FieldByName('地址').Value);
                        SubItems.Add(Query.FieldByName('邮编').Value);
                        SubItems.Add(Query.FieldByName('MSN').Value);
                        SubItems.Add(Query.FieldByName('备注').Value);
                        SubItems.Add(mainform.getName('组织机构',Query.FieldByName('管理处').Value));
                    end;
                    query.Next;
                end;

                query1.Next;
            end;
        end;
    end;



    query.close;
    query.Free;
    query1.close;
    query1.Free;

    if listview1.Items.Count>0 then listview1.Items.Item[0].Selected:=true;

end;

//查找
procedure Tf_RealtyB22.Button1Click(Sender: TObject);
begin
    TreeView1Click(Sender);
end;

//新增
procedure Tf_RealtyB22.ToolButton1Click(Sender: TObject);
begin
    bMod:=false;
    f_RealtyB22A:=Tf_RealtyB22A.Create(self);
    f_RealtyB22A.ShowModal;
    if listview1.Items.Count>0 then
    begin
        ToolButton2.Enabled:=true;
        ToolButton3.Enabled:=true;
        ToolButton4.Enabled:=true;
    end;
end;

//修改
procedure Tf_RealtyB22.ToolButton2Click(Sender: TObject);
begin
    if listview1.selcount=0 then exit;
    bMod:=true;
    f_RealtyB22A:=Tf_RealtyB22A.Create(self);
    f_RealtyB22A.ShowModal;
end;

//删除
procedure Tf_RealtyB22.ToolButton3Click(Sender: TObject);
Var
    query:TADOquery;
    s:string;
    i:integer;
begin
    if listview1.SelCount=0 then exit;



    if(Application.MessageBox(PChar('确认要删除所选记录吗?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=2) then exit;


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

    s:='delete from 客户资料账号 where 客户代码='''+listview1.Selected.Caption;
    s:=s+'''';

    DataModuleADO.ADOConnection1.BeginTrans;
    query.SQL.Text:=s;
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    s:='delete from 客户资料家庭成员 where 客户代码='''+listview1.Selected.Caption;
    s:=s+'''';

    DataModuleADO.ADOConnection1.BeginTrans;
    query.SQL.Text:=s;
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    s:='delete from 客户资料 where 客户代码='''+listview1.Selected.Caption;
    s:=s+'''';

    DataModuleADO.ADOConnection1.BeginTrans;
    query.SQL.Text:=s;
    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;

//打印
procedure Tf_RealtyB22.ToolButton4Click(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,列15,列16,列17,列18)';
        s:=s+'values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,';
        s:=s+':s11,:s12,:s13,:s14,:s15,:s16,:s17,:s18)';

        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];
        query.Parameters.ParamByName('s15').Value:=listview1.Items.Item[i].SubItems[13];
        query.Parameters.ParamByName('s16').Value:=listview1.Items.Item[i].SubItems[14];
        query.Parameters.ParamByName('s17').Value:=listview1.Items.Item[i].SubItems[15];
        query.Parameters.ParamByName('s18').Value:=listview1.Items.Item[i].SubItems[16];


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

    query.Close;
    query.Free;

    sFilep:='RealtyB22.fr3';

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

//退出
procedure Tf_RealtyB22.ToolButton5Click(Sender: TObject);
begin
    close;
end;

//确定
procedure Tf_RealtyB22.ToolButton6Click(Sender: TObject);
begin
    if listview1.selcount=0 then exit;

    bOk:=true;

    sNum:=listview1.selected.Caption;
    sName:=listview1.selected.subitems[0];

    close;
end;







procedure Tf_RealtyB22.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
    Action := caFree;
end;

end.

⌨️ 快捷键说明

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