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

📄 gl_enter_foreigncurrencyrate_d.pas

📁 一个MRPII系统源代码版本
💻 PAS
字号:
unit Gl_Enter_ForeignCurrencyRate_D;

Interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Entry_Detail, Db, AdODB, ExtCtrls, StdCtrls;

Type
  TFrm_Gl_Enter_ForeignCurrencyRate_D = Class(TFrm_Base_Entry_Detail)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edt_AccountPeriodDate: TEdit;
    Edt_ForeignRate: TEdit;
    Edt_ChangeForeignRate: TEdit;
    Label14: TLabel;
    Edt_RemArk: TEdit;
    procedure btn_okClick(Sender: TObject);
  private
    { Private declarations }
  public
    procedure InitControls; Override;
    procedure SaveBodyData; Override;
    procedure SetStatus(CurrentStatus:String;var EnableControls:String);Override;
    { Public declarations }
  end;

var
  Frm_Gl_Enter_ForeignCurrencyRate_D: TFrm_Gl_Enter_ForeignCurrencyRate_D;

implementation

uses Gl_Enter_ForeignCurrencyRate, Sys_Global;

{$R *.DFM}

{ TFrm_Gl_Enter_ForeignCurrencyRate_D }

procedure TFrm_Gl_Enter_ForeignCurrencyRate_D.InitControls;
begin
  inherited;
  If (status='Add') Then
    SetFocus_Control:=Edt_AccountPeriodDate
  Else
    SetFocus_Control:=Edt_ForeignRate;
  Inherited;
  with AdoQry_Body do
  begin
    If (Status='Add') then
    begin
      Edt_AccountPeriodDate.Text:=IntToStr(fieldbyname('AccountPeriodDate').AsInteger+1);
      Edt_ForeignRate.Text:='0';
      Edt_ChangeForeignRate.Text := '0';
      Edt_RemArk.Text :='';
    end
    else
    begin
      Edt_AccountPeriodDate.Text:=fieldbyname('AccountPeriodDate').AsString;
      Edt_ForeignRate.Text:=fieldbyname('ForeignRate').AsString;
      Edt_ChangeForeignRate.Text := fieldbyname('ChangeForeignRate').AsString;
      Edt_RemArk.Text :=fieldbyname('ReMArk').AsString;
    end;
  end;
end;

procedure TFrm_Gl_Enter_ForeignCurrencyRate_D.SaveBodyData;
begin
  inherited;
{  If Status='Add' Then
    AdoQry_Body.Append
  Else      }
  AdoQry_Body.Edit;
  with AdoQry_Body do
  begin
    fieldbyname('AccountPeriodDate').AsString := Edt_AccountPeriodDate.Text;
    fieldbyname('ForeignRate').AsString := Edt_ForeignRate.Text;
    fieldbyname('ChangeForeignRate').AsString := Edt_ChangeForeignRate.Text;
    fieldbyname('ReMArk').AsString := Edt_RemArk.Text;
    Post;
  end;

end;

procedure TFrm_Gl_Enter_ForeignCurrencyRate_D.SetStatus(
  CurrentStatus: String; var EnableControls: String);
begin
  inherited;
  if(CurrentStatus='Add')then
    EnableControls:=' Edt_AccountPeriodDate,Edt_ForeignRate,'
                   +' Edt_ChangeForeignRate,Edt_RemArk,'
  else
    EnableControls:=' Edt_ForeignRate,'
                   +' Edt_ChangeForeignRate,Edt_RemArk,'
end;

procedure TFrm_Gl_Enter_ForeignCurrencyRate_D.btn_okClick(Sender: TObject);
//var
//  Dates:String;
//  Days:Integer;
begin
{  if Status = 'Add' then
  begin
    Dates := Month+'.01';
    AdoQry_Tmp.Close;
    AdoQry_Tmp.SQL.clear;
    AdoQry_Tmp.SQL.Text := ' Select DatePArt(Day,DateAdd(Month,1,Convert(DateTime,'''+Dates+'''))-1) As days ';
    AdoQry_Tmp.Open;
    Days := AdoQry_Tmp.fieldbyname('Days').AsInteger;
    If Days < StrToInt(Edt_AccountPeriodDate.Text) Then
    begin
      DispInfo('日期输入错误,'+Month+'的最大天数为'+IntToStr(Days),1);
      Edt_AccountPeriodDate.SetFocus;
      Abort;
    end;
    with AdoQry_Body do
    begin
      First;
      While Not Eof do
      begin
        If  fieldbyname('AccountPeriodDate').AsInteger = StrToInt(Edt_AccountPeriodDate.Text) Then
        begin
          DispInfo('日期输入重复!',1);
          Edt_AccountPeriodDate.SetFocus;
          Abort;
        end;
        Next;
      end;
    end;
  end;}
  inherited;

end;

end.

⌨️ 快捷键说明

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