⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fmdkysque.~pas

📁 本文重点研究的是医院西药药房管理系统
💻 ~PAS
字号:
unit FmDkYsQue;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ComCtrls, Mask, ExtCtrls, Grids, DBGrids, Db, ADODB;

type
  TFm_dkys_que = class(TForm)
    Panel1: TPanel;
    GroupBox3: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    MaskEdit_rz_sta: TMaskEdit;
    MaskEdit_rz_en: TMaskEdit;
    DateTimePicker1: TDateTimePicker;
    DateTimePicker2: TDateTimePicker;
    GroupBox1: TGroupBox;
    Edit_ypsrm: TEdit;
    CheckBox_ypid: TCheckBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    GroupBox2: TGroupBox;
    CheckBox_corpid: TCheckBox;
    Edit_dwsrm: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Panel2: TPanel;
    Button1: TButton;
    AP_xyid_que_ys: TADOStoredProc;
    DS_xyid_que_ys: TDataSource;
    AP_xycorp_id_ys: TADOStoredProc;
    DS_xycorp_id_ys: TDataSource;
    AP_dkys_que: TADOStoredProc;
    DS_dkys_que: TDataSource;
    AS_dkrk: TADODataSet;
    DS_dkrk: TDataSource;
    AS_dkzwfc: TADODataSet;
    DS_dkzwfc: TDataSource;
    AS_dkznfc: TADODataSet;
    DS_dkznfc: TDataSource;
    AS_dkloss: TADODataSet;
    DS_dkloss: TDataSource;
    AS_dkck: TADODataSet;
    DS_dkck: TDataSource;
    Panel14: TPanel;
    Panel3: TPanel;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    Panel5: TPanel;
    DBGrid4: TDBGrid;
    TabSheet2: TTabSheet;
    Panel6: TPanel;
    Panel10: TPanel;
    DBGrid5: TDBGrid;
    TabSheet3: TTabSheet;
    Panel11: TPanel;
    DBGrid10: TDBGrid;
    TabSheet4: TTabSheet;
    Panel12: TPanel;
    DBGrid11: TDBGrid;
    TabSheet5: TTabSheet;
    Panel13: TPanel;
    DBGrid12: TDBGrid;
    DBGrid1: TDBGrid;
    DBGrid2: TDBGrid;
    Panel15: TPanel;
    DBGrid3: TDBGrid;
    Panel16: TPanel;
    Label3: TLabel;
    TabSheet6: TTabSheet;
    AP_dkys_sum: TADOStoredProc;
    DS_dkys_sum: TDataSource;
    DBGrid6: TDBGrid;
    TabSheet7: TTabSheet;
    AP_dk_month: TADOStoredProc;
    DS_dk_month: TDataSource;
    DBGrid7: TDBGrid;
    AP_dkys_quein_id: TAutoIncField;
    AP_dkys_queyp_id: TSmallintField;
    AP_dkys_queyp_name: TStringField;
    AP_dkys_queyp_spec: TStringField;
    AP_dkys_queyp_unit: TStringField;
    AP_dkys_quegr_date: TDateTimeField;
    AP_dkys_quegr_amou: TIntegerField;
    AP_dkys_querz_amou: TIntegerField;
    AP_dkys_queyp_amou: TIntegerField;
    AP_dkys_quecorp_id: TSmallintField;
    AP_dkys_quecorp_name: TStringField;
    AP_dkys_quesc_fact: TStringField;
    AP_dkys_quegr_pric: TBCDField;
    AP_dkys_quepf_pric: TBCDField;
    AP_dkys_quels_price: TBCDField;
    AP_dkys_queyp_batch: TStringField;
    AP_dkys_queyp_life: TDateTimeField;
    AP_dkys_quepz_number: TStringField;
    AP_dkys_quezl_reason: TStringField;
    AP_dkys_quejs_man: TStringField;
    AP_dkys_quein_man: TStringField;
    AP_dkys_quehj_iden: TStringField;
    AS_dkrkmy_id: TAutoIncField;
    AS_dkrkin_id: TIntegerField;
    AS_dkrkyp_id: TSmallintField;
    AS_dkrkyp_name: TStringField;
    AS_dkrkyp_spec: TStringField;
    AS_dkrkyp_unit: TStringField;
    AS_dkrkin_amou: TIntegerField;
    AS_dkrkgr_pric: TBCDField;
    AS_dkrkpf_pric: TBCDField;
    AS_dkrkls_price: TBCDField;
    AS_dkrkin_date: TDateTimeField;
    AS_dkrkin_man: TStringField;
    AS_dkrkcorp_id: TSmallintField;
    AS_dkrkcorp_name: TStringField;
    AS_dkrkgre: TBCDField;
    AS_dkrkpfe: TBCDField;
    AS_dkrklse: TBCDField;
    AS_dkrkrle: TBCDField;
    AS_dkzwfcmy_id: TAutoIncField;
    AS_dkzwfcin_id: TIntegerField;
    AS_dkzwfcyp_name: TStringField;
    AS_dkzwfcyp_spec: TStringField;
    AS_dkzwfcyp_unit: TStringField;
    AS_dkzwfcout_amou: TIntegerField;
    AS_dkzwfcls_price: TBCDField;
    AS_dkzwfccz_man: TStringField;
    AS_dkzwfccorp_man: TStringField;
    AS_dkzwfcout_date: TDateTimeField;
    AS_dkzwfccorp_name: TStringField;
    AS_dkznfcmy_id: TAutoIncField;
    AS_dkznfcin_id: TIntegerField;
    AS_dkznfcyp_name: TStringField;
    AS_dkznfcyp_spec: TStringField;
    AS_dkznfcyp_unit: TStringField;
    AS_dkznfcout_amou: TIntegerField;
    AS_dkznfcls_price: TBCDField;
    AS_dkznfccz_man: TStringField;
    AS_dkznfccorp_man: TStringField;
    AS_dkznfcout_date: TDateTimeField;
    AS_dkznfccorp_name: TStringField;
    AS_dklossmy_id: TAutoIncField;
    AS_dklossin_id: TIntegerField;
    AS_dklossyp_name: TStringField;
    AS_dklossyp_spec: TStringField;
    AS_dklossyp_unit: TStringField;
    AS_dklossloss_amou: TIntegerField;
    AS_dklossls_price: TBCDField;
    AS_dklossloss_reas: TStringField;
    AS_dklosscz_man: TStringField;
    AS_dklossloss_date: TDateTimeField;
    AS_dklosscorp_name: TStringField;
    AS_dkckmy_id: TAutoIncField;
    AS_dkckin_id: TIntegerField;
    AS_dkckyp_name: TStringField;
    AS_dkckyp_spec: TStringField;
    AS_dkckyp_unit: TStringField;
    AS_dkckin_amou: TIntegerField;
    AS_dkckls_price: TBCDField;
    AS_dkckks_name: TStringField;
    AS_dkckin_man: TStringField;
    AS_dkckout_man: TStringField;
    AS_dkckin_date: TDateTimeField;
    AP_dk_monthypid: TSmallintField;
    AP_dk_monthypname: TStringField;
    AP_dk_monthypspec: TStringField;
    AP_dk_monthypunit: TStringField;
    AP_dk_monthsl: TIntegerField;
    AP_dk_monthje: TBCDField;
    AP_dkys_sumypname: TStringField;
    AP_dkys_sumypspec: TStringField;
    AP_dkys_sumypunit: TStringField;
    AP_dkys_sumamou: TIntegerField;
    AP_dkys_sumkh: TSmallintField;
    AP_dkys_sumjh: TSmallintField;
    AP_dkys_sumjx: TStringField;
    AP_dkys_sumyt: TStringField;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Edit_ypsrmKeyPress(Sender: TObject; var Key: Char);
    procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit_dwsrmKeyPress(Sender: TObject; var Key: Char);
    procedure DBGrid2KeyPress(Sender: TObject; var Key: Char);
    procedure CheckBox_ypidClick(Sender: TObject);
    procedure Edit_ypsrmEnter(Sender: TObject);
    procedure CheckBox_corpidClick(Sender: TObject);
    procedure MaskEdit_rz_staExit(Sender: TObject);
    procedure Edit_dwsrmEnter(Sender: TObject);
    procedure MaskEdit_rz_staEnter(Sender: TObject);
    procedure MaskEdit_rz_enEnter(Sender: TObject);
    procedure MaskEdit_rz_enExit(Sender: TObject);
    procedure DateTimePicker1Change(Sender: TObject);
    procedure DateTimePicker2Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Fm_dkys_que: TFm_dkys_que;

implementation
uses datamz;

{$R *.DFM}


procedure TFm_dkys_que.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  action:=cafree;
end;

procedure TFm_dkys_que.Edit_ypsrmKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
    begin
     AP_xyid_que_ys.Parameters.ParamByName('@srm').value:=trim(edit_ypsrm.Text);
     AP_xyid_que_ys.Close;
     AP_xyid_que_ys.Open;
     if Ap_xyid_que_ys.RecordCount=0 then
        begin
          showmessage('大库无此药!');
        end
     else
        begin
        dbgrid1.Visible:=true;
        dbgrid1.SetFocus;
        end;
    end;
end;

procedure TFm_dkys_que.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
  if (key=#13)  then
    begin
    edit_ypsrm.Text:=AP_xyid_que_ys.fieldvalues['yp_code'];
    edit1.Text:=AP_xyid_que_ys.fieldvalues['yp_id'];
    edit2.Text:=AP_xyid_que_ys.fieldvalues['yp_name'];
    edit3.Text:=AP_xyid_que_ys.fieldvalues['yp_spec'];
    edit4.Text:=AP_xyid_que_ys.fieldvalues['yp_unit'];
    dbgrid1.Visible:=false;
       maskedit_rz_sta.Enabled:=true;
       maskedit_rz_en.Enabled:=true;
       datetimepicker1.Enabled:=true;
       datetimepicker2.Enabled:=true;
       checkbox_corpid.Enabled:=true;
       button1.Enabled:=true;
       Ap_dkys_que.Parameters.ParamByName('@ypid').value:=AP_xyid_que_ys.fieldvalues['yp_id'];
       Ap_dkys_sum.Parameters.ParamByName('@ypid').value:=AP_xyid_que_ys.fieldvalues['yp_id'];
       Ap_dk_month.Parameters.ParamByName('@ypid').value:=AP_xyid_que_ys.fieldvalues['yp_id'];


    checkbox_ypid.SetFocus;
    end

end;

procedure TFm_dkys_que.Edit_dwsrmKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
    begin
     AP_xycorp_id_ys.Parameters.ParamByName('@srm').value:=trim(edit_dwsrm.Text);
     AP_xycorp_id_ys.Close;
     AP_xycorp_id_ys.Open;
     if Ap_xycorp_id_ys.RecordCount=0 then
        begin
          showmessage('无此公司!');
        end
     else
        begin
        dbgrid2.Visible:=true;
        dbgrid2.SetFocus;
        end;
    end;
end;

procedure TFm_dkys_que.DBGrid2KeyPress(Sender: TObject; var Key: Char);
begin
  if (key=#13)  then
    begin
    edit_dwsrm.Text:=AP_xycorp_id_ys.fieldvalues['corp_code'];
    edit5.Text:=AP_xycorp_id_ys.fieldvalues['corp_id'];
    edit6.Text:=AP_xycorp_id_ys.fieldvalues['corp_name'];
    dbgrid2.Visible:=false;
       maskedit_rz_sta.Enabled:=true;
       maskedit_rz_en.Enabled:=true;
       datetimepicker1.Enabled:=true;
       datetimepicker2.Enabled:=true;
       checkbox_ypid.Enabled:=true;
       button1.Enabled:=true;
       Ap_dkys_que.Parameters.ParamByName('@dwid').value:=AP_xycorp_id_ys.fieldvalues['corp_id'];
//       Ap_dkrz_mx_sum.Parameters.ParamByName('@dwid').value:=AP_xycorp_id.fieldvalues['corp_id'];


    checkbox_ypid.SetFocus;
    end
end;

procedure TFm_dkys_que.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;
       Ap_dkys_que.Parameters.ParamByName('@yp').value:=true;
       Ap_dkys_sum.Parameters.ParamByName('@yp').value:=true;
       Ap_dk_month.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:='';

       maskedit_rz_sta.Enabled:=true;
       maskedit_rz_en.Enabled:=true;
       datetimepicker1.Enabled:=true;
       datetimepicker2.Enabled:=true;
       checkbox_corpid.Enabled:=true;
       button1.Enabled:=true;
       Ap_dkys_que.Parameters.ParamByName('@yp').value:=false;
       Ap_dkys_sum.Parameters.ParamByName('@yp').value:=false;
       Ap_dk_month.Parameters.ParamByName('@yp').value:=false;


     end;
end;

procedure TFm_dkys_que.Edit_ypsrmEnter(Sender: TObject);
begin
       maskedit_rz_sta.Enabled:=false;
       maskedit_rz_en.Enabled:=false;
       datetimepicker1.Enabled:=false;
       datetimepicker2.Enabled:=false;
       checkbox_corpid.Enabled:=false;
       button1.Enabled:=false;
end;

procedure TFm_dkys_que.CheckBox_corpidClick(Sender: TObject);
begin
   if  Checkbox_corpid.Checked=true then
     begin
       edit_dwsrm.Enabled:=true;
       edit5.Enabled:=true;
       edit6.Enabled:=true;
       Ap_dkys_que.Parameters.ParamByName('@dw').value:=true;
//       Ap_dkrz_mx_sum.Parameters.ParamByName('@dw').value:=true;


       edit_dwsrm.SetFocus;
     end   ;
   if  Checkbox_corpid.Checked=false then
     begin
       edit_dwsrm.Enabled:=false;
       edit5.Enabled:=false;
       edit6.Enabled:=false;
       edit_dwsrm.Text:='';
       edit5.Text:='';
       edit6.Text:='';

       maskedit_rz_sta.Enabled:=true;
       maskedit_rz_en.Enabled:=true;
       datetimepicker1.Enabled:=true;
       datetimepicker2.Enabled:=true;
       checkbox_ypid.Enabled:=true;
       button1.Enabled:=true;
       Ap_dkys_que.Parameters.ParamByName('@dw').value:=false;
//       Ap_dkrz_mx_sum.Parameters.ParamByName('@dw').value:=false;


     end;
end;

procedure TFm_dkys_que.MaskEdit_rz_staExit(Sender: TObject);
begin
 if  MaskEdit_rz_sta.Text='    -  -  ' then
    begin
     Ap_dkys_que.Parameters.ParamByName('@rz_start').value := '2000-01-01';
     Ap_dkys_sum.Parameters.ParamByName('@rz_start').value := '2000-01-01';
     Ap_dk_month.Parameters.ParamByName('@rz_start').value := '2000-01-01';


    end
else
  begin
   try
     Ap_dkys_que.Parameters.ParamByName('@rz_start').value :=MaskEdit_rz_sta.Text;
     Ap_dkys_sum.Parameters.ParamByName('@rz_start').value :=MaskEdit_rz_sta.Text;
     Ap_dk_month.Parameters.ParamByName('@rz_start').value :=MaskEdit_rz_sta.Text;

   except
        begin
         ShowMessage('不是有效日期 ');
         MaskEdit_rz_sta.SetFocus;
         abort;
        end
   end;
  end
end;

procedure TFm_dkys_que.Edit_dwsrmEnter(Sender: TObject);
begin
       maskedit_rz_sta.Enabled:=false;
       maskedit_rz_en.Enabled:=false;
       datetimepicker1.Enabled:=false;
       datetimepicker2.Enabled:=false;
       checkbox_ypid.Enabled:=false;
       button1.Enabled:=false;
end;

procedure TFm_dkys_que.MaskEdit_rz_staEnter(Sender: TObject);
begin
 MaskEdit_rz_sta.Text:='    -  -  ' ;
end;

procedure TFm_dkys_que.MaskEdit_rz_enEnter(Sender: TObject);
begin
 MaskEdit_rz_en.Text:='    -  -  ' ;
end;

procedure TFm_dkys_que.MaskEdit_rz_enExit(Sender: TObject);
begin
 if  MaskEdit_rz_sta.Text='    -  -  ' then
    begin
     Ap_dkys_que.Parameters.ParamByName('@rz_start').value := '2000-01-01';
     Ap_dkys_sum.Parameters.ParamByName('@rz_start').value := '2000-01-01';
     Ap_dk_month.Parameters.ParamByName('@rz_start').value := '2000-01-01';


    end
else
  begin
   try
     Ap_dkys_que.Parameters.ParamByName('@rz_start').value :=MaskEdit_rz_sta.Text;
     Ap_dkys_sum.Parameters.ParamByName('@rz_start').value :=MaskEdit_rz_sta.Text;
     Ap_dk_month.Parameters.ParamByName('@rz_start').value :=MaskEdit_rz_sta.Text;

   except
        begin
         ShowMessage('不是有效日期 ');
         MaskEdit_rz_sta.SetFocus;
         abort;
        end
   end;
  end
end;

procedure TFm_dkys_que.DateTimePicker1Change(Sender: TObject);
begin
 fm_dkys_que.MaskEdit_rz_sta.SetFocus;
 fm_dkys_que.MaskEdit_rz_sta.Text:=DateToStr(DateTimePicker1.date);

 DateTimePicker1.SetFocus;
end;

procedure TFm_dkys_que.DateTimePicker2Change(Sender: TObject);
begin
 fm_dkys_que.MaskEdit_rz_en.SetFocus;
 fm_dkys_que.MaskEdit_rz_en.Text:=DateToStr(DateTimePicker2.date);

 DateTimePicker2.SetFocus;
end;

procedure TFm_dkys_que.Button1Click(Sender: TObject);
begin
  AP_dkys_que.Close;
  AP_dkys_que.Open;
  ap_dkys_sum.close;
  ap_dkys_sum.open;
  as_dkrk.Close;
  as_dkrk.Open;
  as_dkzwfc.Close;
  as_dkzwfc.Open;
  as_dkznfc.Close;
  as_dkznfc.Open;
  as_dkloss.Close;
  as_dkloss.Open;
  as_dkck.Close;
  as_dkck.Open;
  ap_dk_month.Close;
  ap_dk_month.Open;

end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -