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

📄 ufrmdeposit.pas

📁 小银行系统
💻 PAS
📖 第 1 页 / 共 3 页
字号:
unit UfrmDeposit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, U_child1_1, Mask, StdCtrls, Buttons, ExtCtrls, DosMove,
  DBTables, DB, DBClient, Provider, ADODB, DBCtrls, Grids, DBGridEh,
  wwdblook;

type
  TfrmDeposit = class(TF_child1_1)
    PanTop: TPanel;
    Label3: TLabel;
    Label5: TLabel;
    Label11: TLabel;
    Label23: TLabel;
    Label24: TLabel;
    Edtfac_nm: TEdit;
    Edtsec_nm: TEdit;
    BitBtn_query: TBitBtn;
    Edtper_no: TEdit;
    Edtper_na: TEdit;
    BitBtn1: TBitBtn;
    Edtyymmdd: TMaskEdit;
    Label14: TLabel;
    Label15: TLabel;
    DBEditRemark: TDBEdit;
    Label26: TLabel;
    MaskEdit1: TMaskEdit;
    Label2: TLabel;
    Label9: TLabel;
    EdtACC_NO: TEdit;
    Edtfac_no: TEdit;
    Edtsec_no: TEdit;
    StaticText1: TStaticText;
    StaticText2: TStaticText;
    StaticText3: TStaticText;
    StaticText4: TStaticText;
    StaticText5: TStaticText;
    StaticText6: TStaticText;
    StaticText7: TStaticText;
    StaticText8: TStaticText;
    StaticText9: TStaticText;
    StaticText10: TStaticText;
    Shape1: TShape;
    Shape2: TShape;
    Shape3: TShape;
    Label1: TLabel;
    StaticText11: TStaticText;
    StaticText12: TStaticText;
    StaticText13: TStaticText;
    StaticText14: TStaticText;
    StaticText15: TStaticText;
    StaticText16: TStaticText;
    StaticText17: TStaticText;
    StaticText18: TStaticText;
    StaticText19: TStaticText;
    StaticText20: TStaticText;
    Shape4: TShape;
    Label4: TLabel;
    DBEdit23: TDBEdit;
    DBEdit24: TDBEdit;
    DBEdit25: TDBEdit;
    DBEdit26: TDBEdit;
    DBEdit27: TDBEdit;
    DBEdit28: TDBEdit;
    DBEdit29: TDBEdit;
    DBEdit30: TDBEdit;
    DBEdit31: TDBEdit;
    DBEdit32: TDBEdit;
    StaticText21: TStaticText;
    StaticText22: TStaticText;
    StaticText23: TStaticText;
    StaticText24: TStaticText;
    StaticText25: TStaticText;
    StaticText26: TStaticText;
    StaticText27: TStaticText;
    StaticText28: TStaticText;
    StaticText29: TStaticText;
    StaticText30: TStaticText;
    Shape5: TShape;
    Shape6: TShape;
    DBEdit33: TDBEdit;
    Label6: TLabel;
    Label7: TLabel;
    DBEdit35: TDBEdit;
    CheckBox1: TCheckBox;
    ClientDataSet1ACC_NO: TStringField;
    ClientDataSet1Cdate: TStringField;
    ClientDataSet1serial_no: TStringField;
    ClientDataSet1IN_OR_OUT: TStringField;
    ClientDataSet1IN_money: TBCDField;
    ClientDataSet1OUT_money: TBCDField;
    ClientDataSet1add_date: TStringField;
    ClientDataSet1add_user: TStringField;
    ClientDataSet1edit_date: TStringField;
    ClientDataSet1edit_user: TStringField;
    ClientDataSet1rem_money: TBCDField;
    ClientDataSet1Cre_man: TStringField;
    ClientDataSet1Check_mk: TStringField;
    ClientDataSet1Check_man: TStringField;
    ClientDataSet1remark: TStringField;
    ClientDataSet1IN_1: TStringField;
    ClientDataSet1IN_2: TStringField;
    ClientDataSet1IN_3: TStringField;
    ClientDataSet1IN_4: TStringField;
    ClientDataSet1IN_5: TStringField;
    ClientDataSet1IN_6: TStringField;
    ClientDataSet1IN_7: TStringField;
    ClientDataSet1IN_8: TStringField;
    ClientDataSet1IN_9: TStringField;
    ClientDataSet1IN_10: TStringField;
    ClientDataSet1OUT_1: TStringField;
    ClientDataSet1OUT_2: TStringField;
    ClientDataSet1OUT_3: TStringField;
    ClientDataSet1OUT_4: TStringField;
    ClientDataSet1OUT_5: TStringField;
    ClientDataSet1OUT_6: TStringField;
    ClientDataSet1OUT_7: TStringField;
    ClientDataSet1OUT_8: TStringField;
    ClientDataSet1OUT_9: TStringField;
    ClientDataSet1OUT_10: TStringField;
    ClientDataSet1R_1: TStringField;
    ClientDataSet1R_2: TStringField;
    ClientDataSet1R_3: TStringField;
    ClientDataSet1R_4: TStringField;
    ClientDataSet1R_5: TStringField;
    ClientDataSet1R_6: TStringField;
    ClientDataSet1R_7: TStringField;
    ClientDataSet1R_8: TStringField;
    ClientDataSet1R_9: TStringField;
    ClientDataSet1R_10: TStringField;
    EdtIN_10: TEdit;
    EdtIN_9: TEdit;
    EdtIN_8: TEdit;
    EdtIN_5: TEdit;
    EdtIN_7: TEdit;
    EdtIN_6: TEdit;
    EdtIN_2: TEdit;
    EdtIN_4: TEdit;
    EdtIN_3: TEdit;
    EdtIN_1: TEdit;
    EdtOUT_10: TEdit;
    EdtOUT_9: TEdit;
    EdtOUT_8: TEdit;
    EdtOUT_5: TEdit;
    EdtOUT_7: TEdit;
    EdtOUT_6: TEdit;
    EdtOUT_2: TEdit;
    EdtOUT_4: TEdit;
    EdtOUT_3: TEdit;
    EdtOUT_1: TEdit;
    BitBtn_Print: TBitBtn;
    ADOAccount: TADODataSet;
    ADOAccountACC_NO: TStringField;
    ADOAccountPer_na: TStringField;
    ADOStoredProc1: TADOStoredProc;
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure DBEditRemarkKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn_queryClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure MaskEdit1Exit(Sender: TObject);
    procedure EdtACC_NOChange(Sender: TObject);
    procedure ClientDataSet1CalcFields(DataSet: TDataSet);
    procedure EdtyymmddChange(Sender: TObject);
    procedure ClientDataSet1AfterScroll(DataSet: TDataSet);
    procedure DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure EdtIN_10KeyPress(Sender: TObject; var Key: Char);
    procedure EdtIN_10Enter(Sender: TObject);
    procedure BitBtn_PrintClick(Sender: TObject);
    procedure EdtACC_NOExit(Sender: TObject);
    procedure EdtIN_10Exit(Sender: TObject);
    procedure EdtOUT_1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure EdtIN_1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
    First_code,Last_Record:Boolean ;
    procedure refresh1;
    procedure blank_Text;
  public
    { Public declarations }
    procedure DoInsert;override;
    procedure DoEdit;override;
    procedure DoGetData;override;
    procedure DoDelete;override;
    procedure DoSave;override;
    procedure DoCancel;override;
  end;

var
  frmDeposit: TfrmDeposit;
  frmFirst,confirm,vDEL :boolean;

implementation
uses U_main,UDM,U_sele,user_func,fuct_server,ufrmreport;

{$R *.dfm}

procedure TfrmDeposit.DoInsert;
begin
  inherited;
  if confirm =false then
  begin
     f_main.B_cancel.Click ;
     exit ;
  end ;

  MaskEdit1.Text :=f_main.vTodayDate ;
  MaskEdit1.Visible :=true;
  DBEdit1.Visible :=false;
  self.ClientDataSet1.FieldByName('ACC_NO').AsString := EdtACC_NO.Text ;
  self.ClientDataSet1.FieldByName('Cdate').AsString := f_main.vTodayDate ;
  self.ClientDataSet1.FieldByName('add_date').AsString :=f_main.vTodayDate ;
  self.ClientDataSet1.FieldByName('add_user').AsString :=f_main.vuser_no ;
  self.ClientDataSet1.FieldByName('Cre_man').AsString :=f_main.vuser_nm ;
  self.blank_Text ;
  vDEL := False ;
  MaskEdit1.SetFocus ;
end;

procedure TfrmDeposit.DoEdit;
var
  sqlstr,vLock_YN:string;
  TempAdo : TAdodataSet;
begin
  //if self.ClientDataSet1Cdate.Value <>f_main.vTodayDate then
  //begin
  //   showmessage('不是当天资料,不允许修改!');
  //   exit ;
  //end ;

  sqlstr:='select Lock_YN FROM Lock_Deposit where Cdate='''+
      self.ClientDataSet1Cdate.AsString +'''';
  TempAdo := TAdodataSet.Create(nil);
  try
     TempAdo.Connection := DM.ADOConnection1 ;
     TempAdo.CommandText := Sqlstr;
     TempAdo.Prepared := True;
     TempAdo.Open;
     if TempAdo.Eof then
        vLock_YN :='N'
     else
        vLock_YN :=TempAdo.fieldbyname('Lock_YN').AsString ;
  finally
     TempAdo.Free;
  end;
  if vLock_YN ='Y' then
  begin
     showmessage('该日存取款已经结案,不允许修改!');
     f_main.B_cancel.Click ; 
     exit ;
  end ;
  
  DBEdit1.Enabled :=True;
  DBEdit1.Visible :=True;
  DBEdit2.Enabled :=True;
  inherited;
  if confirm =false then
  begin
     f_main.B_cancel.Click ;
     exit ;
  end ;

  vDEL :=False ;
  MaskEdit1.Visible :=true;
  DBEdit1.Visible :=false;
  DBEdit2.Enabled :=false;
  MaskEdit1.Text := self.ClientDataSet1.FieldByName('Cdate').AsString ;
  self.ClientDataSet1.FieldByName('edit_date').AsString :=f_main.vTodayDate ;
  self.ClientDataSet1.FieldByName('edit_user').AsString :=f_main.vuser_no ;
end;

procedure TfrmDeposit.DoGetData;
begin
  inherited;
  MaskEdit1.Visible :=false ;
  DBEdit1.Visible   :=true;
end;

procedure TfrmDeposit.DoDelete;
var
  sqlstr,vLock_YN:string ;
  TempAdo : TAdodataSet ;
begin
  sqlstr:='select Lock_YN FROM Lock_Deposit where Cdate='''+
      self.ClientDataSet1Cdate.AsString +'''';
  TempAdo := TAdodataSet.Create(nil);
  try
     TempAdo.Connection := DM.ADOConnection1 ;
     TempAdo.CommandText := Sqlstr;
     TempAdo.Prepared := True;
     TempAdo.Open;
     if TempAdo.Eof then
        vLock_YN :='N'
     else
        vLock_YN :=TempAdo.fieldbyname('Lock_YN').AsString ;
  finally
     TempAdo.Free;
  end;
  if vLock_YN ='Y' then
  begin
     showmessage('该日存取款已经结案,不允许修改!');
     exit ;
  end ;

  inherited;
  vDEL :=True ;
  self.blank_Text ;
  MaskEdit1.Visible :=false ;
  DBEdit1.Visible   :=true;
end;

procedure TfrmDeposit.DoCancel;
begin
  inherited;
  MaskEdit1.Visible :=false ;
  DBEdit1.Visible   :=true;

end;

//存档
procedure TfrmDeposit.DoSave;
var Sqlstr:string; modify:Boolean;
  nn :integer ;
  vnum :string ;
  vIN_money,vOUT_money,vREM_money,vOLD_IN_money,vOLD_OUT_money:real;
  sIN_money,sOUT_money,sREM_money :string ;
  TempAdo : TAdodataSet;
  ADOQpub : TADOQuery;
  BK:TBookMark;
  vIN_10,vIN_9,vIN_8,vIN_7,vIN_6,vIN_5,vIN_4,vIN_3,vIN_2,vIN_1 :string ;
  vOUT_10,vOUT_9,vOUT_8,vOUT_7,vOUT_6,vOUT_5,vOUT_4,vOUT_3,vOUT_2,vOUT_1:string;
begin
  if (self.ClientDataSet1.State=dsInsert) OR
     (self.ClientDataSet1.State=dsEdit) then
  begin
    if (DBEdit1.Text ='') then
    begin
       showmessage('帐号不能为空,请重新输入!');
       dbEdit1.SetFocus ;
       exit ;
    end ;

    //存款金额
    if EdtIN_10.Text='' then
       vIN_10 :='0'
    else
       vIN_10 :=EdtIN_10.Text ;
    if EdtIN_9.Text='' then
       vIN_9 :='0'
    else
       vIN_9 :=EdtIN_9.Text ;
    if EdtIN_8.Text='' then
       vIN_8 :='0'
    else
       vIN_8 :=EdtIN_8.Text ;
    if EdtIN_7.Text='' then
       vIN_7 :='0'
    else
       vIN_7 :=EdtIN_7.Text ;
    if EdtIN_6.Text='' then
       vIN_6 :='0'
    else
       vIN_6 :=EdtIN_6.Text ;
    if EdtIN_5.Text='' then
       vIN_5 :='0'
    else
       vIN_5 :=EdtIN_5.Text ;
    if EdtIN_4.Text='' then
       vIN_4 :='0'
    else
       vIN_4 :=EdtIN_4.Text ;
    if EdtIN_3.Text='' then
       vIN_3 :='0'
    else
       vIN_3 :=EdtIN_3.Text ;
    if EdtIN_2.Text='' then
       vIN_2 :='0'
    else
       vIN_2 :=EdtIN_2.Text ;
    if EdtIN_1.Text='' then
       vIN_1 :='0'
    else
       vIN_1 :=EdtIN_1.Text ;

    sIN_money :=vIN_10 + vIN_9 + vIN_8 + vIN_7 +vIN_6 + vIN_5 +
                vIN_4 + vIN_3 +'.'+ vIN_2 + vIN_1 ;
    vIN_money := StrToFloat(Trim(sIN_money));

⌨️ 快捷键说明

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