📄 xsgl.pas
字号:
unit xsgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBCtrls, RzDBCmbo, RzDBEdit, StdCtrls, Mask, RzEdit, RzLabel,
ExtCtrls, RzDBNav, Buttons, RzButton, Grids, DBGrids;
type
Txsglfrm = class(TForm)
grp1: TGroupBox;
grp2: TGroupBox;
dbgrd1: TDBGrid;
grp3: TGroupBox;
RzToolbarButton1: TRzToolbarButton;
RzToolbarButton2: TRzToolbarButton;
RzToolbarButton3: TRzToolbarButton;
RzToolbarButton4: TRzToolbarButton;
RzToolbarButton5: TRzToolbarButton;
RzDBNavigator1: TRzDBNavigator;
grp4: TGroupBox;
RzLabel1: TRzLabel;
RzLabel2: TRzLabel;
RzLabel3: TRzLabel;
RzLabel4: TRzLabel;
RzLabel5: TRzLabel;
RzLabel6: TRzLabel;
RzLabel9: TRzLabel;
RzLabel10: TRzLabel;
RzLabel11: TRzLabel;
RzLabel12: TRzLabel;
RzLabel13: TRzLabel;
RzLabel14: TRzLabel;
RzLabel7: TRzLabel;
RzLabel8: TRzLabel;
RzLabel15: TRzLabel;
RzDBEdit2: TRzDBEdit;
RzDBEdit5: TRzDBEdit;
RzDBEdit13: TRzDBEdit;
RzDBDateTimeEdit1: TRzDBDateTimeEdit;
RzDBEdit1: TRzDBEdit;
RzDBLookupComboBox1: TRzDBLookupComboBox;
RzDBLookupComboBox2: TRzDBLookupComboBox;
RzDBLookupComboBox8: TRzDBLookupComboBox;
RzLabel16: TRzLabel;
RzDBEdit4: TRzDBEdit;
RzDBEdit7: TRzDBEdit;
RzDBEdit8: TRzDBEdit;
RzDBEdit9: TRzDBEdit;
RzDBEdit10: TRzDBEdit;
RzDBEdit11: TRzDBEdit;
RzLabel18: TRzLabel;
RzDBEdit14: TRzDBEdit;
RzToolbarButton6: TRzToolbarButton;
Label2: TLabel;
RzDBEdit15: TRzDBEdit;
RzToolbarButton7: TRzToolbarButton;
RzToolbarButton8: TRzToolbarButton;
RzToolbarButton9: TRzToolbarButton;
grp5: TGroupBox;
RzDBEdit3: TRzDBEdit;
RzDBEdit6: TRzDBEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure RzToolbarButton2Click(Sender: TObject);
procedure RzToolbarButton1Click(Sender: TObject);
procedure RzToolbarButton5Click(Sender: TObject);
procedure RzDBLookupComboBox1Click(Sender: TObject);
procedure RzDBLookupComboBox2Click(Sender: TObject);
procedure RzDBEdit13KeyPress(Sender: TObject; var Key: Char);
procedure RzDBEdit13MouseEnter(Sender: TObject);
procedure RzDBEdit13MouseLeave(Sender: TObject);
procedure RzToolbarButton3Click(Sender: TObject);
procedure RzToolbarButton8Click(Sender: TObject);
procedure RzToolbarButton4Click(Sender: TObject);
procedure RzToolbarButton7Click(Sender: TObject);
procedure RzToolbarButton9Click(Sender: TObject);
procedure RzDBDateTimeEdit1Enter(Sender: TObject);
procedure RzToolbarButton6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
xsglfrm: Txsglfrm;
implementation
uses dm, main, xstj;
{$R *.dfm}
procedure Txsglfrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
mainfrm.pnl6dock:=False;
mainfrm.TabSheet6.Caption:='';
end;
procedure Txsglfrm.FormCreate(Sender: TObject);
var
path:string;
begin
path:=extractfilepath(application.ExeName)+'MDB\JXCGL.mdb';
dm1.qry10.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+path+';Persist Security Info=False';
DM1.qry10.SQL.Clear;
dm1.qry10.SQL.Add('select * from xsd ');
dm1.qry10.Active:=True;
dm1.qry9.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+path+';Persist Security Info=False';
DM1.qry9.SQL.Clear;
dm1.qry9.SQL.Add('select * from kcb ');
dm1.qry9.Active:=True;
dm1.qry7.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+path+';Persist Security Info=False';
DM1.qry7.SQL.Clear;
dm1.qry7.SQL.Add('select * from spzl ');
dm1.qry7.Active:=True;
dm1.qry3.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+path+';Persist Security Info=False';
DM1.qry3.SQL.Clear;
dm1.qry3.SQL.Add('select * from khzl ');
dm1.qry3.Active:=True;
dm1.qry2.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+path+';Persist Security Info=False';
DM1.qry2.SQL.Clear;
dm1.qry2.SQL.Add('select * from ygzl ');
dm1.qry2.Active:=True;
end;
procedure Txsglfrm.RzToolbarButton2Click(Sender: TObject);
begin
RzToolbarButton1.Enabled:=true;
dbgrd1.Enabled:=False;
RzToolbarButton2.Enabled:=false;
grp4.Enabled:=True;
DM1.qry10.Append;
end;
procedure Txsglfrm.RzToolbarButton1Click(Sender: TObject);
var
tmp_str,tmp:string;
exp_msg:Boolean;
begin
exp_msg:=false;
tmp_str:= RzDBEdit7.Text;
if ((RzDBDateTimeEdit1.Text='') or (RzDBEdit1.Text='') or
(RzDBEdit2.Text='') or(RzDBEdit3.Text='') or
(RzDBEdit4.Text='') or (RzDBEdit6.Text='') or
(RzDBEdit7.Text='') or (RzDBEdit8.Text='') or
(RzDBEdit9.Text='') or (RzDBEdit10.Text='') or
(RzDBEdit11.Text='') or
(RzDBEdit13.Text='') or (RzDBEdit14.Text='') or
(RzDBLookupComboBox1.text='') or (RzDBLookupComboBox2.text='') or
(RzDBLookupComboBox8.text='')) then begin
Application.MessageBox('请将信息添写完整!', '提示信息', MB_OK +
MB_ICONSTOP);
end
else begin//设置工作区状态
RzToolbarButton1.Enabled:=false;
RzToolbarButton2.Enabled:=true;
dbgrd1.Enabled:=True;
grp4.Enabled:=False;
//先取得JHJE进货价格
tmp:=Trim(RzDBLookupComboBox2.Text);
DM1.qry7.SQL.Clear;
dm1.qry7.SQL.Add('select * from spzl where spmc=:spmc1');
dm1.qry7.Parameters.ParamByName('spmc1').value:=tmp;
dm1.qry7.Active:=True;
RzDBEdit15.Text:=Trim(DM1.qry7.FieldByName('jhjg').Value);
//先到库存表中进行查询,然后进行出库
with dm1.qry9 do begin
SQL.Clear;
SQL.Add('select * from kcb where spbm=:spbm_a');
Parameters.ParamByName('spbm_a').Value:=Trim(tmp_str);
Active:=True;
end;
if dm1.qry9.RecordCount>0 then
begin
if StrToInt(dm1.qry9.FieldByName('kcsl').Value)<0 then begin
if Application.MessageBox('本商品的当前库存为负,还要向库中加入负库存吗?',
'提示信息', MB_YESNO + MB_ICONWARNING) = IDYES then
begin
exp_msg:=true;
with DM1.qry9 do begin
Active:=False;
SQL.Clear;
SQL.Add('update kcb set kcsl=kcsl-:kcsl_a,kcje=kcje-:kcje_a where ');
SQL.Add('spbm=:spbm_b');
Parameters.ParamByName('kcsl_a').Value:=StrToInt(Trim(RzDBEdit13.Text));
Parameters.ParamByName('kcje_a').Value:=IntToStr(StrToInt(Trim(RzDBEdit15.Text)) * StrToInt(Trim(RzDBEdit13.Text))); //计算进货价格
Parameters.ParamByName('spbm_b').Value:=Trim(tmp_str);
ExecSQL;
end;
end;
end
else
begin
exp_msg:=true;
with DM1.qry9 do begin
Active:=False;
SQL.Clear;
SQL.Add('update kcb set kcsl=kcsl-:kcsl_a,kcje=kcje-:kcje_a where ');
SQL.Add('spbm=:spbm_b');
Parameters.ParamByName('kcsl_a').Value:=StrToInt(Trim(RzDBEdit13.Text));
Parameters.ParamByName('kcje_a').Value:=IntToStr(StrToInt(Trim(RzDBEdit15.Text)) * StrToInt(Trim(RzDBEdit13.Text))); //计算进货价格
Parameters.ParamByName('spbm_b').Value:=Trim(tmp_str);
ExecSQL;
end;
end;
end
else
if Application.MessageBox('当前库存无此种商品,向库存中加入负库存吗?', '提示信息',
MB_YESNO + MB_ICONSTOP) = IDYES then
begin
begin
dm1.qry9.SQL.Clear;
DM1.qry9.SQL.Add('insert into kcb(ldrq,spbm,spmc,gg,xh,dw,kcsl,kcje)');
DM1.qry9.SQL.Add('values(:ldrq1,:spbm1,:spmc1,:gg1,:xh1,:dw1,:kcsl1,:kcje1)');
DM1.qry9.Parameters.ParamByName('ldrq1').Value:=RzDBDateTimeEdit1.Text;
DM1.qry9.Parameters.ParamByName('spbm1').Value:=RzDBEdit7.Text;
DM1.qry9.Parameters.ParamByName('spmc1').Value:=RzDBLookupComboBox2.Text;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -