📄 unxsb.pas
字号:
unit UNXSB;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids, DBGrids,DBCtrls, Mask, DB, DBTables;
type
TFMXSB = class(TForm)
DBGrid1: TDBGrid;
Edit1: TEdit;
Edit2: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
Label1: TLabel;
Label2: TLabel;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FMXSB: TFMXSB;
implementation
uses UNSPXXBD, UNXSBD, UNJHD, UNXSBO, UNJHBO;
{$R *.dfm}
procedure TFMXSB.BitBtn2Click(Sender: TObject);
VAR
LOC3:BOOLEAN;
LOC4:BOOLEAN;
LOCOP:TLOCATEOPTIONS;
Nb:REAL;
Nc:REAL;
STR2:STRING;
begin
IF (EDIT1.Text='') OR (EDIT2.Text='') THEN
BEGIN
SHOWMESSAGE('请输入商品编号和数量!');
ABORT;
END;
LOC3:=FMSPXXBD.TSPXXB.Locate('SPNO',EDIT1.Text,LOCOP);
IF LOC3=TRUE THEN
BEGIN
FMSPXXBD.TSPXXB.Edit;
FMSPXXBD.TSPXXB.FieldByName('BDKCL').Value:=FMSPXXBD.TSPXXB.FieldByName('BDKCL').Value-STRTOINT(EDIT2.Text);
FMSPXXBD.TSPXXB.Post;
END;
IF LOC3=FALSE THEN
BEGIN
SHOWMESSAGE('无此商品!');
abort;
END;
/////////////////////////////////////
LOC4:=FMXSBD.TXSB.Locate('SPNO',EDIT1.Text,LOCOP);
BEGIN
IF LOC4=FALSE THEN
BEGIN
FMXSBD.TXSB.Active:=TRUE;
FMSPXXBD.TSPXXB.Active:=TRUE;
FMXSBD.TXSB.InsertRecord([EDIT1.Text,STRTOINT(EDIT2.Text)]);
FMSPXXBD.TSPXXB.FindKey([EDIT1.Text]);
STR2:=FMSPXXBD.TSPXXB.FieldByName('SPNAM').AsString;
Nb:=FMSPXXBD.TSPXXB.FieldByName('MORCB').AsFloat;
FMXSBD.TXSB.FindKey([EDIT1.Text]);
FMXSBD.TXSB.Edit;
FMXSBD.TXSB.FieldByName('XSXJ').AsFloat:=STRTOFLOAT(Edit2.Text)*Nb;
FMXSBD.TXSB.FieldByName('SPNAM').Value:=STR2;
FMXSBD.TXSB.FieldByName('BZJG').Value:=Nb;
FMXSBD.TXSB.Post;
END;
IF LOC4=True THEN
BEGIN
FMXSBD.TXSB.Active:=TRUE;
FMSPXXBD.TSPXXB.Active:=TRUE;
FMSPXXBD.TSPXXB.FindKey([EDIT1.Text]);
Nc:=FMSPXXBD.TSPXXB.FieldByName('MORCB').AsFloat;
FMXSBD.TXSB.FindKey([EDIT1.Text]);
FMXSBD.TXSB.Edit;
FMXSBD.TXSB.FieldByName('SPNUM').Value:=FMXSBD.TXSB.FieldByName('SPNUM').Value+STRTOINT(EDIT2.Text);
FMXSBD.TXSB.FieldByName('XSXJ').AsFloat:=STRTOFLOAT(Edit2.Text)*Nc+FMXSBD.TXSB.FieldByName('XSXJ').Value;
END;
END;
end;
procedure TFMXSB.BitBtn1Click(Sender: TObject);
begin
EDIT1.Text:='';
EDIT2.Text:='1';
end;
procedure TFMXSB.BitBtn3Click(Sender: TObject);
VAR
STR4:STRING;
begin
BEGIN
STR4:=FMXSBD.TXSB.FIELDBYNAME('SPNO').AsString;
FMSPXXBD.TSPXXB.Active;
FMSPXXBD.TSPXXB.FindKey([STR4]);
FMSPXXBD.TSPXXB.Edit;
FMSPXXBD.TSPXXB.FieldByName('BDKCL').AsFloat:=FMSPXXBD.TSPXXB.FieldValues['BDKCL']+FMXSBD.TXSB.FieldValues['SPNUM'];
FMSPXXBD.TSPXXB.Post;
END;
WITH FMXSBD.TXSB DO
BEGIN
Delete;
EDIT1.Text:='';
EDIT2.Text:='';
ShowMessage('删除成功');
END;
end;
procedure TFMXSB.BitBtn4Click(Sender: TObject);
begin
FMXSBO.QUICKREP1.PREVIEW;
end;
procedure TFMXSB.BitBtn5Click(Sender: TObject);
begin
FMXSBO.QUICKREP1.Print;
end;
procedure TFMXSB.BitBtn6Click(Sender: TObject);
begin
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -