📄 ugysxx.~pas
字号:
unit UGYSXX;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, ExtCtrls, StdCtrls;
type
TGYSXX = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Memo1: TMemo;
GroupBox2: TGroupBox;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure Edit5KeyPress(Sender: TObject; var Key: Char);
procedure Edit6KeyPress(Sender: TObject; var Key: Char);
procedure Edit7KeyPress(Sender: TObject; var Key: Char);
procedure Edit8KeyPress(Sender: TObject; var Key: Char);
procedure Edit9KeyPress(Sender: TObject; var Key: Char);
procedure Edit10KeyPress(Sender: TObject; var Key: Char);
procedure Edit2Change(Sender: TObject);
procedure Edit3Change(Sender: TObject);
procedure Edit4Change(Sender: TObject);
procedure Edit5Change(Sender: TObject);
procedure Edit6Change(Sender: TObject);
procedure Edit7Change(Sender: TObject);
procedure Edit8Change(Sender: TObject);
procedure Edit9Change(Sender: TObject);
procedure Edit10Change(Sender: TObject);
procedure Memo1Change(Sender: TObject);
private
{ Private declarations }
public
Procedure bh;
function CanSave: Boolean;
procedure posting;
procedure GetAll;
procedure tr;
{ Public declarations }
end;
var
GYSXX: TGYSXX;
implementation
uses UMAIN, UDM, UGYSXX_Z;
{$R *.dfm}
procedure TGYSXX.tr;
var
i:integer;
begin
for i:=ComponentCount - 1 downto 0 do
if(Components[i] is TEdit) then
TEdit(Components[i]).Text:=trim(TEdit(Components[i]).Text);
end;
procedure TGYSXX.GetAll;//获得所有数据
begin
Edit1.Text:=DM.DSOGYSXX.FieldByName('供应商编号').AsString;
Edit2.Text:=DM.DSOGYSXX.FieldByName('供应商名称').AsString;
Edit3.Text:=DM.DSOGYSXX.FieldByName('供应商地址').AsString;
Edit4.Text:=DM.DSOGYSXX.FieldByName('联系人').AsString;
Edit5.Text:=DM.DSOGYSXX.fieldByName('联系电话').AsString;
Edit6.Text:=DM.DSOGYSXX.FieldByName('传真').AsString;
Edit7.Text:=DM.DSOGYSXX.FieldByName('邮政编码').AsString;
Edit8.Text:=DM.DSOGYSXX.FieldByName('所属地区').AsString;
Edit9.Text:=DM.DSOGYSXX.FieldByName('开户银行').AsString;
Edit10.Text:=DM.DSOGYSXX.FieldByName('银行账号').AsString;
Memo1.Text:=DM.DSOGYSXX.FieldByName('备注').AsString;
end;
procedure TGYSXX.Posting; //提交数据
begin
if ActionCD='N' then
BEGIN
with DM.QGYSXX do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO 供应商基本信息(供应商名称,供应商地址,联系人,联系电话,传真,邮政编码,所属地区,开户银行,银行账号,备注,供应商编号)');
SQL.Add('Values(:供应商名称,:供应商地址,:联系人,:联系电话,:传真,:邮政编码,:所属地区,:开户银行,:银行账号,:备注,:供应商编号)');
Parameters.Items[0].Value:=Edit2.Text;
Parameters.Items[1].Value:=Edit3.Text;
Parameters.Items[2].Value:=Edit4.Text;
Parameters.Items[3].Value:=Edit5.Text;
Parameters.Items[4].Value:=Edit6.Text;
Parameters.Items[5].Value:=Edit7.Text;
Parameters.Items[6].Value:=Edit8.Text;
Parameters.Items[7].Value:=Edit9.Text;
Parameters.Items[8].Value:=Edit10.Text;
Parameters.Items[9].Value:=Memo1.Text;
Parameters.Items[10].Value:=Edit1.Text;
Prepared:=True;
ExecSQL;
end;
END else
if ActionCD='M' then
begin
With DM.QGYSXX DO
begin
Close;
SQL.Clear;
SQL.Add('update 供应商基本信息 Set 供应商名称=:供应商名称1,');
SQL.Add('供应商地址=:供应商地址1,联系人=:联系人1,联系电话=:联系电话1,传真=:传真1,');
SQL.Add('邮政编码=:邮政编码1,所属地区=:所属地区1,开户银行=:开户银行1,银行账号=:银行账号1,备注=:备注1 Where 供应商编号=:供应商编号1');
Parameters.Items[0].Value:=Edit2.Text;
Parameters.Items[1].Value:=Edit3.Text;
Parameters.Items[2].Value:=Edit4.Text;
Parameters.Items[3].Value:=Edit5.Text;
Parameters.Items[4].Value:=Edit6.Text;
Parameters.Items[5].Value:=Edit7.Text;
Parameters.Items[6].Value:=Edit8.Text;
Parameters.Items[7].Value:=Edit9.Text;
Parameters.Items[8].Value:=Edit10.Text;
Parameters.Items[9].Value:=Memo1.Text;
Parameters.Items[10].Value:=DM.DSOGYSXX.FieldByName('供应商编号').AsString;
Prepared:=true;
ExecSQL;
end;
end;
end;
function TGYSXX.CanSave: Boolean;//判断是否保存
begin
if Edit1.Text='' then
begin
Result:=False;
Application.MessageBox('供应商编号不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit2.Text='' then
begin
Result:=False;
Application.MessageBox('供应商名称不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit3.Text='' then
begin
Result:=False;
Application.MessageBox('供应商地址不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit4.Text='' then
begin
Result:=False;
Application.MessageBox('联系人不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit5.Text='' then
begin
Result:=False;
Application.MessageBox('联系电话不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit6.Text='' then
begin
Result:=False;
Application.MessageBox('传真不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit7.Text='' then
begin
Result:=False;
Application.MessageBox('邮政编码不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit8.Text='' then
begin
Result:=False;
Application.MessageBox('所属地区不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit9.Text='' then
begin
Result:=False;
Application.MessageBox('开户银行不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if Edit10.Text='' then
begin
Result:=False;
Application.MessageBox('银行账号不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
end;
procedure TGYSXX.BH;
var
s,m:string;
i:integer;
begin
s:= 'GS'+ FormatDateTime('yyyymmdd',Now());
With DM.QGYSXX do
begin
Close;
SQL.Clear;
SQL.Add('select max(供应商编号) as ss From 供应商基本信息 ');
Open;
end;
If DM.DSOGYSXX.FieldByName('供应商编号').Value = null then
s := s + '001'
else
begin
DM.DSOGYSXX.Last;
m:= Trim(DM.DSOGYSXX.FieldByName('供应商编号').Value) ;
i:= StrToInt(Trim(Copy(m,11,8))) ;
if i<9 then
s:= s + '00'+ InttoStr(i +1)
else if i<99 then
s:= s + '0'+ InttoStr(i +1)
else
s:= s +InttoStr(i +1);
end;
Edit1.Text := s;
{ with DM.QGYSXX do
begin
Close;
SQL.Clear;
SQL.Add('Select max(供应商编号) as 编号 From 供应商基本信息');
Open;
end;
if DM.DSOGYSXX.FieldByName('供应商编号').Value=null then
s:=s+'1'
else
begin
DM.DSOGYSXX.Last;
m:=Trim(DM.DSOGYSXX.Fieldbyname('供应商编号').Value);
s:=inttostr(strtoint(m)+1);
end;
Edit1.Text:=s; }
end;
procedure TGYSXX.SpeedButton5Click(Sender: TObject);
begin
ActionCD:='';
Close;
end;
procedure TGYSXX.SpeedButton1Click(Sender: TObject);
begin
GroupBox1.Enabled:=True;
SpeedButton2.Enabled:=False;
SpeedButton3.Enabled:=True;
SpeedButton4.Enabled:=True;
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
Edit6.Clear;
Edit7.Clear;
Edit8.Clear;
Edit9.Clear;
Edit10.Clear;
Memo1.Clear;
ActionCD:= 'N';
bh;
Edit2.SetFocus;
SpeedButton1.Enabled:=False;
end;
procedure TGYSXX.SpeedButton2Click(Sender: TObject);
begin
GroupBox1.Enabled:=True;
SpeedButton1.Enabled:=False;
SpeedButton3.Enabled:=True;
SpeedButton4.Enabled:=True;
ACtionCD := 'M';
end;
procedure TGYSXX.SpeedButton3Click(Sender: TObject);
begin
if (cansave) then
begin
Posting; // 提交存盘
GroupBox1.Enabled:=False;
DM.DSOGYSXX.Close;
DM.DSOGYSXX.Open;
With DM.QGYSXX do
begin
Close;
SQL.Clear;
SQL.Add('Select * from 供应商基本信息');
Open;
end;
Application.MessageBox('保存成功!','提示!',64);
actioncd:='';
GYSXX.Close;
end;
end;
procedure TGYSXX.SpeedButton4Click(Sender: TObject);
begin
SpeedButton1.Enabled:=True;
SpeedButton2.Enabled:=True;
SpeedButton3.Enabled:=False;
SpeedButton4.Enabled:=False;
GroupBox1.Enabled:=False;
ActionCD:='';
GetAll;
end;
procedure TGYSXX.FormShow(Sender: TObject);
begin
GroupBox1.Enabled:=False;
if ActionCD = 'M' then
GetAll
else if ActionCD = 'N' then
begin
GroupBox1.Enabled:=False;
end;
end;
procedure TGYSXX.FormCreate(Sender: TObject);
begin
with DM.QGYSXX do
begin
Close;
SQL.Clear;
SQL.Add('select * from 供应商基本信息');
Open;
end;
DM.DSOGYSXX.Open;
end;
procedure TGYSXX.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key in['a'..'z','A'..'Z','0'..'9',#46] then
key:=#0;
if key=#13 then
Edit3.SetFocus;
end;
procedure TGYSXX.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if key in[#46] then
key:=#0;
if key=#13 then
Edit4.SetFocus;
end;
procedure TGYSXX.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if key in['a'..'z','A'..'Z','0'..'9',#46] then
key:=#0;
if key=#13 then
Edit5.SetFocus;
end;
procedure TGYSXX.Edit5KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['-','0'..'9',#13,#8]) then
key:=#0;
if key=#13 then
Edit6.SetFocus;
end;
procedure TGYSXX.Edit6KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['-','0'..'9',#13,#8]) then
key:=#0;
if key=#13 then
Edit7.SetFocus;
end;
procedure TGYSXX.Edit7KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9',#13,#8]) then
key:=#0;
if key=#13 then
Edit8.SetFocus;
end;
procedure TGYSXX.Edit8KeyPress(Sender: TObject; var Key: Char);
begin
if key in['a'..'z','A'..'Z','0'..'9',#46] then
key:=#0;
if key=#13 then
Edit9.SetFocus;
end;
procedure TGYSXX.Edit9KeyPress(Sender: TObject; var Key: Char);
begin
if key in['a'..'z','A'..'Z','0'..'9',#46] then
key:=#0;
if key=#13 then
Edit10.SetFocus;
end;
procedure TGYSXX.Edit10KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9',#13,#8]) then
key:=#0;
if key=#13 then
Memo1.SetFocus;
end;
procedure TGYSXX.Edit2Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit3Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit4Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit5Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit6Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit7Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit8Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit9Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Edit10Change(Sender: TObject);
begin
tr;
end;
procedure TGYSXX.Memo1Change(Sender: TObject);
begin
Memo1.Text:=Trim(Memo1.Text);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -