📄 unit16.pas
字号:
unit Unit16;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,unit2, DB, ADODB, StdCtrls, Grids, DBGrids, XPMenu;
type
(*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa*)
//取消某台进货的窗体
(*bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb*)
TForm16 = class(TForm)
DBGrid1: TDBGrid;
Label1: TLabel;
Button1: TButton;
db1: TADOQuery;
db2: TADOQuery;
DataSource1: TDataSource;
XPMenu1: TXPMenu;
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form16: TForm16;
implementation
{$R *.dfm}
procedure TForm16.Button1Click(Sender: TObject);
var r,s,t:string;
count:integer;
begin
if db1.IsEmpty then begin
showmessage('今天没有进货,不能取消进货。');
exit;
end;
if messagedlg('你确定这台进货是错误的?',mtconfirmation,[mbyes,mbno],1)=mrno then exit;
//将库存中的与该台相符的一类数量减1,并且如果为零则删除;
r:=db1.FieldValues['型号'];
s:=db1.FieldValues['进货时间'];
t:=db1.FieldValues['进价'];
db2.Close;
db2.SQL.Clear;
db2.sql.Add('select * from 库存详单 where ');
db2.sql.add(format('型号=''%s'' and 进货时间=#%s# and 进价=%s',[r,s,t]));
db2.Open;
db2.First;
db2.Edit;
count:=db2.FieldValues['数量'];
count:=count-1;
db2.FieldValues['数量']:=count;
db2.Post;
if count<=0 then db2.Delete;
//同时要将这台信息从进货详单中删除。
db1.Delete;
showmessage('成功取消这台进货');
end;
procedure TForm16.FormShow(Sender: TObject);
begin
db1.close;
db1.sql.clear;
db1.SQL.add('select * from 进货详单 where ');
db1.SQL.add('进货时间=#'+datetostr(now)+'#');
db1.Open;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -