?? backedit.pas
字號:
unit BackEdit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, cxControls, cxContainer, cxEdit, cxTextEdit,
cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, DB, ADODB,
Mask, DBCtrls;
type
TfrmBackEdit = class(TForm)
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
dsHouse: TDataSource;
qryHouse: TADOQuery;
qryBookClass: TADOQuery;
dsBookClass: TDataSource;
dbedtCount: TDBEdit;
dsqryBackSubs: TDataSource;
cxlcbBookId: TcxLookupComboBox;
DBEdit1: TDBEdit;
Label5: TLabel;
Label6: TLabel;
edtdiscount: TEdit;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure edtdiscountKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmBackEdit: TfrmBackEdit;
implementation
uses unSystPublic, BackUnit;
{$R *.dfm}
procedure TfrmBackEdit.BitBtn1Click(Sender: TObject);
function getBundles(Acount:integer):string;
var tint:integer;
begin
tint :=qryBookClass.fieldbyname('Volumes').AsInteger;
Result :=inttostr(Trunc(Acount/tint))+'+'+inttostr(Acount mod tint)+'('+inttostr(tint)+')';
end;
var Count,Bao,Ce:integer;
begin
if cxlcbBookId.Text ='' then
begin
Application.MessageBox('編號不能為空',Title,MB_ICONWARNING);
Abort;
end else
if dbedtCount.Text ='' then
begin
Application.MessageBox('數量不能為空',Title,MB_ICONWARNING);
Abort;
end else
if edtdiscount.Text ='' then
begin
Application.MessageBox('折扣不能為空',Title,MB_ICONWARNING);
Abort;
end ;//else
//if cxcbPosHouse.Text ='' then
//begin
// Application.MessageBox('庫位不能為空',Title,MB_ICONWARNING);
// Abort;
//end;
with frmBackUnit.qryBackSubs do
begin
FieldByName('discount').AsFloat :=strtofloat(edtdiscount.Text)/100;
FieldByName('BookId').AsString :=cxlcbBookId.Text;
qryBookClass.Locate('BookId',cxlcbBookId.Text,[loCaseInsensitive]);
FieldByName('BookName').AsString :=qryBookClass.fieldbyname('BookName').AsString;
FieldByName('BookEdition').AsString :=qryBookClass.fieldbyname('BookEdition').AsString;
FieldByName('BookPrice').AsString :=qryBookClass.fieldbyname('BookPrice').AsString;
FieldByName('HousePos').AsString :='0';//cxcbPosHouse.Text;//qryHouse.fieldbyname('HouseName').AsString;
FieldByName('BackType').AsString :='1';
Count :=FieldByName('BookCount').AsInteger;
if FieldByName('BookPrice').AsString<>'' then
begin
FieldByName('TotalMoney').AsFloat :=Count * FieldByName('BookPrice').AsFloat ;
FieldByName('Bundles').AsString := getBundles(Count);
end;
if (FieldByName('BookPrice').AsString<>'') and (FieldByName('BookCount').AsString<>'') then
FieldByName('RealMoney').AsFloat :=FieldByName('BookCount').AsInteger * FieldByName('BookPrice').AsFloat * FieldByName('Discount').AsFloat;
if State in [dsEdit,dsInsert] then
Post;
end;
close;
end;
procedure TfrmBackEdit.BitBtn2Click(Sender: TObject);
begin
frmBackUnit.qryBackSubs.Cancel;
end;
procedure TfrmBackEdit.FormCreate(Sender: TObject);
begin
qryBookClass.Open;
qryHouse.Open;
end;
procedure TfrmBackEdit.edtdiscountKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',#8]) then
key :=#0;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -