?? xstj.pas
字號(hào):
unit xstj;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, ComCtrls, ExtCtrls, Grids, DBGrids, Gauges, Db,
DBTables;
type
TFrmxstj = class(TForm)
Panel1: TPanel;
Label3: TLabel;
Label4: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
Label1: TLabel;
ComboBox_bm: TComboBox;
ComboBox_ywy: TComboBox;
SpeedButton1: TSpeedButton;
Label2: TLabel;
Edit_khmc: TEdit;
BitBtn3: TBitBtn;
Label5: TLabel;
Label6: TLabel;
Shape1: TShape;
BitBtn4: TBitBtn;
Label7: TLabel;
Label_je: TLabel;
Label9: TLabel;
Label_cb: TLabel;
Label11: TLabel;
Label_sj: TLabel;
Label15: TLabel;
Label_lr: TLabel;
Gauge1: TGauge;
Label8: TLabel;
Label_count: TLabel;
ComboBox_ck: TComboBox;
Query_ckxx: TQuery;
Query_xs: TQuery;
Query_xsxs_bh: TStringField;
Query_xswp_bm: TStringField;
Query_xskh_mc: TStringField;
Query_xspm: TStringField;
Query_xsdw: TStringField;
Query_xsgg: TStringField;
Query_xsjj: TFloatField;
Query_xsdj: TFloatField;
Query_xssl: TFloatField;
Query_xsje: TFloatField;
Query_xsfp_ph: TStringField;
Query_xscb: TFloatField;
Query_xssj: TFloatField;
Query_xsml: TFloatField;
Query_xslr: TFloatField;
Query_xsph: TStringField;
Query_xsxsrq: TDateTimeField;
Query_xsck_bh: TStringField;
Query_xsbm_mc: TStringField;
Query_xsywy_xm: TStringField;
Query_xscd: TStringField;
Query_xssb: TStringField;
Query_xspzwh: TStringField;
DataSource_xs: TDataSource;
Query_ywy: TQuery;
Query_ywyywy_bh: TStringField;
Query_ywyywy_xm: TStringField;
Query_ywyxb: TStringField;
Query_ywynl: TStringField;
Query_ywybm_bh: TStringField;
Query_ywybm_mc: TStringField;
Query_bm: TQuery;
Database: TDatabase;
Query_xsck_mc: TStringField;
procedure BitBtn3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox_bmExit(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Query_xsCalcFields(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frmxstj: TFrmxstj;
butclick:shortint;
table_name:array[0..25] of string;
ck_bh:array[0..25] of string;
bm_bh:array[0..25] of string;
implementation
uses kh, main;
{$R *.DFM}
procedure TFrmxstj.BitBtn3Click(Sender: TObject);
var
jetotal,cbtotal,lrtotal,sjtotal:real; // mltotal
step:shortint;
begin
Gauge1.Progress:=0;
step:=1;
butclick:=1;
jetotal:=0.0;
cbtotal:=0.0;
lrtotal:=0.0;
sjtotal:=0.0;
// mltotal:=0.0;
Query_ckxx.close;
Query_ckxx.UnPrepare;
Query_ckxx.sql.Clear;
Query_ckxx.sql.Add('select * from ckxxb');
Query_ckxx.Prepare;
Query_ckxx.open;
Query_xs.DisableControls;
Query_xs.close;
Query_xs.sql.Clear;
Query_xs.sql.Add('SELECT * from xsxxb');
Query_xs.sql.Add('where xsrq <='''+datetostr(DateTimePicker2.Date)+'''');
Query_xs.sql.Add('and xsrq >='''+datetostr(DateTimePicker1.Date)+'''');
if combobox_bm.ItemIndex>-1 then
Query_xs.sql.Add(' and bm_mc='''+combobox_bm.Text+'''');
if combobox_ywy.ItemIndex>-1 then
Query_xs.sql.Add(' and ywy_xm='''+combobox_ywy.Text+'''');
if combobox_ck.ItemIndex>-1 then
Query_xs.sql.Add(' and ck_bh='''+ck_bh[combobox_ck.Itemindex]+'''');
if edit_khmc.Text<>'' then
Query_xs.sql.Add(' and kh_mc='''+edit_khmc.Text+'''');
Query_xs.sql.Add(' order by xsrq');
Query_xs.Prepare;
Query_xs.open;
Gauge1.MaxValue:=Query_xs.RecordCount;
Query_xs.First;
while not Query_xs.Eof do
begin
Gauge1.AddProgress(Step);
jetotal:=jetotal+Query_xs.fieldbyname('je').AsFloat;
cbtotal:=cbtotal+Query_xs.fieldbyname('cb').AsFloat;
lrtotal:=lrtotal+Query_xs.fieldbyname('lr').AsFloat;
sjtotal:=sjtotal+Query_xs.fieldbyname('sj').AsFloat;
// mltotal:=sjtotal+Query_xs.fieldbyname('ml').AsFloat;
Query_xs.Next;
end;
label_je.Caption:=format('¥%.2f',[jetotal]);
label_cb.Caption:=format('¥%.2f',[cbtotal]);
label_lr.Caption:=format('¥%.2f',[lrtotal]);
label_sj.Caption:=format('¥%.2f',[sjtotal]);
// label_ml.Caption:=format('¥%.2f',[mltotal]);
Label_count.Caption:=inttostr(Query_xs.RecordCount);
Query_xs.EnableControls;
end;
procedure TFrmxstj.FormCreate(Sender: TObject);
var i:integer;
begin
i:=0;
DateTimePicker1.Date:=Frmmain.GetServerTime;
DateTimePicker2.Date:=Frmmain.GetServerTime;
Query_bm.close;
Query_bm.UnPrepare;
Query_bm.sql.Clear;
Query_bm.sql.Add('select * from bmb');
Query_bm.Prepare;
Query_bm.open;
Query_bm.First;
while not Query_bm.Eof do
begin
combobox_bm.Items.Add(Query_bm.fieldbyname('bm_mc').asstring);
bm_bh[i]:=Query_bm.fieldbyname('bm_bh').asString;
inc(i);
Query_bm.Next;
end;
i:=0;
Query_ckxx.close;
Query_ckxx.UnPrepare;
Query_ckxx.sql.Clear;
Query_ckxx.sql.Add('select * from ckxxb');
Query_ckxx.Prepare;
Query_ckxx.open;
Query_ckxx.First;
while not Query_ckxx.Eof do
begin
combobox_ck.Items.Add(Query_ckxx.fieldbyname('ck_mc').asstring);
ck_bh[i]:=Query_ckxx.fieldbyname('ck_bh').asString;
inc(i);
Query_ckxx.Next;
end;
end;
procedure TFrmxstj.ComboBox_bmExit(Sender: TObject);
begin
combobox_ywy.Clear;
Query_ywy.close;
Query_ywy.UnPrepare;
Query_ywy.sql.Clear;
Query_ywy.sql.Add('select * from ywyb');
Query_ywy.sql.Add(' where bm_bh='''+bm_bh[combobox_bm.itemindex]+'''');
Query_ywy.Prepare;
Query_ywy.open;
while not Query_ywy.Eof do
begin
combobox_ywy.Items.Add(Query_ywy.fieldbyname('ywy_xm').asstring);
Query_ywy.Next;
end;
end;
procedure TFrmxstj.SpeedButton1Click(Sender: TObject);
begin
Frmkh:=TFrmkh.create(Self);
Frmmain.pubedit:=Edit_khmc;
Frmkh.ShowModal;
end;
procedure TFrmxstj.BitBtn4Click(Sender: TObject);
begin
Self.Close;
end;
procedure TFrmxstj.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=CaFree;
end;
procedure TFrmxstj.Query_xsCalcFields(DataSet: TDataSet);
var cb,sj:real;
begin
cb:=Query_xs.FieldByName('jj').asfloat*Query_xs.FieldByName('sl').asfloat;
Query_xs.FieldByName('cb').asfloat:=cb;
// Query_xs.FieldByName('ml').asfloat:=Query_xs.FieldByName('je').asfloat-cb;
{ Query_ckxx.close;
Query_ckxx.UnPrepare;
Query_ckxx.sql.Clear;
Query_ckxx.sql.Add('select * from ckxxb');
Query_ckxx.sql.Add(' where ck_bh='''+Query_xs.FieldByName('ck_bh').asstring+'''');
Query_ckxx.Prepare;
Query_ckxx.open;}
if pos('中藥',Query_xs.FieldByName('ck_mc').asstring)>0 then
sj:=Query_xs.FieldByName('je').asfloat/(1+0.13)*0.13
else
sj:=Query_xs.FieldByName('je').asfloat/(1+0.17)*0.17;
// sj:=Query_xs.FieldByName('je').asfloat/(1+Query_ckxx.fieldbyname('sl').asfloat)*Query_ckxx.fieldbyname('sl').asfloat;
Query_xs.FieldByName('sj').asfloat:=sj;
Query_xs.FieldByName('lr').asfloat:=Query_xs.FieldByName('je').asfloat-cb-sj;
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -