realtya26.pas

来自「物业管理系统系统特点 一、 实现集中式管理 系统将集团公司、」· PAS 代码 · 共 787 行 · 第 1/2 页

PAS
787
字号
unit RealtyA26;

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_RealtyA26 = class(TForm)
    Label1: TLabel;
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    CheckBox1: TCheckBox;
    Edit1: TEdit;
    GroupBox2: TGroupBox;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    GroupBox3: TGroupBox;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Edit9: TEdit;
    Edit10: TEdit;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    Edit11: TEdit;
    Edit12: TEdit;
    Edit13: TEdit;
    ComboBox3: TComboBox;
    ComboBox4: TComboBox;
    Edit14: TEdit;
    Edit15: TEdit;
    Button1: TButton;
    Button2: TButton;
    Label16: TLabel;
    Label22: TLabel;
    Label23: TLabel;
    Label24: TLabel;
    Label25: TLabel;
    edit2: TComboBox;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure GetID;
    procedure Button3Click(Sender: TObject);
    procedure Edit3Exit(Sender: TObject);
    procedure Edit4Exit(Sender: TObject);
    procedure Edit5Exit(Sender: TObject);
    procedure Edit6Exit(Sender: TObject);
    procedure Edit7Exit(Sender: TObject);
    procedure Edit8Exit(Sender: TObject);
    procedure ComboBox1Select(Sender: TObject);
    procedure ComboBox4Select(Sender: TObject);
    procedure ComboBox2Select(Sender: TObject);
    procedure ComboBox3Select(Sender: TObject);

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

implementation

uses data, main,Car4s931;
{$R *.dfm}

//Initial**************************************
procedure Tf_RealtyA26.FormCreate(Sender: TObject);
var
    query:TADOquery;
begin
    query:=TADOquery.Create(nil);
    query.Connection:=DataModuleADO.ADOConnection1;

    edit1.Text:='-';

    query.SQL.Add('select * from 楼宇');
    query.Open;
    while not query.Eof do
    begin
        edit2.Items.Add(query.fieldbyname('编号').Value+'--'+query.fieldbyname('名称').Value);
        query.Next;
    end;

    combobox1.Items.Add('新增房型');
    query.sql.clear;
    query.SQL.Add('select distinct 名称 from 辅助资料 where 类别='''+'房型'+'''');
    query.Open;
    while not query.Eof do
    begin
        combobox1.Items.Add(query.fieldbyname('名称').Value);
        query.Next;
    end;

    combobox2.Items.Add('新增朝向');
    query.sql.clear;
    query.SQL.Add('select distinct 名称 from 辅助资料 where 类别='''+'朝向'+'''');
    query.Open;
    while not query.Eof do
    begin
        combobox2.Items.Add(query.fieldbyname('名称').Value);
        query.Next;
    end;

    combobox3.Items.Add('新增权属类型');
    query.sql.clear;
    query.SQL.Add('select distinct 名称 from 辅助资料 where 类别='''+'权属类型'+'''');
    query.Open;
    while not query.Eof do
    begin
        combobox3.Items.Add(query.fieldbyname('名称').Value);
        query.Next;
    end;

    combobox4.Items.Add('新增用途');
    query.sql.clear;
    query.SQL.Add('select distinct 名称 from 辅助资料 where 类别='''+'用途'+'''');
    query.Open;
    while not query.Eof do
    begin
        combobox4.Items.Add(query.fieldbyname('名称').Value);
        query.Next;
    end;
    query.Close;
    query.free;
end;

procedure Tf_RealtyA26.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 sNum := '000000'+inttostr(i)
        else if (i > 9) and (i<100) then sNum := '00000'+inttostr(i)
        else if (i > 99) and (i<1000) then sNum := '0000'+inttostr(i)
        else if (i > 999) and (i<10000) then sNum := '000'+inttostr(i)
        else if (i > 9999) and (i<100000) then sNum := '00'+inttostr(i)
        else if (i > 99999) and (i<1000000) then sNum := '0'+inttostr(i)
        else if i>999999 then sNum := inttostr(i);
    end
    else  sNum := '0000001';

    query.Close;
    query.free;
end;

//Add******************************************
procedure Tf_RealtyA26.Button1Click(Sender: TObject);
var
    query,query1:TADOquery;
    t3,t4,t7,t8,s,ss,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,r1,r2,r3,r4:string;
    nStatus,i,j,k:integer;
begin
    //Edit3.Text:= chr(65);
    //Edit4.Text:= inttostr(ord(s[1]));

    //s1:=Edit3.Text;
    //s:=mainform.StdInt(Edit3.Text);

    //showmessage(getStatus(Edit3.text));


    t3:=Edit3.Text;
    t4:=Edit4.Text;
    t7:=Edit7.Text;
    t8:=Edit8.Text;

    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;
    if edit6.Text='' then
    begin
        showmessage('楼层号不能为空!');
        edit6.SetFocus;
        exit;
    end;
    if edit7.Text='' then
    begin
        showmessage('房间号不能为空!');
        edit5.SetFocus;
        exit;
    end;
    if edit8.Text='' then
    begin
        showmessage('房间号不能为空');
        edit8.SetFocus;
        exit;
    end;
    if edit10.Text='' then edit10.text:='-';

    r1:='-';
    r2:='-';
    r3:='-';
    r4:='-';

    if combobox1.Text<>'' then r1:=combobox1.Text;
    if combobox2.Text<>'' then r2:=combobox2.Text;
    if combobox3.Text<>'' then r3:=combobox3.Text;
    if combobox4.Text<>'' then r4:=combobox4.Text;

    if edit13.Text='' then edit13.Text:='-';
    if edit14.Text='' then edit14.Text:='-';
    if edit15.Text='' then edit15.Text:='-';


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

    if checkbox1.Checked then ss:=''
    else ss:=edit1.Text;

    query.SQL.Add('select * from 楼宇 where 编号='''+mainform.getNum(edit2.Text)+'''');
    query.Open;
    if query.RecordCount>0 then
    begin
         s1:=query.fieldbyname('管理处').Value;
         s2:=query.fieldbyname('管理区').Value;
         s3:=query.fieldbyname('编号').Value;
    end;





    {Edit3.Text:=mainform.StdInt(Edit3.Text);
    Edit4.Text:=mainform.StdInt(Edit4.Text);
    Edit5.Text:=mainform.StdInt(Edit5.Text);
    Edit6.Text:=mainform.StdInt(Edit6.Text);
    Edit7.Text:=mainform.StdInt(Edit7.Text);
    Edit8.Text:=mainform.StdInt(Edit8.Text);      }

    if (getStatus(Edit3.Text)='0') and (getStatus(Edit4.Text)='0') and (getStatus(Edit5.Text)='0') and (getStatus(Edit6.Text)='0') and (getStatus(Edit7.Text)='0')  and (getStatus(Edit8.Text)='0') then
    begin
    for i:=strtoint(edit3.Text) to strtoint(edit4.Text) do
    begin
        for  j:=strtoint(edit5.Text) to strtoint(edit6.Text) do
        begin
            for  k:=strtoint(edit7.Text) to strtoint(edit8.Text) do
            begin
                getID;
                s4:=inttostr(i);
                s5:=inttostr(j);
                s6:=inttostr(k);
                if k<10 then s6:='0'+inttostr(k);

                s6:=s4+ss+s5+ss+s6;

                s6:=Edit9.text+s6;

                s:='select * from 房间 where 编号='''+sNum;
                s:=s+'''';

                query.sql.Clear;
                query.SQL.Add(s);
                query.Open;
                //if query.RecordCount>0 then   break;
                if query.RecordCount=0 then
                begin

                s:='insert into  房间(编号,名称,管理处,管理区,楼宇,';
                s:=s+'房型,单元号,楼层号,朝向,建筑面积,';
                s:=s+'使用面积,地址,权属类型,用途,装修情况,';
                s:=s+'配套设施,说明)';
                s:=s+' Values(:s1,:s2,:s3,:s4,:s5,';
                s:=s+':s6,:s7,:s8,:s9,:s10,';
                s:=s+':s11,:s12,:s13,:s14,:s15,';
                s:=s+':s16,:s17)';

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

                query.Parameters.ParamByName('s1').Value:=sNum;
                query.Parameters.ParamByName('s2').Value:=s6;
                query.Parameters.ParamByName('s3').Value:=s1;
                query.Parameters.ParamByName('s4').Value:=s2;
                query.Parameters.ParamByName('s5').Value:=s3;

                query.Parameters.ParamByName('s6').Value:=r1;
                query.Parameters.ParamByName('s7').Value:=s4;
                query.Parameters.ParamByName('s8').Value:=s5;
                query.Parameters.ParamByName('s9').Value:=r2;
                query.Parameters.ParamByName('s10').Value:=mainform.stddou2(edit11.Text);

                query.Parameters.ParamByName('s11').Value:=mainform.stddou2(edit12.Text);
                query.Parameters.ParamByName('s12').Value:=edit10.Text;
                query.Parameters.ParamByName('s13').Value:=r3;
                query.Parameters.ParamByName('s14').Value:=r4;
                query.Parameters.ParamByName('s15').Value:=edit13.Text;

                query.Parameters.ParamByName('s16').Value:=edit14.Text;
                query.Parameters.ParamByName('s17').Value:=edit15.Text;

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




    {if (getStatus(Edit3.Text)='0') and (getStatus(Edit4.Text)='0') and (getStatus(Edit5.Text)='0') and (getStatus(Edit6.Text)='0') and (getStatus(Edit7.Text)='0')  and (getStatus(Edit8.Text)='0') then
    begin
        Edit3.text:=mainform.stdint(Edit3.text);
        Edit4.text:=mainform.stdint(Edit4.text);
        Edit5.text:=mainform.stdint(Edit5.text);
        Edit6.text:=mainform.stdint(Edit6.text);
        Edit7.text:=mainform.stdint(Edit7.text);
        Edit8.text:=mainform.stdint(Edit8.text);

        for i:=ord(t3[1]) to ord(t4[1]) do
        begin
            for  j:=strtoint(edit5.Text) to strtoint(edit6.Text) do
            begin
                for  k:=ord(t7[1]) to ord(t8[1]) do
                begin
                    getID;
                    //s4:=inttostr(i);
                    //s5:=inttostr(j);
                    //s6:=inttostr(i)+ss+inttostr(j)+ss+inttostr(k);

                    s4:=chr(i);
                    s5:=inttostr(j);
                    s6:=chr(i)+ss+inttostr(j)+ss+chr(k);

⌨️ 快捷键说明

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