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

📄 realtyf13.pas

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

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_RealtyF13 = class(TForm)
    L1: TLabel;
    L2: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    edit5: TEdit;
    Edit3: TEdit;
    Label1: TLabel;
    Label5: TLabel;
    ListView1: TListView;
    Button1: TButton;
    Button3: TButton;
    Label19: TLabel;
    Label4: TLabel;
    Label6: TLabel;
    edit4: TDateTimePicker;
    edit6: TEdit;
    edit7: TDateTimePicker;
    Label8: TLabel;
    edit8: TEdit;
    Label11: TLabel;
    edit9: TEdit;
    edit10: TMemo;
    edit11: TMemo;
    Label13: TLabel;
    Edit12: TEdit;
    Edit13: TEdit;
    Label14: TLabel;
    Edit14: TEdit;
    Label15: TLabel;
    PopupMenu1: TPopupMenu;
    N4: TMenuItem;
    N8: TMenuItem;
    N10: TMenuItem;
    Button2: TButton;
    Button7: TButton;
    Button5: TButton;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);

    procedure Button1Click(Sender: TObject);
    procedure ToolButton10Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure getId;
    procedure FormCreate(Sender: TObject);
    procedure ToolButton5Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure ToolButton7Click(Sender: TObject);
    procedure ToolButton6Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure N10Click(Sender: TObject);
    procedure ListView1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Button2Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);


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

var
  f_RealtyF13: Tf_RealtyF13;
  sNum:string;

implementation

uses data, main,RealtyF13A,RealtyB22,RealtyA14,realtyC62;

{$R *.dfm}

//新增  1
procedure Tf_RealtyF13.ToolButton5Click(Sender: TObject);
begin
    //    
end;

//查看  2
procedure Tf_RealtyF13.ToolButton4Click(Sender: TObject);
begin
    //
end;

//删除  3
procedure Tf_RealtyF13.ToolButton7Click(Sender: TObject);
begin
     //
end;

//复制  5
procedure Tf_RealtyF13.ToolButton6Click(Sender: TObject);
begin
    //
end;

//关闭  7
procedure Tf_RealtyF13.ToolButton10Click(Sender: TObject);
begin

    close;
end;




//公共函数**************************************************

//初始化 一
procedure Tf_RealtyF13.FormCreate(Sender: TObject);
begin
    edit4.date:=date;
    edit7.date:=date;
    getId;
    edit12.text:=czy;
end;

//Tab
procedure Tf_RealtyF13.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_RealtyF13.getid;
var
    i:integer;
    query:TADOQuery;
    s:string;
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 edit1.text := '000000'+inttostr(i)
        else if (i > 9) and (i<100) then edit1.text := '00000'+inttostr(i)
        else if (i > 99) and (i<1000) then edit1.text := '0000'+inttostr(i)
        else if (i > 999) and (i<10000) then edit1.text := '000'+inttostr(i)
        else if (i > 9999) and (i<100000) then edit1.text := '00'+inttostr(i)
        else if (i > 99999) and (i<1000000) then edit1.text := '0'+inttostr(i)
        else if i>999999 then edit1.text := inttostr(i);
    end
    else  edit1.text := '0000001';
end;




//取设备类别---------------
procedure Tf_RealtyF13.Button1Click(Sender: TObject);
begin
    f_RealtyB22:=Tf_RealtyB22.Create(self);
    f_RealtyB22.ToolButton6.Visible:=true;
    f_RealtyB22.ShowModal;

    if  f_RealtyB22.bOk=true then
    begin
        edit3.Text:=f_RealtyB22.sName;
    end;
end;

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

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



procedure Tf_RealtyF13.N4Click(Sender: TObject);
begin
    bNew:=true;
    f_RealtyF13A:=Tf_RealtyF13A.Create(self);
    f_RealtyF13A.ShowModal;
end;

procedure Tf_RealtyF13.N8Click(Sender: TObject);
begin
    if listview1.SelCount=0 then exit;

    bnew:=false;
    f_RealtyF13A:=Tf_RealtyF13A.Create(self);
    f_RealtyF13A.ShowModal;
end;

procedure Tf_RealtyF13.N10Click(Sender: TObject);
begin
    if listview1.SelCount=0 then exit;

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

    listview1.selected.delete;

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

procedure Tf_RealtyF13.ListView1MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
    if button=mbright then
    popupmenu1.Popup(mouse.CursorPos.X,mouse.CursorPos.Y);
end;

procedure Tf_RealtyF13.Button2Click(Sender: TObject);
begin
    f_realtyC62:=Tf_realtyC62.Create(self);
    f_realtyC62.ToolButton4.Visible:=true;
    f_realtyC62.ShowModal;

    if  f_realtyC62.bOk=true then
    begin
        edit5.Text:=f_realtyC62.sNum;
    end;
end;

procedure Tf_RealtyF13.Button7Click(Sender: TObject);
var
  i,j:integer;
  s,s1,s2,s3,s4:string;
  Query:TADOQuery;
  d,d1,d2:double;
begin
    s4:=copy(edit2.Text,1,7);

    if Edit1.Text='' then
    begin
        showmessage('请输入单号。');
        Edit1.SetFocus;
        exit;
    end;

    if Edit2.Text='' then
    begin
        showmessage('请选择房间。');
        Edit2.SetFocus;
        exit;
    end;

    if Edit3.Text='' then
    begin
        showmessage('请选择客户。');
        Edit3.SetFocus;
        exit;
    end;

    edit5.text:=mainform.StdDou2(edit5.text);

    If Edit5.Text = '' Then Edit5.Text := '0.00';

    If Edit8.Text = '' Then Edit8.Text := '-';
    If Edit9.Text = '' Then Edit9.Text := '-';
    If Edit10.Text = '' Then Edit10.Text := '-';
    If Edit11.Text = '' Then Edit11.Text := '-';


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

    query.SQL.Clear;
    query.SQL.Add('select * from 装修申请 where 单号='''+edit1.Text+'''');
    query.Open;
    if query.RecordCount>0 then
    begin
        showmessage('单号重复');
        edit1.SetFocus;
        query.Close; //******************************必须
        query.Free;  //******************************必须
        exit;
    end;

    s := 'insert into 装修申请(单号,房间,客户,装修开始时间,装修保证金,装修公司,拟结束时间,施工负责人,';
    s:=s+'联系电话,装修项目,备注,操作员) values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11,:s12)';

    query.sql.Clear ;
    query.sql.add(s);
    query.Parameters.ParamByName('s1').Value:=trim(Edit1.Text);
    query.Parameters.ParamByName('s2').Value:=trim(s4);
    query.Parameters.ParamByName('s3').Value:=trim(Edit3.Text);
    query.Parameters.ParamByName('s4').Value:=datetostr(Edit4.date);
    query.Parameters.ParamByName('s5').Value:=trim(Edit5.Text);
    query.Parameters.ParamByName('s6').Value:=trim(Edit6.text);
    query.Parameters.ParamByName('s7').Value:=datetostr(Edit7.date);
    query.Parameters.ParamByName('s8').Value:=trim(Edit8.Text);
    query.Parameters.ParamByName('s9').Value:=trim(Edit9.Text);
    query.Parameters.ParamByName('s10').Value:=trim(Edit10.Text);
    query.Parameters.ParamByName('s11').Value:=trim(Edit11.Text);
    query.Parameters.ParamByName('s12').Value:=trim(Edit12.Text);

    DataModuleADO.ADOConnection1.BeginTrans;
    query.execsql;
    DataModuleADO.ADOConnection1.CommitTrans;
    for i:=0 to listview1.Items.Count-1 do
    begin
        if listview1.Items.Item[i].Caption='' then listview1.Items.Item[i].Caption:='-';
        if listview1.Items.Item[i].SubItems[1]='' then listview1.Items.Item[i].SubItems[1]:='-';

        listview1.Items.Item[i].SubItems[0]:=mainform.StdDou2(listview1.Items.Item[i].SubItems[0]);


        s:='insert into 装修收费(收费项目,收费金额,收费时间,单号) values(:s1,:s2,:s3,:s4)';
        query.SQL.Clear;
        query.SQL.Add(s);
        query.Parameters.ParamByName('s1').Value:=trim(listview1.Items.Item[i].Caption);
        query.Parameters.ParamByName('s2').Value:=strtofloat(listview1.Items.Item[i].SubItems[0]);
        query.Parameters.ParamByName('s3').Value:=trim(listview1.Items.Item[i].SubItems[1]);
        query.Parameters.ParamByName('s4').Value:=trim(edit1.Text);

        DataModuleADO.ADOConnection1.BeginTrans;
        query.ExecSQL;
        DataModuleADO.ADOConnection1.CommitTrans;
    end;
    query.Close;
    query.Free;

    showmessage('保存成功');

    getId;
    edit2.Text:='';
    edit3.Text:='';
    edit5.Text:='';
    edit4.date:=date;
    edit6.text:='';
    edit7.date:=date;
    edit8.Text:='';
    edit9.Text:='';
    edit10.Text:='';
    edit11.Text:='';
    listview1.Items.Clear;

    Edit1.SetFocus;


end;

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

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

end.


⌨️ 快捷键说明

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