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

📄 gl_enter_firstsubjectbalance_d3.pas

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

Interface

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

Type
  TFrm_Gl_Enter_FirstSubjectBalance_D3 = Class(TFrm_Base_Detail)
    Label1: TLabel;
    Label2: TLabel;
    edt_kmName: TEdit;
    edt_kmCode: TEdit;
    edt_fFirstBalance: TEdit;
    Label5: TLabel;
    edt_AmountBalance: TEdit;
    Label6: TLabel;
    Label3: TLabel;
    edt_FirstBalance: TEdit;
    procedure btn_okClick(Sender: TObject);
  private
    FirstBalance:double;
    { Private declarations }
  public
    sMonth:integer;
    procedure InitControls; Override;
    procedure SaveData;Override;
    procedure SetStatus(CurrentStatus:String;var EnableControls:String); Override;
    { Public declarations }
  end;

var
  Frm_Gl_Enter_FirstSubjectBalance_D3: TFrm_Gl_Enter_FirstSubjectBalance_D3;

implementation
uses Sys_Global;
{$R *.DFM}
procedure TFrm_Gl_Enter_FirstSubjectBalance_D3.InitControls;
begin
 inherited;
 setfocus_Control:=edt_FirstBalance;
 case AdoQry_Maintain.fieldbyname('Amountcalculate').asinteger of
  1 : edt_AmountBalance.Enabled:=True;
  0 : edt_AmountBalance.Enabled:=False;
 end;
 with AdoQry_Maintain do
  begin
   edt_kmCode.Text:=fieldbyname('kmCode').asstring;
   edt_kmName.Text:=fieldbyname('kmName').asstring;
   edt_fFirstBalance.Text:=floattostr(fieldbyname('fFirstBalance').asfloat);
   edt_FirstBalance.Text:=floattostr(fieldbyname('FirstBalance').asfloat);
   edt_AmountBalance.Text:=floattostr(fieldbyname('FirstAmountBalance').asfloat);
  end;
 
end;

procedure TFrm_Gl_Enter_FirstSubjectBalance_D3.SaveData;
var sqltext:string;
begin
 inherited;
 try
 dbconnect.beginTrans;
 Executesql(AdoQry_tmp,'select * from Gl_AccountSubjectBalance where kmid='+inttostr(AdoQry_Maintain.fieldbyname('kmid').asinteger),0);
 if AdoQry_tmp.RecordCount=0 then 
  begin
    sqltext:='insert into Gl_AccountSubjectBalance(kmid,FirstYearBalance,FirstYearfBalance,FirstAmountBalance)'
            +' Values('+inttostr(AdoQry_Maintain.fieldbyname('kmid').asinteger)+','
            +           Trim(edt_FirstBalance.text)+','
            +           Trim(edt_fFirstBalance.text)+','
            +           iifstring(AdoQry_Maintain.fieldbyname('Amountcalculate').asinteger=1,Trim(edt_AmountBalance.text),'0')            
            +')';
    Executesql(AdoQry_tmp,sqltext,1);
  end
  else 
   begin
    sqltext:='update Gl_AccountSubjectBalance'
         +' set  FirstYearBalance='+Trim(edt_FirstBalance.text) +','
         +'      FirstYearfBalance='+Trim(edt_fFirstBalance.text)+','
         +'      FirstAmountBalance='+iifstring(AdoQry_Maintain.fieldbyname('Amountcalculate').asinteger=1,Trim(edt_AmountBalance.text),'0')
         +' where kmid='+inttostr(AdoQry_Maintain.fieldbyname('kmid').asinteger);
    Executesql(AdoQry_tmp,sqltext,1)      ;
   end;
 sqltext:='update #FirstBalance '
         +' set  FirstBalance='+Trim(edt_FirstBalance.text)+','
         +'      FirstAmountBalance='+iifstring(AdoQry_Maintain.fieldbyname('Amountcalculate').asinteger=1,Trim(edt_AmountBalance.text),'0')
         +' where kmid='+inttostr(AdoQry_Maintain.fieldbyname('kmid').asinteger);
 Executesql(AdoQry_tmp,sqltext,1)         ;
 dbconnect.CommitTrans;
 except
  if dbconnect.InTransaction then dbconnect.RollBackTrans;
  abort;
 end;
 //AdoQry_Maintain.fieldbyname('FirstdebitBalance').asfloat:=strtofloat(Trim(edt_Debit.text));
// AdoQry_Maintain.fieldbyname('FirstcreditBalance').asfloat:=strtofloat(Trim(edt_Credit.text));
 AdoQry_Maintain.fieldbyname('FirstAmountBalance').asfloat:=strtofloat(Trim(edt_AmountBalance.text));
 AdoQry_Maintain.fieldbyname('FirstBalance').asfloat:=strtofloat(edt_FirstBalance.text);
 AdoQry_Maintain.fieldbyname('fFirstBalance').asfloat:=strtofloat(edt_fFirstBalance.text);
 
end;

procedure TFrm_Gl_Enter_FirstSubjectBalance_D3.SetStatus(CurrentStatus:String;var EnableControls:String);
begin
 inherited;
 
end;

procedure TFrm_Gl_Enter_FirstSubjectBalance_D3.btn_okClick(Sender: TObject);
var Month:string;
    sqltext:string;
begin
 Executesql(AdoQry_tmp,'select dateName(yy,getdate())+''.''+dateName(mm,getdate()) as nMonth',0);
 Month:=AdoQry_tmp.fieldbyname('nMonth') .asstring;
 sqltext:='select Foreignrate  as ExchRate from Gl_ForeignCurrencyRate ' 
         +' where Accountperiod='+quotedstr(Month)
         +'  and  currencyCode='+quotedstr(AdoQry_Maintain.fieldbyname('Fcurrecy').asstring);
 Executesql(AdoQry_tmp,sqltext,0)         ;
 edt_FirstBalance.Text:=floattostr(strtofloat(Trim(edt_fFirstBalance.text))*AdoQry_tmp.fieldbyname('ExchRate').asfloat);
  inherited;

end;


end.

⌨️ 快捷键说明

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