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

📄 rab500_01.pas.svn-base

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
unit Rab500_01;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Db, Menus, ExtCtrls, Grids, ComCtrls, ToolWin,
  StdCtrls, Mask, DBCtrls, wwdbdatetimepicker, Buttons, Bas200_01, dxExEdtr,
  ADODB, FR_Desgn, dxCntner, dxTL, dxDBCtrl, dxDBGrid, ActnList, dxDBTLCl, dxGrClms,
  wwfltdlg, wwDialog, Wwlocate, Wwintl;

type
  TRab500_01Form = class(TBas200_01Form)
    dsRab100: TDataSource;
    Label1: TLabel;
    DBEdit1: TDBEdit;
    Label2: TLabel;
    Label3: TLabel;
    Label5: TLabel;
    Label8: TLabel;
    DBEdit4: TDBEdit;
    DBEdit5: TDBEdit;
    DBEdit6: TDBEdit;
    wwDBDateTimePicker1: TwwDBDateTimePicker;
    CheckBox1: TCheckBox;
    Edit1: TEdit;
    SpeedButton1: TSpeedButton;
    Edit2: TEdit;
    SpeedButton2: TSpeedButton;
    Edit3: TEdit;
    SpeedButton3: TSpeedButton;
    qryHrm150: TADOQuery;
    qryHrm150H150_001: TAutoIncField;
    qryHrm150H150_002: TStringField;
    qryHrm150H150_003: TStringField;
    qryRab100: TADOQuery;
    qryRab110: TADOQuery;
    qryRab500: TADOQuery;
    qryRab500R500_001: TIntegerField;
    qryRab500R500_004: TIntegerField;
    qryRab500R500_005: TIntegerField;
    qryRab500R500_006: TStringField;
    qryRab100R100_001: TAutoIncField;
    qryRab100R100_002: TStringField;
    qryRab100R100_003: TStringField;
    qryRab110R110_001: TAutoIncField;
    qryRab110R110_002: TIntegerField;
    qryRab110R110_003: TStringField;
    qryRab110R110_004: TStringField;
    qryRab110R110_006: TIntegerField;
    qryRab110R110_007: TIntegerField;
    ADOQuery1R500_001: TIntegerField;
    ADOQuery1R500_002: TDateTimeField;
    ADOQuery1R500_003: TIntegerField;
    ADOQuery1R500_004: TIntegerField;
    ADOQuery1R500_005: TBooleanField;
    ADOQuery1R500_006: TStringField;
    ADOQuery1R100_002: TStringField;
    ADOQuery1R100_003: TStringField;
    ADOQuery1R110_003: TStringField;
    ADOQuery1R110_004: TStringField;
    ADOQuery1H150_002: TStringField;
    ADOQuery1H150_003: TStringField;
    dxDBGrid1H150_002: TdxDBGridLookupColumn;
    dxDBGrid1H150_003: TdxDBGridLookupColumn;
    dxDBGrid1R500_002: TdxDBGridDateColumn;
    dxDBGrid1R100_002: TdxDBGridLookupColumn;
    dxDBGrid1R100_003: TdxDBGridLookupColumn;
    dxDBGrid1R110_003: TdxDBGridLookupColumn;
    dxDBGrid1R110_004: TdxDBGridLookupColumn;
    dxDBGrid1R500_005: TdxDBGridCheckColumn;
    dxDBGrid1R500_006: TdxDBGridMaskColumn;
    procedure FormCreate(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure Edit1Exit(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure Edit2Exit(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure Edit3Exit(Sender: TObject);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ActInsertExecute(Sender: TObject);
    procedure ActUpdateExecute(Sender: TObject);
    procedure ActSaveExecute(Sender: TObject);
    procedure ADOQuery1AfterScroll(DataSet: TDataSet);
    procedure ActDeleteExecute(Sender: TObject);
    procedure ADOQuery1CalcFields(DataSet: TDataSet);
    procedure ActCancelExecute(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    procedure SetPerson;
    { Private declarations }
  public
    procedure SetInterface; override;
    procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
    { Public declarations }
  end;

var
  Rab500_01Form: TRab500_01Form;

implementation

uses SYSDATA, CommFun, HwSelData;

{$R *.DFM}

//修改已住人数
procedure TRab500_01Form.SetPerson;
var
  AEmpNo:Integer;
  ARoomNo:Integer;
begin
  AEmpNo:=0;
  ARoomNo:=0;
  qryRab500.Close;
  qryRab500.Open;
  while not qryRab500.Eof do
  begin
    if (qryRab500.FieldByName('R500_001').Value<>AEmpNo) and
       (not qryRab500.FieldByName('R500_005').Value) then
    begin
      SYSDM.qryQuery.Close;
      SYSDM.qryQuery.SQL.Clear;
      SYSDM.qryQuery.SQL.Add('select * from RAB110 where R110_001='+qryRab500R500_004.AsString+' and R110_002='+qryRab500R500_004.AsString);
      SYSDM.qryQuery.Open;
      if not SYSDM.qryQuery.IsEmpty then
      begin
        SYSDM.qryQuery.Edit;
        if ARoomNo<>SYSDM.qryQuery.FieldByName('R110_001').Value then
        begin
          SYSDM.qryQuery.FieldByName('R110_007').Value:=0;
          ARoomNo:=SYSDM.qryQuery.FieldByName('R110_001').Value;
        end;
        if SYSDM.qryQuery.FieldByName('R110_007').IsNull then
          SYSDM.qryQuery.FieldByName('R110_007').Value:=0
        else
          SYSDM.qryQuery.FieldByName('R110_007').Value:=SYSDM.qryQuery.FieldByName('R110_007').Value+1;
        SYSDM.qryQuery.Post;
      end;
    end;
    AEmpNo:=qryRab500.FieldByName('R500_001').Value;
    qryRab500.Next;
  end;
end;

procedure TRab500_01Form.SetInterface;
begin
  inherited;
  Caption:=GetDBString('RAB50001001');  //员工住房管理
  CheckBox1.Caption:=GetDBString('RAB50001009');  //是否退房
  Label1.Caption:=GetDBString('RAB50001002');  //员工编号
  Label2.Caption:=GetDBString('RAB50001004');  //生效日期
  Label3.Caption:=GetDBString('RAB50001005');  //宿舍编号
  Label5.Caption:=GetDBString('RAB50001007');  //住房编号
  Label8.Caption:=GetDBString('RAB50001010');  //备注
  ADOQuery1H150_002.DisplayLabel:=GetDBString('RAB50001002');  //员工编号
  ADOQuery1H150_003.DisplayLabel:=GetDBString('RAB50001003');  //员工姓名
  ADOQuery1R500_002.DisplayLabel:=GetDBString('RAB50001004');  //生效日期
  ADOQuery1R100_002.DisplayLabel:=GetDBString('RAB50001005');  //宿舍编号
  ADOQuery1R100_003.DisplayLabel:=GetDBString('RAB50001006');  //宿舍说明
  ADOQuery1R110_003.DisplayLabel:=GetDBString('RAB50001007');  //住房编号
  ADOQuery1R110_004.DisplayLabel:=GetDBString('RAB50001008');  //规格说明
  ADOQuery1R500_005.DisplayLabel:=GetDBString('RAB50001009');  //是否退房
  ADOQuery1R500_006.DisplayLabel:=GetDBString('RAB50001010');  //备注
  qryHrm150H150_002.DisplayLabel:=GetDBString('RAB50001002');  //员工编号
  qryHrm150H150_003.DisplayLabel:=GetDBString('RAB50001003');  //员工姓名
  qryRab100R100_002.DisplayLabel:=GetDBString('RAB50001005');  //宿舍编号
  qryRab100R100_003.DisplayLabel:=GetDBString('RAB50001006');  //宿舍说明
  qryRab110R110_003.DisplayLabel:=GetDBString('RAB50001007');  //住房编号
  qryRab110R110_004.DisplayLabel:=GetDBString('RAB50001008');  //规格说明
end;

procedure TRab500_01Form.FormCreate(Sender: TObject);
begin
  inherited;
  //设置界面信息
  SetInterface;
  qryHrm150.Open;
  qryRab100.Open;
  qryRab110.Open;
end;

procedure TRab500_01Form.ReportGetValue(const ParName: String;
  var ParValue: Variant);
begin
  inherited;
  if ParName='H150_002' then ParValue:=GetDBString('RAB50001002')  //员工编号
  else if ParName='H150_003' then ParValue:=GetDBString('RAB50001003')  //员工姓名
  else if ParName='R500_002' then ParValue:=GetDBString('RAB50001004')  //生效日期
  else if ParName='R100_002' then ParValue:=GetDBString('RAB50001005')  //宿舍编号
  else if ParName='R100_003' then ParValue:=GetDBString('RAB50001006')  //宿舍说明
  else if ParName='R110_003' then ParValue:=GetDBString('RAB50001007')  //住房编号
  else if ParName='R110_004' then ParValue:=GetDBString('RAB50001008')  //规格说明
  else if ParName='R500_005' then ParValue:=GetDBString('RAB50001009')  //是否退房
  else if ParName='R500_006' then ParValue:=GetDBString('RAB50001010')  //备注
end;

procedure TRab500_01Form.CheckBox1Click(Sender: TObject);
begin
  inherited;
  if not ActSave.Enabled then Exit;
  if not (ADOQuery1.State in [dsInsert,dsEdit]) then Exit;
  ADOQuery1R500_005.Value:=CheckBox1.Checked;
end;

procedure TRab500_01Form.SpeedButton1Click(Sender: TObject);
begin
  inherited;
//员工编号查询
  if not ActSave.Enabled then Exit;
  HwSelDataForm:=THwSelDataForm.Create(Application);
  HwSelDataForm.OpenSelData(qryHrm150,nil);
  if HwSelDataForm.ShowModal=1 then
  begin
    Edit1.Text:=qryHrm150H150_002.AsString;
    ADOQuery1R500_001.AsString:=qryHrm150H150_001.AsString;
    ADOQuery1H150_002.Value:=qryHrm150H150_002.Value;
    ADOQuery1H150_003.Value:=qryHrm150H150_003.Value;
  end;
end;

procedure TRab500_01Form.Edit1Exit(Sender: TObject);
begin
  inherited;
  if not ActSave.Enabled then Exit;
  if qryHrm150.Locate('H150_002',Edit1.Text,[loCaseInsensitive]) then
  begin
    ADOQuery1R500_001.AsString:=qryHrm150H150_001.AsString;
    ADOQuery1H150_002.Value:=qryHrm150H150_002.Value;
    ADOQuery1H150_003.Value:=qryHrm150H150_003.Value;
  end else
  begin
    ShowMsg('UMS10000042');  //无效的员工编号
    Abort;
  end;
end;

procedure TRab500_01Form.SpeedButton2Click(Sender: TObject);
begin
  inherited;
//宿舍编号查询
  if not ActSave.Enabled then Exit;
  HwSelDataForm:=THwSelDataForm.Create(Application);
  HwSelDataForm.OpenSelData(qryRab100,nil);
  if HwSelDataForm.ShowModal=1 then
  begin
    Edit2.Text:=qryRab100R100_002.AsString;

⌨️ 快捷键说明

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