📄 gl_enter_glinterface.pas
字号:
unit Gl_Enter_GlInterface;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Dialog, Db, AdODB, StdCtrls, ExtCtrls, ComCtrls, Mask, linkedit;
Type
TFrm_Gl_Enter_GlInterface = Class(TFrm_Base_Dialog)
Label2: TLabel;
Edt_CLKmCode: TLinkEdit;
Edt_ClKmName: TEdit;
Label3: TLabel;
Edt_XXSKmCode: TLinkEdit;
Edt_XXSKmName: TEdit;
Label4: TLabel;
Edt_JXSKmCode: TLinkEdit;
Edt_JXSKmName: TEdit;
Label5: TLabel;
Edt_ScKmCode: TLinkEdit;
Edt_ScKmName: TEdit;
Label6: TLabel;
Edt_XSKmCode: TLinkEdit;
Edt_XSKmName: TEdit;
Label7: TLabel;
Edt_WWKmCode: TLinkEdit;
Edt_WWKmName: TEdit;
procedure btn_okClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure btn_CancelClick(Sender: TObject);
procedure Edt_CLKmCodeKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edt_CLKmCodeButtonClick(Sender: TObject);
procedure Edt_CLKmCodeExit(Sender: TObject);
procedure Edt_CLKmCodeChange(Sender: TObject);
private
{ Private declarations }
FReadOnly:Boolean;
public
procedure InitForm(AdoConnection:TAdoConnection;ReadOnly:Boolean);
{ Public declarations }
end;
var
Frm_Gl_Enter_GlInterface: TFrm_Gl_Enter_GlInterface;
implementation
{$R *.DFM}
uses Sys_Global;
{ TFrm_Bas_Param }
procedure TFrm_Gl_Enter_GlInterface.InitForm(AdoConnection: TAdoConnection;
ReadOnly: Boolean);
var I: integer;
begin
FReadOnly:=ReadOnly;
AdoQry_Tmp.Connection:=AdOConnection;
AdoQry_Tmp.Close ;
AdoQry_Tmp.SQL.clear ;
AdoQry_Tmp.SQL.Add('select * from Gl_Param');
AdoQry_Tmp.Open ;
With AdoQry_Tmp do
begin
if locate('ParamCode','ErrPurchaseRangeKMCode',[]) then
Edt_ClKmCode.Text := fieldbyname('ParamValueC').AsString;
if locate('ParamCode','SaleTaxkmCode',[]) then
Edt_XXSKmCode.Text := fieldbyname('ParamValueC').AsString;
if locate('ParamCode','PurchaseTaxkmCode',[]) then
Edt_JXSKmCode.Text := fieldbyname('ParamValueC').AsString;
if locate('ParamCode','ManufactureCoStkmCode',[]) then
Edt_ScKmCode.Text := fieldbyname('ParamValueC').AsString;
if locate('ParamCode','SaleCoStkmCode',[]) then
Edt_XSKmCode.Text := fieldbyname('ParamValueC').AsString;
if locate('ParamCode','EnTruestMerialkmCode',[]) then
Edt_WWKmCode.Text := fieldbyname('ParamValueC').AsString;
// cmb_CashCtrl.ItemIndex:=fieldbyname('ParamValuen').asinteger;
end;
Edt_ClKmCode.OnExit(Edt_ClKmCode);
Edt_XXSKmCode.OnExit(Edt_XXSKMCode);
Edt_JXSKmCode.OnExit(Edt_JXSKmCode);
Edt_ScKmCode.OnExit(Edt_ScKMCode);
Edt_XsKMCode.OnExit(Edt_XsKMCode);
Edt_WWKMCode.OnExit(Edt_WWKmCode);
Btn_Ok.Enabled := False;
end;
procedure TFrm_Gl_Enter_GlInterface.btn_okClick(Sender: TObject);
var sqltext:string;
begin
inherited;
{ Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC)
Values('ErrPurchaseRangeKMCode','材料采购差异会计科目',0,'')
Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC)
Values('SaleTaxkmCode','应交税金-销项税会计科目',0,'')
Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC)
Values('PurchaseTaxkmCode','应交税金-进项税会计科目',0,'')
Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC)
Values('ManufactureCoStkmCode','生产成本会计科目',0,'')
Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC)
Values('SaleCoStkmCode','销售成本会计科目',0,'')
Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC)
Values('EnTruestMerialkmCode','委外加工物资会计科目',0,'')
}
sqltext:='select * from Gl_Param'
+' where ParamCode=''ErrPurchaseRangeKMCode''';
Executesql(AdoQry_tmp,sqltext,0);
if AdoQry_tmp.RecordCount=0 then
begin
sqltext:=' Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC) '
+' Values(''ErrPurchaseRangeKMCode'',''材料采购差异会计科目'',0,'''') ';
Executesql(AdoQry_tmp,sqltext,1) ;
end
else
Executesql(AdoQry_tmp,'update Gl_Param set ParamValuec='+QuotedStr(Edt_ClKmCode.Text)
+' where ParamCode=''ErrPurchaseRangeKMCode''',1);
sqltext:='select * from Gl_Param'
+' where ParamCode=''SaleTaxkmCode''';
Executesql(AdoQry_tmp,sqltext,0);
if AdoQry_tmp.RecordCount=0 then
begin
sqltext:=' Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC) '
+' Values(''SaleTaxkmCode'',''应交税金-销项税会计科目'',0,'''') ';
Executesql(AdoQry_tmp,sqltext,1) ;
end
else
Executesql(AdoQry_tmp,'update Gl_Param set ParamValuec='+QuotedStr(Edt_XXSKmCode.Text)
+' where ParamCode=''SaleTaxkmCode''',1);
sqltext:='select * from Gl_Param'
+' where ParamCode=''PurchaseTaxkmCode''';
Executesql(AdoQry_tmp,sqltext,0);
if AdoQry_tmp.RecordCount=0 then
begin
sqltext:=' Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC) '
+' Values(''PurchaseTaxkmCode'',''应交税金-进项税会计科目'',0,'''') ';
Executesql(AdoQry_tmp,sqltext,1) ;
end
else
Executesql(AdoQry_tmp,'update Gl_Param set ParamValuec='+QuotedStr(Edt_JXSKmCode.Text)
+' where ParamCode=''PurchaseTaxkmCode''',1);
sqltext:='select * from Gl_Param'
+' where ParamCode=''ManufactureCoStkmCode''';
Executesql(AdoQry_tmp,sqltext,0);
if AdoQry_tmp.RecordCount=0 then
begin
sqltext:=' Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC) '
+' Values(''ManufactureCoStkmCode'',''生产成本会计科目'',0,'''') ';
Executesql(AdoQry_tmp,sqltext,1) ;
end
else
Executesql(AdoQry_tmp,'update Gl_Param set ParamValuec='+QuotedStr(Edt_ScKmCode.Text)
+' where ParamCode=''ManufactureCoStkmCode''',1);
sqltext:='select * from Gl_Param'
+' where ParamCode=''SaleCoStkmCode''';
Executesql(AdoQry_tmp,sqltext,0);
if AdoQry_tmp.RecordCount=0 then
begin
sqltext:=' Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC) '
+' Values(''SaleCoStkmCode'',''销售成本会计科目'',0,'''') ';
Executesql(AdoQry_tmp,sqltext,1) ;
end
else
Executesql(AdoQry_tmp,'update Gl_Param set ParamValuec='+QuotedStr(Edt_XsKmCode.Text)
+' where ParamCode=''SaleCoStkmCode''',1);
sqltext:='select * from Gl_Param'
+' where ParamCode=''EnTruestMerialkmCode''';
Executesql(AdoQry_tmp,sqltext,0);
if AdoQry_tmp.RecordCount=0 then
begin
sqltext:=' Insert dbo.Gl_Param(ParamCode,ParamName,ParamValueN,ParamValueC) '
+' Values(''EnTruestMerialkmCode'',''委外加工物资会计科目'',0,'''') ';
Executesql(AdoQry_tmp,sqltext,1) ;
end
else
Executesql(AdoQry_tmp,'update Gl_Param set ParamValuec='+QuotedStr(Edt_WWKMCode.Text)
+' where ParamCode=''EnTruestMerialkmCode''',1);
Close;
end;
procedure TFrm_Gl_Enter_GlInterface.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
Action:=CaFree;
end;
procedure TFrm_Gl_Enter_GlInterface.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
If Key=Vk_EScApe then
Close;
end;
procedure TFrm_Gl_Enter_GlInterface.btn_CancelClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TFrm_Gl_Enter_GlInterface.Edt_CLKmCodeKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
inherited;
if key=120 then
CommOnHint(Sender,AdoQry_Tmp,'kmName','科目名称','kmCode',
'科目代码',' Gl_AccountSubject ',' endkm=1 and kmfreeze=0 ');
end;
procedure TFrm_Gl_Enter_GlInterface.Edt_CLKmCodeButtonClick(
Sender: TObject);
begin
inherited;
CommOnHint(Sender,AdoQry_Tmp,'kmName','科目名称','kmCode',
'科目代码',' Gl_AccountSubject ',' endkm=1 and kmfreeze=0 ');
end;
procedure TFrm_Gl_Enter_GlInterface.Edt_CLKmCodeExit(Sender: TObject);
begin
inherited;
if(ActiveControl.Name='btn_Cancel')then
Abort;
if TCustomEdit(Sender).Text <>'' then
begin
ExecuteSql(AdoQry_Tmp,' Select KmCode,KmName from Gl_AccountSubject '
+' where KmCode= '+QuotedStr(TCustomEdit(Sender).Text)
+' and endkm=1 and kmfreeze=0 ',0);
if not AdoQry_Tmp.Eof then
case TCustomEdit(Sender).Tag of
0 : EDT_CLKmName.Text := AdoQry_Tmp.fieldbyname('KmName').AsString;
1 : Edt_XXSKmName.Text := AdoQry_Tmp.fieldbyname('KmName').AsString;
2 : Edt_JXSKmName.Text := AdoQry_Tmp.fieldbyname('KmName').AsString;
3 : Edt_ScKmName.Text := AdoQry_Tmp.fieldbyname('KmName').AsString;
4 : Edt_XsKmName.Text := AdoQry_Tmp.fieldbyname('KmName').AsString;
5 : Edt_WWKmName.Text := AdoQry_Tmp.fieldbyname('KmName').AsString;
end
else
begin
DispInfo('科目代码错误,请重新输入',1);
TWinControl(Sender).SetFocus;
Abort;
end;
end
else
case TCustomEdit(Sender).Tag of
0 : EDT_CLKmName.Text := '';
1 : Edt_XXSKmName.Text := '';
2 : Edt_JXSKmName.Text := '';
3 : Edt_ScKmName.Text := '';
4 : Edt_XsKmName.Text := '';
5 : Edt_WWKmName.Text := '';
end
end;
procedure TFrm_Gl_Enter_GlInterface.Edt_CLKmCodeChange(Sender: TObject);
begin
inherited;
if not FReadOnly then
Btn_Ok.Enabled :=True;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -