📄 gl_enter_foreigncurrencyrate_d.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 + -