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

📄 realtyg61a.pas

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

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_RealtyG61A = class(TForm)
    L1: TLabel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    edit3: TEdit;
    edit5: TEdit;
    edit4: TDateTimePicker;
    Label6: TLabel;
    edit1: TEdit;
    Label7: TLabel;
    Label8: TLabel;
    edit6: TEdit;
    edit2: TComboBox;
    edit7: TMemo;
    Label5: TLabel;
    edit8: TMemo;
    Label9: TLabel;
    edit9: TMemo;
    Label10: TLabel;
    edit10: TMemo;
    Button1: TButton;
    Button2: TButton;
    Button7: TButton;
    Button5: TButton;
    Label13: TLabel;
    Edit13: TEdit;
    Button3: TButton;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure ToolButton10Click(Sender: TObject);
    procedure getId;
    procedure Button1Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure edit2Select(Sender: TObject);

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

var
  f_RealtyG61A: Tf_RealtyG61A;
  sNum:string;

implementation

uses data, main,Car4s931,RealtyG61,RealtyL23,realtyI11C;

{$R *.dfm}

procedure Tf_RealtyG61A.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';
    query.Close;
    query.Free;

end;

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

    edit2.Items.Add('新增事件类型');
    
    query.SQL.Add('select * from 辅助资料 where 类别='''+'事件类型'+'''');
    query.Open;
    while not query.eof do
    begin
        edit2.Items.Add(query.fieldbyname('名称').Value);
        query.Next;
    end;

    if f_RealtyG61.bNew=true then
    begin
        getId;
        edit4.Date:=date;
    end
    else
    begin
        if f_RealtyG61.ListView1.Selected.SubItems[10]='Y' then button7.Enabled:=false;
        query.SQL.Clear;
        query.SQL.Add('select * from 治安事件 where 编号='''+f_RealtyG61.listview1.selected.SubItems[9]+'''');
        query.Open;
        if query.RecordCount>0 then
        begin
            edit1.Text:=query.fieldbyname('编号').Value;
            edit2.ItemIndex:=edit2.Items.IndexOf(query.fieldbyname('事件类型').Value);
            edit3.TEXT:=query.fieldbyname('处理人').Value;
            edit4.date:=strtodate(query.fieldbyname('发生时间').Value);
            edit5.text:=query.fieldbyname('责任人').Value;
            edit6.text:=query.fieldbyname('发生地点').Value;
            edit7.text:=query.fieldbyname('发生原因').Value;
            edit8.text:=query.fieldbyname('具体情况').Value;
            edit9.Text:=query.fieldbyname('处理结果').Value;
            edit10.Text:=query.fieldbyname('备注').Value;
            edit13.Text:=query.fieldbyname('组织机构').Value+'--'+mainform.getName('组织机构',query.fieldbyname('组织机构').Value);
        end;
        query.close;
        query.free;
    end;
end;

//Tab
procedure Tf_RealtyG61A.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_RealtyG61A.Button2Click(Sender: TObject);
begin
    f_RealtyL23:=Tf_RealtyL23.Create(self);
    f_RealtyL23.Button2.Visible:=true;
    f_RealtyL23.ShowModal;

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

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

procedure Tf_RealtyG61A.Button1Click(Sender: TObject);
begin
    f_RealtyL23:=Tf_RealtyL23.Create(self);
    f_RealtyL23.Button2.Visible:=true;
    f_RealtyL23.ShowModal;

    if  f_RealtyL23.bOk=true then
    begin
       edit5.Text:=f_RealtyL23.sName;
    end;
end;

procedure Tf_RealtyG61A.Button7Click(Sender: TObject);
VAR
    query,query1:TADOQuery;
    s,ss:string;
begin
    ss:=mainform.getnum(edit13.text);
     if Edit2.Text='' then
     begin
         showmessage('请选择事件类型。');
         Edit2.SetFocus;
         exit;
      end;

     if Edit3.Text='' then
     begin
         showmessage('处理人不能为空。');
         Edit3.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('发生原因不能为空。');
         Edit7.SetFocus;
         exit;
      end;

     if Edit9.Text='' then
     begin
         showmessage('处理结果不能为空。');
         Edit9.SetFocus;
         exit;
      end;

      if Edit13.Text='' then
     begin
         showmessage('请选择组织机构。');
         Edit13.SetFocus;
         exit;
      end;

      if edit8.text='' then edit8.Text:='-';
      if edit10.text='' then edit10.Text:='-';

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


      if f_RealtyG61.bNew=true then
      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+'具体情况,处理结果,备注,组织机构,审核) 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:=Edit2.text;
          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:=trim(Edit7.text);
          query.Parameters.ParamByName('s8').Value:=trim(Edit8.Text);
          query.Parameters.ParamByName('s9').Value:=trim(Edit9.Text);
          query.Parameters.ParamByName('s10').Value:=trim(Edit9.Text);
          query.Parameters.ParamByName('s11').Value:=ss;
          query.Parameters.ParamByName('s12').Value:='N';

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

          showmessage('保存成功。');


          query.SQL.Clear;
          query.SQL.Add('select * from 治安事件 where 编号='''+edit1.Text+'''');
          query.Open;
          if query.RecordCount>0 then
          begin
              with f_RealtyG61.listview1.Items.Add do
              begin
                  caption:=query.fieldbyname('事件类型').Value;
                  subitems.Add(query.fieldbyname('发生时间').Value);
                  subitems.Add(query.fieldbyname('责任人').Value);

                  query1.SQL.Add('select * from 职员 where 名称='''+query.fieldbyname('责任人').Value+''' ');
                  query1.Open;
                  if query1.recordcount>0 then
                  begin
                      subitems.Add(query1.fieldbyname('岗位').Value);
                  end
                  else
                  begin
                      subitems.Add('');
                  end;
                  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(mainform.getName('组织机构',query.fieldbyname('组织机构').value));
                  subitems.Add(query.fieldbyname('编号').Value);
                  subitems.Add(query.fieldbyname('审核').Value);
              end;
          end;
          query1.close;
          query1.free;
          query.Close;
          query.Free;

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


          //清空,新增
          getId;
          edit4.date:=date;
          edit3.Text:='';
          edit2.ItemIndex:=edit2.Items.IndexOf('');
          edit5.text:='';
          edit6.text:='';
          edit7.text:='';
          edit8.Text:='';
          edit9.text:='';
          edit10.text:='';
          edit13.text:='';
          edit1.SetFocus;

    end;


    if f_RealtyG61.bNew=false then
    begin
        s:='update 治安事件 set 编号='''+edit1.text;
        s:=s+''',事件类型='''+edit2.text;
        s:=s+''',处理人='''+edit3.text;
        s:=s+''',发生时间='''+datetostr(edit4.date);
        s:=s+''',责任人='''+edit5.text;
        s:=s+''',发生地点='''+edit6.text;
        s:=s+''',发生原因='''+edit7.text;
        s:=s+''',具体情况='''+edit8.text;
        s:=s+''',处理结果='''+edit9.text;
        s:=s+''',备注='''+edit10.text;
        s:=s+''',组织机构='''+ss;
        s:=s+''' where 编号='''+f_RealtyG61.ListView1.Selected.SubItems[9]+'''';

        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;
        if query.RecordCount>0 then
        begin
            with f_RealtyG61.listview1.Selected do
            begin
                caption:=query.fieldbyname('事件类型').Value;
                subitems[0]:=query.fieldbyname('发生时间').Value;
                subitems[1]:=query.fieldbyname('责任人').Value;

                query1.SQL.Add('select * from 职员 where 名称='''+query.fieldbyname('责任人').Value+''' ');
                query1.Open;
                if query1.recordcount>0 then
                begin
                    subitems[2]:=query1.fieldbyname('岗位').Value;
                end
                else
                begin
                    subitems[2]:='';
                end;
                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]:=mainform.getName('组织机构',query.fieldbyname('组织机构').value);
                subitems[9]:=query.fieldbyname('编号').Value;
                subitems[10]:=query.fieldbyname('审核').Value;
            end;
        end;
        query1.close;
        query1.free;
        query.Close;
        query.Free;
        close;
    end;
end;

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

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

    if  f_realtyI11C.bOk=true then
    begin
        edit13.Text:=f_realtyI11C.ListView1.Selected.Caption+'--'+f_realtyI11C.ListView1.Selected.SubItems[0];
    end;
end;

procedure Tf_RealtyG61A.edit2Select(Sender: TObject);
begin
    if edit2.Text='新增事件类型' then
    begin
        mainform.t1:='事件类型';
        f_Car4s931:=Tf_Car4s931.Create(self);
        f_Car4s931.showmodal;

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

end.

⌨️ 快捷键说明

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