?? rktk.~pas
字號(hào):
unit rktk;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Grids, DBGridEh, dxfColorButton,
cxLookAndFeelPainters, cxDBLookupComboBox, cxCalendar, cxCurrencyEdit,
cxDropDownEdit, cxSpinEdit, cxTextEdit, cxFilterControl,
cxDBFilterControl, cxLabel, StdCtrls, cxButtons, cxControls, cxContainer,
cxEdit, cxCheckBox, bsSkinCtrls, PrnDbgeh, Menus, AAFont, AACtrls,
cxMaskEdit, cxDBEdit;
type
Trktkck = class(TForm)
DBGridEh1: TDBGridEh;
DataSource1: TDataSource;
AALabel1: TAALabel;
DBGridEh2: TDBGridEh;
PopupMenu2: TPopupMenu;
MenuItem1: TMenuItem;
ePanel4: TbsSkinExPanel;
sBox1: TcxCheckBox;
sBox2: TcxCheckBox;
sBox3: TcxCheckBox;
sBox4: TcxCheckBox;
sBox5: TcxCheckBox;
sBox6: TcxCheckBox;
sBox7: TcxCheckBox;
sBox8: TcxCheckBox;
cxButton4: TcxButton;
AALabel2: TAALabel;
rkzk: TADOQuery;
DataSource7: TDataSource;
sprk: TADOQuery;
DataSource4: TDataSource;
sBox9: TcxCheckBox;
ePanel1: TbsSkinExPanel;
DBFc1: TcxDBFilterControl;
cxButton1: TcxButton;
DataSource6: TDataSource;
khzl: TADOQuery;
Table5: TADOTable;
DataSource5: TDataSource;
PEh2: TPrintDBGridEh;
DBGridEh3: TDBGridEh;
DataSource2: TDataSource;
ePanel2: TbsSkinExPanel;
cxLabel2: TcxLabel;
sEdit1: TcxSpinEdit;
cxLabel3: TcxLabel;
cxButton2: TcxButton;
cxLabel4: TcxLabel;
tEdit1: TcxDBTextEdit;
cxLabel5: TcxLabel;
DateEdit1: TcxDBDateEdit;
cxLabel6: TcxLabel;
cEdit1: TcxDBCurrencyEdit;
cxLabel7: TcxLabel;
cEdit2: TcxDBCurrencyEdit;
cEdit3: TcxDBCurrencyEdit;
cxLabel8: TcxLabel;
cxButton3: TcxButton;
dy: TcxCheckBox;
table1: TADOQuery;
table2: TADOQuery;
DBSEdit1: TcxDBSpinEdit;
cxLabel9: TcxLabel;
ADOQy1: TADOQuery;
ePanel3: TbsSkinExPanel;
cxLabel10: TcxLabel;
rBox1: TcxCheckBox;
kEdit1: TcxTextEdit;
DBGridEh4: TDBGridEh;
procedure FormCreate(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure DBGridEh1DblClick(Sender: TObject);
procedure sBox1PropertiesChange(Sender: TObject);
procedure sBox2PropertiesChange(Sender: TObject);
procedure sBox3PropertiesChange(Sender: TObject);
procedure sBox4PropertiesChange(Sender: TObject);
procedure sBox5PropertiesChange(Sender: TObject);
procedure sBox6PropertiesChange(Sender: TObject);
procedure sBox7PropertiesChange(Sender: TObject);
procedure sBox8PropertiesChange(Sender: TObject);
procedure sBox9PropertiesChange(Sender: TObject);
procedure cxButton3Click(Sender: TObject);
procedure cxButton2Click(Sender: TObject);
procedure cxButton4Click(Sender: TObject);
procedure DBGridEh2DblClick(Sender: TObject);
procedure DBSEdit1Exit(Sender: TObject);
procedure cxTextEdit1PropertiesChange(Sender: TObject);
procedure DBGridEh4DblClick(Sender: TObject);
procedure rBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
rktkck: Trktkck;
implementation
{$R *.dfm}
uses main;
procedure Trktkck.FormCreate(Sender: TObject);
begin
khzl.Open;
table5.Open;
epanel1.RollState:=true;
//epanel2.RollState:=true;
//epanel3.RollState:=true;
epanel4.RollState:=true;
epanel2.Enabled:=false;
cxbutton2.Enabled:=false;
sedit1.Value:=100;
//kedit1.SetFocus;
end;
procedure Trktkck.cxButton1Click(Sender: TObject);
begin
rkzk.Close;
rkzk.SQL.Clear;
rkzk.SQL.Add('select * from sprkzk where khmc=:bh and');
rkzk.SQL.Add(dbfc1.FilterText);
rkzk.Parameters[0].Value:=table2['khmc'];
rkzk.Open;
epanel1.RollState:=true;
end;
procedure Trktkck.DBGridEh1DblClick(Sender: TObject);
begin
sprk.Close;
sprk.SQL.Clear;
sprk.SQL.Add('select * from sprkd where jhbh=:bh');
sprk.Parameters[0].Value:=rkzk['jhbh'];
sprk.Open;
end;
procedure Trktkck.sBox1PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[0].Visible:=sbox1.Checked;
end;
procedure Trktkck.sBox2PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[1].Visible:=sbox2.Checked;
end;
procedure Trktkck.sBox3PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[2].Visible:=sbox3.Checked;
end;
procedure Trktkck.sBox4PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[3].Visible:=sbox4.Checked;
end;
procedure Trktkck.sBox5PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[4].Visible:=sbox5.Checked;
end;
procedure Trktkck.sBox6PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[5].Visible:=sbox6.Checked;
end;
procedure Trktkck.sBox7PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[6].Visible:=sbox7.Checked;
end;
procedure Trktkck.sBox8PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[7].Visible:=sbox8.Checked;
end;
procedure Trktkck.sBox9PropertiesChange(Sender: TObject);
begin
dbgrideh3.Columns[8].Visible:=sbox9.Checked;
end;
procedure Trktkck.cxButton3Click(Sender: TObject);
var i:integer;
begin
table1.UpdateBatch();
table2.UpdateBatch();
//記入客戶資料
if khzl.Locate('khmc',table2['khmc'],[]) then
begin
khzl.Edit;
khzl['ljxf']:=khzl['ljxf']-table2['je'];
//khzl['ljqk']:=khzl['ljqk'];
//khzl['ljyh']:=khzl['ljyh'];
end;
khzl.UpdateBatch();
//退入總庫
adoqy1.Close;
adoqy1.SQL.Clear;
adoqy1.SQL.Add('select * from spkc');
adoqy1.Open;
i:=1;
table1.DisableControls;
//加入商品總庫
table1.First;
while i<=table1.RecordCount do
begin
if adoqy1.Locate('spbh;ckh',vararrayof([table1['spbh'],table1['ckh']]),[]) then
begin
adoqy1.Edit;
//adoqy1['jj']:=(adoqy1['jj']+table1['jj'])/2;
adoqy1['sl']:=adoqy1['sl']-table1['sl'];
adoqy1['je']:=adoqy1['je']-(table1['sl']*table1['jj']);
end;
i:=i+1;
table1.Next;
end;
adoqy1.UpdateBatch();
//記入帳目總庫
adoqy1.Close;
adoqy1.SQL.Clear;
adoqy1.SQL.Add('select * from zmzk');
adoqy1.Open;
adoqy1.Append;
adoqy1['jhbh']:=table2['tkbh'];
adoqy1['jzbh']:=table2['tkbh'];
adoqy1['jzrq']:=date;
adoqy1['jzkm']:='退貨收款';
adoqy1['jzlx']:='收入';
adoqy1['je']:=table2['stje'];
adoqy1['qkje']:=0;
adoqy1['jzfs']:='現(xiàn)金';
adoqy1['nh']:=formatdatetime('YYYY',date);
adoqy1['YF']:=formatdatetime('MM',date);
adoqy1.UpdateBatch();
adoqy1.Close;
if dy.Checked then
begin
//打印
peh2.PrinterSetupDialog;
peh2.PageHeader.CenterText.Clear;
peh2.PageHeader.LeftText.Clear;
peh2.PageHeader.CenterText.Append(main.sydwqc+'退貨明細(xì)單');
peh2.PageHeader.LeftText.Append(' ');
peh2.PageHeader.RightText.Append(' ');
peh2.PageHeader.LeftText.Append('操作員:'+main.czy);
peh2.PageHeader.RightText.Append('打印日期:'+datetostr(date));
peh2.AfterGridText.Append('操作員:'+main.czy+' 供貨商:'+table2['khmc']);
//peh1.AfterGridText.Append('地址:'+bsskinlabel7.Caption+' 電話:'+bsskinlabel8.Caption);
peh2.Preview;
end;
close;
end;
procedure Trktkck.cxButton2Click(Sender: TObject);
begin
epanel2.Enabled:=true;
cedit2.SetFocus;
end;
procedure Trktkck.cxButton4Click(Sender: TObject);
begin
epanel4.RollState:=true;
end;
procedure Trktkck.DBGridEh2DblClick(Sender: TObject);
begin
if table1.RecordCount<=0 then
cxbutton2.Enabled:=true;
table1.Append;
table1['tkbh']:=table2['tkbh'];
table1['sjmc']:=sprk['sjmc'];
table1['sjbh']:=sprk['sjbh'];
table1['spmc']:=sprk['spmc'];
table1['spbh']:=sprk['spbh'];
table1['dw']:=sprk['dw'];
table1['pfj']:=sprk['pfj'];
table1['ckh']:=sprk['ckh'];
table1['jhbh']:=sprk['jhbh'];
table1['jj']:=sprk['jj'];
table1['sj']:=sprk['sj'];
table1['sl']:=sprk['sl'];
table1['je']:=sprk['je'];
table1['stje']:=sprk['je']*sedit1.Value/100;
table1['tkyy']:='質(zhì)量問題';
table1.Next;
table2.edit;
table2['je']:=dbgrideh3.Columns[5].Footers[0].SumValue;
table2['tkje']:=dbgrideh3.Columns[6].Footers[0].SumValue;
table2['stje']:=dbgrideh3.Columns[6].Footers[0].SumValue;
end;
procedure Trktkck.DBSEdit1Exit(Sender: TObject);
begin
table1.Edit;
table1['je']:=table1['sj']*table1['sl'];
table1['stje']:=table1['je']*sedit1.Value/100;
if table1.RecNo<>table1.RecordCount then
begin
table1.Next;
table1.Prior;
end else table1.Next;
table2.edit;
table2['je']:=dbgrideh3.Columns[5].Footers[0].SumValue;
table2['tkje']:=dbgrideh3.Columns[6].Footers[0].SumValue;
table2['stje']:=dbgrideh3.Columns[6].Footers[0].SumValue;
end;
procedure Trktkck.cxTextEdit1PropertiesChange(Sender: TObject);
begin
khzl.Close;
khzl.SQL.Clear;
if rbox1.Checked then
begin
khzl.SQL.Add('select * from ghszl where zjm like :mc');
khzl.Parameters[0].Value:='%'+kedit1.Text+'%';
end else
begin
khzl.SQL.Add('select * from ghszl where khmc like :mc');
khzl.Parameters[0].Value:='%'+kedit1.Text+'%';
end;
khzl.Open;
end;
procedure Trktkck.DBGridEh4DblClick(Sender: TObject);
begin
rkzk.Close;
rkzk.SQL.Clear;
rkzk.SQL.Add('select * from sprkzk where khmc=:bh');
rkzk.Parameters[0].Value:=khzl['khmc'];
rkzk.Open;
if rkzk.RecordCount>0 then
begin
sprk.Close;
sprk.SQL.Clear;
sprk.SQL.Add('select * from sprkd where jhbh=:bh');
sprk.Parameters[0].Value:=rkzk['jhbh'];
sprk.Open;
epanel3.RollState:=true;
epanel3.Enabled:=false;
table2.Close;
table2.SQL.Clear;
table2.SQL.Add('select * from spthzk where tkbh like :bh');
table2.Parameters[0].Value:=formatdatetime('YYYYMM',date);
table2.open;
table2.Append;
table2['tkbh']:=formatdatetime('YYYYMMDDhhmmss',now);
table2['tkrq']:=date;
table2['khmc']:=khzl['khmc'];
table2['khbh']:=khzl['khbh'];
table1.Close;
table1.SQL.Clear;
table1.SQL.Add('select * from spthd where tkbh=:bh');
table1.Parameters[0].Value:=table2['tkbh'];
table1.Open;
epanel1.Enabled:=true;
dbgrideh1.Enabled:=true;
dbgrideh2.Enabled:=true;
dbgrideh3.Enabled:=true;
end else
begin
showmessage('此客戶無銷售記錄!');
kedit1.SetFocus;
end;
end;
procedure Trktkck.rBox1Click(Sender: TObject);
begin
kedit1.SetFocus;
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -