?? unitmycx.pas
字號:
unit UnitMYCX;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Buttons, ComCtrls, Grids, DBGrids;
type
TFrmMYCX = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
DBGrid1: TDBGrid;
Label2: TLabel;
DateTimePicker1: TDateTimePicker;
BitBtn1: TBitBtn;
GroupBox1: TGroupBox;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label5: TLabel;
DBGrid2: TDBGrid;
Label6: TLabel;
DateTimePicker2: TDateTimePicker;
BitBtn2: TBitBtn;
Label7: TLabel;
Edit3: TEdit;
BitBtn3: TBitBtn;
procedure PageControl1Change(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmMYCX: TFrmMYCX;
implementation
uses UnitDM, MYCX2QRT1;
{$R *.dfm}
procedure TFrmMYCX.PageControl1Change(Sender: TObject);
begin
case PageControl1.TabIndex of
0:
begin
DM.ADOQTEMP6.Close;
DM.ADOQTEMP6.Open;
caption := '銷售';
Edit1.Enabled := false;
Edit2.Enabled := false;
Edit1.Color := clLtGray;
Edit2.Color := clLtGray;
end;
1:
begin
caption := '退貨';
Edit3.Enabled := false;
Edit3.Color := clLtGray;
end;
end;
end;
procedure TFrmMYCX.FormShow(Sender: TObject);
begin
DM.ADOQTEMP6.Close;
DM.ADOQTEMP6.Open;
DM.ADOQTEMP1.Close;
DM.ADOQTEMP1.Open;
end;
procedure TFrmMYCX.BitBtn1Click(Sender: TObject);
var
str1, str2, str3: string;
moneys: real;
begin
moneys := 0;
str1 := 'select sell_id, sell_prod_id, sell_prod_name, sell_prod_price, sell_number, sell_money, sell_time from sell where sell_time = :time';
str2 := 'select sum(sell_money) total_money from sell';
str3 := 'select in_price from stock where in_prod_id = :id';
with DM.ADOQTEMP6 do
begin
close;
SQL.Clear;
SQL.Add(str1);
parameters.ParamByName('time').Value := Datetimepicker1.Date;
if (not prepared) then
prepared := true;
try
open;
except
ExecSQL;
end;
while (not eof) do
begin
with DM.ADOQTEMP2 do
begin
close;
SQL.Clear;
SQL.Add(str3);
parameters.ParamByName('id').Value := DM.ADOQTEMP6.fieldbyname('sell_prod_id').Value;
if (not prepared) then
prepared := true;
try
open;
except
ExecSQL;
end;
moneys := moneys + DM.ADOQTEMP2.fieldbyname('in_price').Value * DM.ADOQTEMP6.fieldbyname('sell_number').Value;
end;
next;
end;
end;
with DM.ADOQTEMP1 do
begin
close;
SQL.Clear;
SQL.Add(str2);
if (not prepared) then
prepared := true;
try
open;
except
ExecSQL;
end;
Edit1.Text := fieldbyname('total_money').AsVariant;
end;
Edit2.Text := floattostr(strtofloat(Edit1.Text) - moneys);
Edit1.Enabled := true;
Edit1.Color := clwindow;
Edit2.Enabled := true;
Edit2.Color := clWindow;
end;
procedure TFrmMYCX.BitBtn2Click(Sender: TObject);
var
str1, str2: string;
moneys: real;
begin
moneys := 0;
str1 := 'select * from back where back_time = :time';
str2 := 'select in_price from stock where in_prod_id = :id';
with DM.ADOQTEMP1 do
begin
close;
SQL.Clear;
SQL.Add(str1);
parameters.ParamByName('time').Value := DateTimepicker2.Date;
if (not prepared) then
prepared := true;
try
open;
except
ExecSQL;
end;
while (not eof) do
begin
with DM.ADOQTEMP2 do
begin
close;
SQL.Clear;
SQL.Add(str2);
parameters.ParamByName('id').Value := DM.ADOQTEMP1.fieldbyname('back_prod_id').Value;
if (not prepared) then
prepared := true;
try
open;
except
ExecSQL;
end;
moneys := moneys + DM.ADOQTEMP2.fieldbyname('in_price').Value * DM.ADOQTEMP1.fieldbyname('back_prod_number').Value;
end;
next;
end;
end;
Edit3.Text := floattostr(moneys);
Edit3.Enabled := true;
Edit3.Color := clWindow;
end;
procedure TFrmMYCX.BitBtn3Click(Sender: TObject);
begin
QRTMYCX2.Preview;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -