📄 unitaddlist.pas
字号:
unit unitaddlist;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxExEdtr, dxEdLib, dxCntner, dxEditor, StdCtrls, ExtCtrls;
type
TFormaddlist = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Button1: TButton;
Button2: TButton;
Label8: TLabel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label7: TLabel;
Label6: TLabel;
Edlist: TEdit;
Edhm: TEdit;
Clx: TComboBox;
Czt: TComboBox;
Cdd: TComboBox;
Cry: TComboBox;
dxCurrencyEdit1: TdxCurrencyEdit;
dxDateEdit1: TdxDateEdit;
procedure Button2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure EdhmKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure EdhmKeyPress(Sender: TObject; var Key: Char);
procedure ClxKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure CztKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure CddKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure CryKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure dxCurrencyEdit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure dxDateEdit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
function zhid:Integer;
{ Private declarations }
public
{ Public declarations }
end;
var
Formaddlist: TFormaddlist;
implementation
uses UDM;
{$R *.dfm}
function TFormaddlist.zhid;
begin
with DM.ADOTEMP do
begin
Close;
SQL.Clear;
SQL.Add('select isnull(max(libnumber),0)+1 from libnumberls');
Prepared;
Open;
end;
Result:=DM.ADOTEMP.Fields[0].AsInteger;
end;
procedure TFormaddlist.Button2Click(Sender: TObject);
begin
close;
end;
procedure TFormaddlist.FormShow(Sender: TObject);
var
counter:Integer;
id:string;
begin
Edlist.Enabled:=False;
Edlist.Color:=clScrollBar;
Edlist.Text:='';
Edhm.Text:='';
Clx.Text:='';
Czt.Text:='';
Cry.Text:='';
with DM.T_COUNTER do
begin
Filter:='id=''B''';
Filtered:=true;
open;
counter:=fieldbyname('countervalues').AsInteger;
inc(counter);
edit;
fieldbyname('countervalues').AsInteger:=counter;
post;
close;
end;
id:='000'+inttostr(counter);
id:=copy(id,length(id)-3,4);
id:=formatdatetime('yyyy',now)+id;
Edlist.Text:=id;
Edhm.SetFocus;
with dm.ADOTP do
begin
close;
SQL.Clear;
SQL.Add('SELECT typename FROM typeunit');
Prepared;
Open;
end;
Clx.Items.Clear;
while not dm.ADOTP.Eof do
begin
Clx.Items.Append(dm.ADOTP.Fields[0].AsString);
dm.ADOTP.Next;
end;
with dm.ADOTP do
begin
close;
SQL.Clear;
SQL.Add('SELECT djzt FROM meun_zt');
Prepared;
Open;
end;
Czt.Items.Clear;
while not dm.ADOTP.Eof do
begin
Czt.Items.Append(dm.ADOTP.Fields[0].AsString);
DM.ADOTP.Next;
end;
with dm.ADOTP do
begin
close;
SQL.Clear;
SQL.Add('SELECT placename FROM ly_place');
Prepared;
Open;
end;
Cdd.Items.Clear;
while not dm.ADOTP.Eof do
begin
Cdd.Items.Append(dm.ADOTP.Fields[0].AsString);
DM.ADOTP.Next;
end;
with dm.ADOTP do
begin
close;
SQL.Clear;
SQL.Add('SELECT username FROM usertable');
Prepared;
Open;
end;
Cry.Items.Clear;
while not dm.ADOTP.Eof do
begin
Cry.Items.Append(dm.ADOTP.Fields[0].AsString);
DM.ADOTP.Next;
end;
end;
procedure TFormaddlist.Button1Click(Sender: TObject);
begin
try
dm.ADOCon1.BeginTrans;
with dm.ADOTY do
begin
Close;
SQL.Clear;
SQL.Add('insert into libnumberls');
SQL.Add('(libnumber,list,numberid,numbertype,hxbz,rq,lypername,jine,A,B,LIBnumberplace,zt,sxdm)');
SQL.Add('values');
SQL.add('(:lib,:list,:numberid,:numbertype,1,:rq,:lypername,:jine,1,1,:LIBnumberplace,:zt,:sxdm)');
Parameters.ParamByName('lib').Value:=zhid;
Parameters.ParamByName('list').Value:=Edlist.Text;
Parameters.ParamByName('numberid').Value:=Edhm.Text;
Parameters.ParamByName('numbertype').Value:=Clx.Text;
Parameters.ParamByName('rq').Value:=dxDateEdit1.Date;
Parameters.ParamByName('lypername').Value:=Cry.Text;
Parameters.ParamByName('jine').Value:=dxCurrencyEdit1.Value;
Parameters.ParamByName('LIBnumberplace').Value:=Cdd.Text;
Parameters.ParamByName('zt').Value:=Czt.Text;
Parameters.ParamByName('sxdm').Value:=dm.HDM;
ExecSQL;
end;
dm.ADOCon1.CommitTrans;
except
dm.ADOCon1.RollbackTrans;
end;
Edhm.Text:='';
Cry.Text:='';
Clx.Text:='';
Czt.Text:='';
Cdd.Text:='';
Edlist.Text:='';
dm.ADOCODE.Close;
dm.ADOCODE.Open;
close;
end;
procedure TFormaddlist.EdhmKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=$0D THEN
Clx.SetFocus;
end;
procedure TFormaddlist.EdhmKeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['0'..'9',#8]) then
key:=#0;
end;
procedure TFormaddlist.ClxKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=$0D THEN
Czt.SetFocus;
end;
procedure TFormaddlist.CztKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=$0D THEN
Cdd.SetFocus;
end;
procedure TFormaddlist.CddKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=$0D THEN
Cry.SetFocus;
end;
procedure TFormaddlist.CryKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=$0D THEN
dxCurrencyEdit1.SetFocus;
end;
procedure TFormaddlist.dxCurrencyEdit1KeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if Key=$0D THEN
dxDateEdit1.SetFocus;
end;
procedure TFormaddlist.dxDateEdit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
Button1Click(Sender);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -