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

📄 realtyc561.pas

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

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_RealtyC561 = class(TForm)
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label4: TLabel;
    Edit5: TEdit;
    edit4: TComboBox;
    Edit6: TEdit;
    Edit8: TEdit;
    Edit7: TEdit;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label16: TLabel;
    Label2: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Edit9: TEdit;
    Label19: TLabel;
    DateTimePicker1: TDateTimePicker;
    Memo1: TMemo;
    Edit10: TEdit;
    Label3: TLabel;
    Button5: TButton;
    Button7: TButton;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure NN6Click(Sender: TObject);
    procedure GetID;
    procedure FormCreate(Sender: TObject);
    procedure ToolButton10Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure edit4Select(Sender: TObject);

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


var
  f_RealtyC561: Tf_RealtyC561;
implementation
uses data, main,RealtyC56,realtyI11C,RealtyB22,realtyC21,Car4s931;

{$R *.dfm}
//Initial******************************
procedure Tf_RealtyC561.FormCreate(Sender: TObject);
Var
    query,query1:TADOQuery;
    s,s1:string;
begin
    query:=TADOQuery.Create(nil);
    query.Connection:=DataModuleADO.ADOConnection1;
    query1:=TADOQuery.Create(nil);
    query1.Connection:=DataModuleADO.ADOConnection1;

    edit4.items.add('新增结算方式');
    query.SQL.Add('select * from 辅助资料 where 类别='''+'结算方式'+'''');
    query.Open;
    while not query.Eof do
    begin
        Edit4.Items.Add(query.fieldbyname('名称').Value);
        query.Next;
    end;

    if f_RealtyC56.bMod=false then
    begin
        GetID;
        Datetimepicker1.Date:=date;
        edit9.text:=czy;
    end;
    if f_RealtyC56.bMod then
    begin
        if f_RealtyC56.ListView1.Selected.SubItems[10]='Y' then button7.Enabled:=false;
        
        query.sql.Clear;
        query.SQL.add('select * from 其他收款单 where 单号='''+f_RealtyC56.ListView1.Selected.Caption+'''');
        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 s1:=query1.fieldbyname('客户名称').value;

            edit1.Text:=query.fieldbyname('单号').Value;
            edit2.Text:=query.fieldbyname('客户').Value+'--'+s1;
            datetimepicker1.date:=strtodate(query.fieldbyname('收款日期').Value);
            edit4.ItemIndex:=edit4.Items.IndexOf(query.fieldbyname('结算方式').Value);
            edit3.Text:=query.fieldbyname('收费项目').Value;

            edit5.Text:=query.fieldbyname('收款金额').Value;
            edit6.Text:=query.fieldbyname('收据号').Value;
            edit7.Text:=query.fieldbyname('发票号').Value;
            edit8.Text:=query.fieldbyname('组织机构').Value;
            Memo1.Lines.Text:=query.fieldbyname('备注').Value;

            edit9.Text:=query.fieldbyname('制单人').Value;
            edit10.Text:=query.fieldbyname('修订人').Value;
        end;
    end;
    query.close;
    query.free;
end;

procedure Tf_RealtyC561.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 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';

    query.Close;
    query.free;
end;

//Tab****************************************
procedure Tf_RealtyC561.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;

//FreeForm**********************************
procedure Tf_RealtyC561.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    Action := caFree;
end;

//Close*************************************
procedure Tf_RealtyC561.NN6Click(Sender: TObject);
begin
    close;
end;

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

procedure Tf_RealtyC561.Button7Click(Sender: TObject);
Var
    query,query1:TADOQuery;
    s,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,stemp,stemp1,stemp2,r1:string;
    i,j:integer;
begin
    r1:=mainform.getNum(edit2.text);
    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;

    if edit4.Text='' then
    begin
        showmessage('结算方式不能为空!');
        edit4.SetFocus;
        exit;
    end;

    if edit5.Text='' then
    begin
        showmessage('收款金额不能为空!');
        edit5.SetFocus;
        exit;
    end;

    edit5.Text:=mainform.StdDou2(edit5.Text);
    if edit6.text='' then edit6.Text:='-';

    if edit8.text='' then edit8.Text:='-';
    if edit7.text='' then edit7.Text:='-';
    if edit9.text='' then edit9.Text:='-';
    if edit10.text='' then edit10.Text:='-';
    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_RealtyC56.bMod then
    begin
        s:='update 其他收款单 set 单号='''+edit1.Text;
        s:=s+''',收款日期='''+datetostr(datetimepicker1.Date);
        s:=s+''',客户='''+r1;
        s:=s+''',结算方式='''+edit4.Text;
        s:=s+''',收费项目='''+edit3.Text;

        s:=s+''',收款金额='+edit5.Text;
        s:=s+',收据号='''+edit6.Text;
        s:=s+''',发票号='''+edit7.Text;
        s:=s+''',组织机构='''+edit8.Text;
        s:=s+''',备注='''+Memo1.Lines.Text;

        s:=s+''',制单人='''+edit9.Text;
        s:=s+''',修订人='''+edit10.Text;
        s:=s+''' where 单号='''+f_RealtyC56.ListView1.Selected.Caption+'''';

        query.SQL.Clear;
        query.sql.Add(s);

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

        query.sql.clear;
        Query.SQL.Add('select * from 其他收款单 where 单号 ='''+edit1.text+'''');
        Query.Open;
        while not Query.Eof do
        begin
            query1.sql.clear;
            Query1.SQL.Add('select * from 客户资料 where 客户代码 = '''+Query.FieldByName('客户').Value+'''');
            Query1.Open;
            if query1.recordcount>0 then s1:=query1.fieldbyname('客户名称').value;

             with f_RealtyC56.Listview1.Selected do
             begin
                  Caption:=Query.FieldByName('单号').Value;
                  SubItems[0]:=Query.FieldByName('收据号').Value;
                  SubItems[1]:=s1;
                  SubItems[2]:=Query.FieldByName('收款日期').Value;

                  SubItems[3]:=Query.FieldByName('收款金额').Value;
                  SubItems[4]:=Query.FieldByName('结算方式').Value;
                  SubItems[5]:=Query.FieldByName('收费项目').Value;
                  SubItems[6]:=Query.FieldByName('制单人').Value;
                  SubItems[7]:=Query.FieldByName('修订人').Value;
                  SubItems[8]:=Query.FieldByName('备注').Value;
                  SubItems[9]:=Query.FieldByName('组织机构').Value;
                  SubItems[10]:=Query.FieldByName('审核').Value;
             end;
             query.Next;
        end;

        query.close;
        query.free;
        close;
    end
    else
    begin
        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+'收款金额,发票号,收据号,备注,制单人,';
        s:=s+'修订人,组织机构)';
        s:=s+'values (:s1,:s2,:s3,:s4,:s5,';
        s:=s+':s6,:s7,:s8,:s9,:s10,';
        s:=s+':s11,:s12)';

        query.SQL.Clear;
        query.SQL.Add(s);

        query.Parameters.ParamByName('s1').Value:=edit1.Text;
        query.Parameters.ParamByName('s2').Value:=datetostr(datetimepicker1.date);
        query.Parameters.ParamByName('s3').Value:=r1;
        query.Parameters.ParamByName('s4').Value:=edit4.text;
        query.Parameters.ParamByName('s5').Value:=edit3.text;
        query.Parameters.ParamByName('s6').Value:=strtofloat(edit5.text);
        query.Parameters.ParamByName('s7').Value:=edit7.text;
        query.Parameters.ParamByName('s8').Value:=edit6.text;
        query.Parameters.ParamByName('s9').Value:=Memo1.Lines.Text;
        query.Parameters.ParamByName('s10').Value:=edit9.text;
        query.Parameters.ParamByName('s11').Value:=edit10.text;
        query.Parameters.ParamByName('s12').Value:=edit8.text;

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

        showmessage('保存成功');

        query.sql.clear;
        Query.SQL.Add('select * from 其他收款单 where 单号 = '''+edit1.text+'''');
        Query.Open;
        while not Query.Eof do
        begin
            query1.sql.clear;
            Query1.SQL.Add('select * from 客户资料 where 客户代码 = '''+Query.FieldByName('客户').Value+'''');
            Query1.Open;
            if query1.recordcount>0 then s1:=query1.fieldbyname('客户名称').value;

            with f_RealtyC56.Listview1.Items.Add do
            begin
                Caption:=Query.FieldByName('单号').Value;
                SubItems.Add(Query.FieldByName('收据号').Value);
                SubItems.Add(s1);
                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);
            end;
            query.Next;
        end;
        if f_RealtyC56.ListView1.Items.Count>0 then f_RealtyC56.ListView1.Items.Item[0].Selected:=true;
        query.Close;
        query.free;
        getid;
        edit2.text:='';
        edit3.text:='';
        edit4.ItemIndex:=edit4.Items.IndexOf('');
        edit5.text:='';
        edit6.text:='';
        edit7.text:='';
        edit9.text:=czy;
        edit8.text:='';
        edit10.text:='';
        Memo1.Lines.Text:='';
        datetimepicker1.date:=date;
    end;


end;

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

procedure Tf_RealtyC561.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
        edit2.Text:=f_RealtyB22.ListView1.Selected.Caption+'--'+f_RealtyB22.ListView1.Selected.SubItems[0];
    end;
    edit5.Text:='0.00';
end;

procedure Tf_RealtyC561.Button2Click(Sender: TObject);
begin
    f_realtyI11C:=Tf_realtyI11C.Create(self);
    f_RealtyI11C.button1.Visible:=true;
    f_realtyI11C.ShowModal;

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

procedure Tf_RealtyC561.Button3Click(Sender: TObject);
begin
    f_realtyC21:=Tf_realtyC21.Create(self);
    f_realtyC21.ToolButton1.Visible:=true;
    f_realtyC21.ShowModal;

    if  f_realtyC21.bOk=true then
    begin
        edit3.text:=f_realtyC21.snum;
    end;
end;

procedure Tf_RealtyC561.edit4Select(Sender: TObject);
begin
    if edit4.Text='新增结算方式' then
    begin
        mainform.t1:='结算方式';
        f_Car4s931:=Tf_Car4s931.Create(self);
        f_Car4s931.showmodal;

        if f_Car4s931.bOK=true then
        begin
            edit4.Items.Add(mainform.t1);
            edit4.ItemIndex:=edit4.Items.IndexOf(mainform.t1);
        end
        else edit4.ItemIndex:=edit4.Items.IndexOf('');
    end;
end;

end.

⌨️ 快捷键说明

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