📄 hzcx.pas
字号:
unit hzcx;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, StdCtrls, ExtCtrls, Grids, DBGrids, Buttons, DBCtrls, Db, ADODB;
type
TF_hzcx = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
DBG1: TDBGrid;
DBG2: TDBGrid;
P2RG: TRadioGroup;
DTP1: TDateTimePicker;
DTP2: TDateTimePicker;
RG: TRadioGroup;
RG1: TRadioGroup;
DBL: TDBLookupComboBox;
BitBtn1: TBitBtn;
ADODksid: TADODataSet;
DataSksid: TDataSource;
DataS1: TDataSource;
DataS2: TDataSource;
ADOSP1: TADOStoredProc;
ADOSP2: TADOStoredProc;
GB: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Panel4: TPanel;
Panel5: TPanel;
ADOSP1price: TBCDField;
ADOSP1yp_id: TSmallintField;
ADOSP1yp_code: TStringField;
ADOSP1yp_name: TStringField;
ADOSP1yp_spec: TStringField;
ADOSP1yp_unit: TStringField;
ADOSP1yp_classa: TWordField;
ADOSP1yp_class: TWordField;
ADOSP1amou: TIntegerField;
ADOSP2in_id: TIntegerField;
ADOSP2sc_fact: TStringField;
ADOSP2corp_name: TStringField;
ADOSP2yp_batch: TStringField;
ADOSP2yp_life: TDateTimeField;
ADOSP2in_amou: TIntegerField;
ADOSP2price: TBCDField;
ADOSP2in_date: TDateTimeField;
GroupBox1: TGroupBox;
Edit_ypsrm: TEdit;
CheckBox_ypid: TCheckBox;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
DBGrid1: TDBGrid;
AP_xyid_que: TADOStoredProc;
DS_xyid_que: TDataSource;
ADOSP2yp_name: TStringField;
ADOSP2yp_spec: TStringField;
ADOSP2yp_unit: TStringField;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DTP1Change(Sender: TObject);
procedure DTP2Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure P2RGClick(Sender: TObject);
procedure RGClick(Sender: TObject);
procedure DBLExit(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure RG1Click(Sender: TObject);
procedure DBG1DblClick(Sender: TObject);
procedure CheckBox_ypidClick(Sender: TObject);
procedure Edit_ypsrmEnter(Sender: TObject);
procedure Edit_ypsrmKeyPress(Sender: TObject; var Key: Char);
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
F_hzcx: TF_hzcx;
implementation
Uses Datamz;
{$R *.DFM}
procedure TF_hzcx.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
ADODksid.Close;
end;
procedure TF_hzcx.DTP1Change(Sender: TObject);
begin
ADOSP1.Parameters.ParamByName('@up_date').Value:=datetostr(DTP1.Date)+' 0:0';
ADOSP2.Parameters.ParamByName('@up_date').Value:=datetostr(DTP1.Date)+' 0:0';
end;
procedure TF_hzcx.DTP2Change(Sender: TObject);
begin
ADOSP1.Parameters.ParamByName('@dn_date').Value:=datetostr(DTP2.Date)+' 23:59:59';
ADOSP2.Parameters.ParamByName('@dn_date').Value:=datetostr(DTP2.Date)+' 23:59:59';
end;
procedure TF_hzcx.FormCreate(Sender: TObject);
var y,m,d:word;
begin
ADODksid.Open;
DTP2.Date:=now;
DecodeDate(now,y,m,d);
DTP1.Date:=EncodeDate(y,1,1);
ADOSP1.Parameters.ParamByName('@up_date').Value:=datetostr(DTP1.Date)+' 0:0';
ADOSP1.Parameters.ParamByName('@dn_date').Value:=datetostr(DTP2.Date)+' 23:59:59';
ADOSP2.Parameters.ParamByName('@up_date').Value:=datetostr(DTP1.Date)+' 0:0';
ADOSP2.Parameters.ParamByName('@dn_date').Value:=datetostr(DTP2.Date)+' 23:59:59';
end;
procedure TF_hzcx.P2RGClick(Sender: TObject);
begin
ADOSP1.Parameters.ParamByName('@type').Value:=P2RG.ItemIndex;
ADOSP2.Parameters.ParamByName('@type').Value:=P2RG.ItemIndex;
if P2RG.ItemIndex=3
then begin DBL.Visible:=true;DBL.SetFocus;end
else begin DBL.Visible:=false;DBL.KeyValue:='';end;
end;
procedure TF_hzcx.RGClick(Sender: TObject);
begin
case RG.ItemIndex of
0:begin
ADOSP1.Parameters.ParamByName('@up_amou').Value:=-1000000000;
ADOSP1.Parameters.ParamByName('@dn_amou').Value:=1000000000;
ADOSP2.Parameters.ParamByName('@up_amou').Value:=-1000000000;
ADOSP2.Parameters.ParamByName('@dn_amou').Value:=1000000000;
end;
1:begin
ADOSP1.Parameters.ParamByName('@up_amou').Value:=0;
ADOSP1.Parameters.ParamByName('@dn_amou').Value:=1000000000;
ADOSP2.Parameters.ParamByName('@up_amou').Value:=0;
ADOSP2.Parameters.ParamByName('@dn_amou').Value:=1000000000;
end;
2:begin
ADOSP1.Parameters.ParamByName('@up_amou').Value:=-1000000000;
ADOSP1.Parameters.ParamByName('@dn_amou').Value:=0;
ADOSP2.Parameters.ParamByName('@up_amou').Value:=-1000000000;
ADOSP2.Parameters.ParamByName('@dn_amou').Value:=0;
end;
end;
end;
procedure TF_hzcx.DBLExit(Sender: TObject);
begin
if DBL.KeyValue=''
then
begin
DBL.Visible:=false;
ADOSP1.Parameters.ParamByName('@ks_id').Value:='%';
ADOSP2.Parameters.ParamByName('@ks_id').Value:='%';
end
else
begin
ADOSP1.Parameters.ParamByName('@ks_id').Value:=DBL.KeyValue;
ADOSP2.Parameters.ParamByName('@ks_id').Value:=DBL.KeyValue;
end;
end;
procedure TF_hzcx.BitBtn1Click(Sender: TObject);
begin
if ADOSP1.Active then ADOSP1.Close;
ADOSP1.Open;
if RG1.ItemIndex=0
then
begin
ADOSP2.Parameters.ParamByName('@up_ypid').Value:=10000;
ADOSP2.Parameters.ParamByName('@dn_ypid').Value:=20000;
if ADOSP2.Active then ADOSP2.Close;
ADOSP2.Open;
end
else
begin
ADOSP2.Parameters.ParamByName('@up_ypid').Value:=ADOSP1.FieldByName('yp_id').asinteger;
ADOSP2.Parameters.ParamByName('@dn_ypid').Value:=ADOSP1.FieldByName('yp_id').asinteger;
if ADOSP2.Active then ADOSP2.Close;
ADOSP2.Open;
end;
end;
procedure TF_hzcx.RG1Click(Sender: TObject);
begin
if RG1.ItemIndex=0
then
begin
ADOSP2.Parameters.ParamByName('@up_ypid').Value:=10000;
ADOSP2.Parameters.ParamByName('@dn_ypid').Value:=20000;
if ADOSP2.Active then ADOSP2.Close;
ADOSP2.Open;
end
else
begin
ADOSP2.Parameters.ParamByName('@up_ypid').Value:=ADOSP1.FieldByName('yp_id').asinteger;
ADOSP2.Parameters.ParamByName('@dn_ypid').Value:=ADOSP1.FieldByName('yp_id').asinteger;
if ADOSP2.Active then ADOSP2.Close;
ADOSP2.Open;
end;
end;
procedure TF_hzcx.DBG1DblClick(Sender: TObject);
begin RG1.ItemIndex:=1;
ADOSP2.Parameters.ParamByName('@up_ypid').Value:=ADOSP1.FieldByName('yp_id').asinteger;
ADOSP2.Parameters.ParamByName('@dn_ypid').Value:=ADOSP1.FieldByName('yp_id').asinteger;
if ADOSP2.Active then ADOSP2.Close;
ADOSP2.Open;
end;
procedure TF_hzcx.CheckBox_ypidClick(Sender: TObject);
begin
if Checkbox_ypid.Checked=true then
begin
edit_ypsrm.Enabled:=true;
edit1.Enabled:=true;
edit2.Enabled:=true;
edit3.Enabled:=true;
edit4.Enabled:=true;
ADOSp1.Parameters.ParamByName('@yp').value:=true;
// Ap_dkrz_mx_sum.Parameters.ParamByName('@yp').value:=true;
// Ap_dkzb_mx.Parameters.ParamByName('@yp').value:=true;
// Ap_dk_month_kc.Parameters.ParamByName('@yp').value:=true;
// Ap_dk_his.Parameters.ParamByName('@yp').value:=true;
// Ap_dk_his1.Parameters.ParamByName('@yp').value:=true;
edit_ypsrm.SetFocus;
end ;
if Checkbox_ypid.Checked=false then
begin
edit_ypsrm.Enabled:=false;
edit1.Enabled:=false;
edit2.Enabled:=false;
edit3.Enabled:=false;
edit4.Enabled:=false;
edit_ypsrm.Text:='';
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
rg.Enabled:=true;
rg1.Enabled:=true;
p2rg.Enabled:=true;
dtp1.Enabled:=true;
dtp2.Enabled:=true;
bitbtn1.Enabled:=true;
ADOSP1.Parameters.ParamByName('@yp').value:=false;
// Ap_dkrz_mx_sum.Parameters.ParamByName('@yp').value:=false;
// Ap_dkzb_mx.Parameters.ParamByName('@yp').value:=false;
// Ap_dk_month_kc.Parameters.ParamByName('@yp').value:=false;
// Ap_dk_his.Parameters.ParamByName('@yp').value:=false;
// Ap_dk_his1.Parameters.ParamByName('@yp').value:=false;
end;
end;
procedure TF_hzcx.Edit_ypsrmEnter(Sender: TObject);
begin
rg.Enabled:=false;
rg1.Enabled:=false;
p2rg.Enabled:=false;
dtp1.Enabled:=false;
dtp2.Enabled:=false;
bitbtn1.Enabled:=false;
end;
procedure TF_hzcx.Edit_ypsrmKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
AP_xyid_que.Parameters.ParamByName('@srm').value:=trim(edit_ypsrm.Text);
AP_xyid_que.Close;
AP_xyid_que.Open;
if Ap_xyid_que.RecordCount=0 then
begin
showmessage('大库无此药!');
end
else
begin
dbgrid1.Visible:=true;
dbgrid1.SetFocus;
end;
end;
end;
procedure TF_hzcx.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
if (key=#13) then
begin
edit_ypsrm.Text:=AP_xyid_que.fieldvalues['yp_code'];
edit1.Text:=AP_xyid_que.fieldvalues['yp_id'];
edit2.Text:=AP_xyid_que.fieldvalues['yp_name'];
edit3.Text:=AP_xyid_que.fieldvalues['yp_spec'];
edit4.Text:=AP_xyid_que.fieldvalues['yp_unit'];
dbgrid1.Visible:=false;
rg.Enabled:=true;
rg1.Enabled:=true;
p2rg.Enabled:=true;
dtp1.Enabled:=true;
dtp2.Enabled:=true;
bitbtn1.Enabled:=true;
ADOSP1.Parameters.ParamByName('@ypid').value:=AP_xyid_que.fieldvalues['yp_id'];
// Ap_dkrz_mx_sum.Parameters.ParamByName('@ypid').value:=AP_xyid_que.fieldvalues['yp_id'];
// Ap_dkzb_mx.Parameters.ParamByName('@ypid').value:=AP_xyid_que.fieldvalues['yp_id'];
// Ap_dk_month_kc.Parameters.ParamByName('@ypid').value:=AP_xyid_que.fieldvalues['yp_id'];
// Ap_dk_his.Parameters.ParamByName('@ypid').value:=AP_xyid_que.fieldvalues['yp_id'];
// Ap_dk_his1.Parameters.ParamByName('@ypid').value:=AP_xyid_que.fieldvalues['yp_id'];
checkbox_ypid.SetFocus;
end
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -