📄 inv_billtype2_d.pas
字号:
unit Inv_BillType2_D;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Detail, StdCtrls, Db, AdODB, ExtCtrls, linkedit;
Type
TFrm_Inv_BillType2_D = Class(TFrm_Base_Detail)
Edt_BillType2Code: TEdit;
Edt_BillType2Name: TEdit;
Edt_BillType2remArk: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Cmbbx_io2: TComboBox;
Label5: TLabel;
cmbx_isinuse: TComboBox;
Label6: TLabel;
LEdt_PayModeKMCode: TLinkEdit;
Edt_kmName: TEdit;
procedure FormCreate(Sender: TObject);
procedure Edt_BillType2CodeExit(Sender: TObject);
procedure Cmbbx_io2Exit(Sender: TObject);
procedure LEdt_PayModeKMCodeKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure LEdt_PayModeKMCodeButtonClick(Sender: TObject);
procedure LEdt_PayModeKMCodeExit(Sender: TObject);
private
procedure InitControls; Override;
procedure SetStatus(CurrentStatus:String;var EnableControls:String);Override;
procedure SaveData; Override;
{ Private declarations }
public
{ Public declarations }
end;
var
Frm_Inv_BillType2_D: TFrm_Inv_BillType2_D;
implementation
uses Sys_Global;
{$R *.DFM}
procedure TFrm_Inv_BillType2_D.InitControls;
begin
inherited;
with AdoQry_Maintain do
begin
Edt_BillType2Code.Text:=fieldbyname('BillType2Code').AsString;
Edt_BillType2Name.Text:=fieldbyname('BillType2Name').AsString;
Cmbbx_io2.ItemIndex:=fieldbyname('io2').Asinteger;
//Cmbx_ChangeAp.ItemIndex:=fieldbyname('ChangeAp').Asinteger;
LEdt_PayModeKMCode.text:=fieldbyname('kmCode').asstring;
Edt_BillType2remArk.Text:=fieldbyname('BillType2remArk').AsString;
cmbx_isinuse.ItemIndex:=fieldbyname('isinuse').AsInteger;
end;
if Trim(LEdt_PayModeKMCode.text)='' then
begin
Edt_kmName.text:='';
exit;
end;
LEdt_PayModeKMCode.OnExit (LEdt_PayModeKMCode);
{if Status='Add' then
SetFocus_Control:=Edt_BillType2Code;
if Status='Edit' then
SetFocus_Control:=Edt_BillType2Name;
LEdt_PayModeKMCode.OnExit (LEdt_PayModeKMCode);
Edt_kmName.Enabled:=False;
if status='Edit' then
begin
Edt_BillType2Code.ReadOnly :=True;
//Edt_BillType2Code.enabled :=False;
Edt_BillType2Name.SetFocus ;
end
else
begin
if Edt_BillType2Code.ReadOnly then
Edt_BillType2Code.ReadOnly :=False;
Edt_BillType2Code.SetFocus ;
end;}
end;
procedure TFrm_Inv_BillType2_D.SaveData;
begin
Inherited;
if (Add) then
begin
with AdoQry_Tmp do
begin
Close;
SQL.clear;
sql.Add('Insert BillType2(BillType2Code,'+
'BillType2Name,'+
'io2,'+
'isinuse,'+
//'ChangeAp,'+
'KMCode,'+
'BillType2remArk) '+
'ValueS ('''+Edt_BillType2Code.text+''','+
''''+Edt_BillType2Name.text+''','+
inttostr(cmbbx_io2.Itemindex)+','+
IntToStr(cmbx_isinuse.ItemIndex)+','+
//inttostr(cmbx_ChangeAp.Itemindex)+','+
IifString(Trim(LEdt_PayModeKMCode.text)='','null',
QuotedStr(LEdt_PayModeKMCode.text))+','+
''''+Edt_BillType2remArk.text+''')');
ExecSQL;
end
end
else
begin
with AdoQry_Tmp do
begin
Close;
SQL.clear;
sql.Add('update BillType2 set '+
'BillType2Code='''+Edt_BillType2Code.text+''','+
'BillType2Name='''+Edt_BillType2Name.text+''','+
'isinuse='+inttostr(cmbx_isinuse.ItemIndex)+','+
'io2='+inttostr(cmbbx_io2.Itemindex)+','+
//'ChangeAp='+inttostr(cmbx_ChangeAp.Itemindex)+','+
'KMCode='+IifString(Trim(LEdt_PayModeKMCode.text)='','null',QuotedStr(LEdt_PayModeKMCode.text))+ ','+
'BillType2remArk='''+Edt_BillType2remArk.text+''''+
' where BillType2Code='''+AdoQry_Maintain.fieldbyname('BillType2Code').asstring+'''');
ExecSQL;
end
end;
//给AdoQry_Item各字段赋值
with AdoQry_Maintain do
begin
fieldbyname('BillType2Code').asstring:=Edt_BillType2Code.text;
fieldbyname('BillType2Name').asstring:=Edt_BillType2Name.text;
fieldbyname('io2').asinteger:=cmbbx_io2.Itemindex;
// fieldbyname('ChangeAp').asinteger:=cmbx_ChangeAp.Itemindex;
fieldbyname('kmCode').asstring:=LEdt_PayModeKMCode.text;
fieldbyname('BillType2remArk').asstring:=Edt_BillType2remArk.text;
fieldbyname('isinuse').AsInteger:=cmbx_isinuse.ItemIndex;
Post;
end;
end;
procedure TFrm_Inv_BillType2_D.FormCreate(Sender: TObject);
begin
inherited;
//SetFocus_Control:=Edt_BillType2Code;
end;
procedure TFrm_Inv_BillType2_D.Edt_BillType2CodeExit(Sender: TObject);
begin
inherited;
if ActiveControl.Name='btn_Cancel' then
exit;
if not blankcheck(edt_BillType2Code.text,'其它出入库代码') then
begin
TWinControl(Sender).SetFocus;
Abort;
end;
if not BlankInStrCheck(edt_BillType2Code.text,'其它出入库代码') then
begin
TWinControl(Sender).SetFocus;
Abort;
end;
if(Add)or((not Add)and
(TEdit(Sender).Text<>AdoQry_Maintain.fieldbyname('BillType2Code').AsString))then
with AdoQry_Tmp do
begin
Close;
SQL.clear;
SQL.Add('Select BillType2Code From BillType2 Where BillType2Code='''+TEdit(Sender).Text+'''');
Open;
if not eof then
begin
DispInfo(' 该其它出入库代码已经存在,不允许增加或修改',1);
TWinControl(Sender).SetFocus;
Abort;
end;
end;
end;
procedure TFrm_Inv_BillType2_D.Cmbbx_io2Exit(Sender: TObject);
begin
inherited;
if ActiveControl.Name='btn_Cancel' then
exit;
// if cmbbx_io2.Itemindex=1 then
// begin
// cmbx_ChangeAp.Itemindex:=0;
// end;
end;
procedure TFrm_Inv_BillType2_D.LEdt_PayModeKMCodeKeyDown(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_Inv_BillType2_D.LEdt_PayModeKMCodeButtonClick(
Sender: TObject);
begin
inherited;
CommonHint(Sender,AdoQry_Tmp,'kmName','会计科目名称','KmCode',
'会计科目代码','Gl_AccountSubject','endkm=1 and kmfreeze=0');
end;
procedure TFrm_Inv_BillType2_D.LEdt_PayModeKMCodeExit(Sender: TObject);
begin
inherited;
if activecontrol.Name='btn_Cancel' then
abort;
if Trim(LEdt_PayModeKMCode.text)<>'' then
begin
with AdoQry_tmp do
begin
Close;
sql.clear;
sql.text:='select KmCode,kmName from Gl_AccountSubject'+
' where KmCode='''+Trim(LEdt_PayModeKMCode.text)+''''+
' and endkm=1 and kmfreeze=0';
open;
if not eof then
begin
Edt_kmName.text:=fieldbyname('kmName').asstring;
end
else
begin
DispInfo('此会计科目代码不存在!请重新输入!',3);
LEdt_PayModeKMCode.setfocus;
abort;
end;
end;
end;
end;
procedure TFrm_Inv_BillType2_D.SetStatus(CurrentStatus: String;
var EnableControls: String);
begin
inherited;
if CurrentStatus='Edit' then
EnableControls:='Edt_BillType2Name,Cmbbx_io2,cmbx_isinuse,LEdt_PayModeKMCode,Edt_BillType2remArk,'
else if CurrentStatus='Add' then
EnableControls:='Edt_BillType2Code,Edt_BillType2Name,Cmbbx_io2,cmbx_isinuse,LEdt_PayModeKMCode,Edt_BillType2remArk,';
if Status='Add' then
SetFocus_Control:=Edt_BillType2Code
else
SetFocus_Control:=Edt_BillType2Name;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -