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

📄 recipeypquerym.pas

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

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  DBCtrls, ComCtrls, ExtCtrls, ToolWin, StdCtrls, Grids, DBGrids, Spin,
  ImgList;

type
  TRecipeYpQuery = class(TForm)
    CoolBar1: TCoolBar;
    ToolBar1: TToolBar;
    Panel2: TPanel;
    DateTimePicker3: TDateTimePicker;
    DateTimePicker1: TDateTimePicker;
    DateTimePicker4: TDateTimePicker;
    DateTimePicker2: TDateTimePicker;
    Label4: TLabel;
    Label5: TLabel;
    Panel3: TPanel;
    ToolBar2: TToolBar;
    Panel5: TPanel;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    ToolBar3: TToolBar;
    Panel1: TPanel;
    Label1: TLabel;
    Box1: TDBLookupComboBox;
    ToolBar4: TToolBar;
    Panel6: TPanel;
    Label2: TLabel;
    Box2: TDBLookupComboBox;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    DBGrid4: TDBGrid;
    ToolBar5: TToolBar;
    Panel4: TPanel;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    ImageList1: TImageList;
    Panel7: TPanel;
    DBGrid1: TDBGrid;
    RadioButton5: TRadioButton;
    RadioButton6: TRadioButton;
    Panel8: TPanel;
    Button1: TButton;
    Button2: TButton;
    Panel12: TPanel;
    Label9: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    ListBox2: TDBLookupListBox;
    ToolBar6: TToolBar;
    ToolButton3: TToolButton;
    Panel9: TPanel;
    Label7: TLabel;
    Label3: TLabel;
    Label8: TLabel;
    Label6: TLabel;
    Edit4: TEdit;
    Edit3: TEdit;
    Edit2: TEdit;
    Edit1: TEdit;
    Edit5: TSpinEdit;
    procedure DateTimePicker1Change(Sender: TObject);
    procedure DateTimePicker2Change(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button1Click(Sender: TObject);
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Panel12Exit(Sender: TObject);
    procedure ListBox2KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  RecipeYpQuery: TRecipeYpQuery;

implementation
uses datamz1,datamz, RecipeHzPrinM;
{$R *.DFM}

procedure TRecipeYpQuery.DateTimePicker1Change(Sender: TObject);
begin
  DateTimePicker3.datetime:=DateTimePicker1.datetime;
end;

procedure TRecipeYpQuery.DateTimePicker2Change(Sender: TObject);
begin
  DateTimePicker4.datetime:=DateTimePicker2.datetime;
end;

procedure TRecipeYpQuery.FormCreate(Sender: TObject);
begin
 DateTimePicker1.date:=date();
 DateTimePicker2.date:=date();
 DateTimePicker3.date:=date();
 DateTimePicker4.date:=date();
 try
  datamzf.YpClassQuery1.Active:=true;
  datamzf.YpClassaQuery1.Active:=true;
  //满君丰添加的下拉列表框的初始赋值
  box1.KeyValue:=0;
  box2.KeyValue:=0;
 except
   showmessage('操作失败,可能权限不够!');
 end;
end;

procedure TRecipeYpQuery.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
 DataMzf1.RecipeHzQuery.active:=false;
 datamzf.YpClassQuery1.Active:=false;
 datamzf.YpClassaQuery1.Active:=false;
 datamzf1.YpQuery2.Active:=false;
 RecipeYpQuery.Release;
end;

procedure TRecipeYpQuery.Button1Click(Sender: TObject);
begin
 with DataMzf1.RecipeHzQuery do
  begin
   Active:=false;
   Parameters.ParamByName('@Sdate').Value :=
     DateTimePicker1.datetime;
   Parameters.ParamByName('@Edate').Value :=
     DateTimePicker2.datetime;

   Parameters.ParamByName('@MinYpId').Value :=edit5.Value;
   Parameters.ParamByName('@MaxYpId').Value :=edit5.Value;

   if radiobutton1.Checked=true then
      Parameters.ParamByName('@QuitIden').Value :=0;
   if radiobutton2.Checked=true then
      Parameters.ParamByName('@QuitIden').Value :=1;
   if radiobutton5.Checked=true then
      Parameters.ParamByName('@QuitIden').Value :=2;
   if radiobutton6.Checked=true then
      Parameters.ParamByName('@QuitIden').Value :=3;

   if radiobutton3.Checked=false then
      Parameters.ParamByName('@ZjIden').Value :=1
   else
      Parameters.ParamByName('@ZjIden').Value :=0;
   if box2.KeyValue=0 then
    begin
     Parameters.ParamByName('@MinYpClass').Value :=0;
     Parameters.ParamByName('@MaxYpClass').Value :=0;
    end
   else
    begin
     Parameters.ParamByName('@MinYpClass').Value :=
       box2.keyvalue;
     Parameters.ParamByName('@MaxYpClass').Value :=
       box2.keyvalue;
    end;
   if box1.KeyValue=0 then
    begin
     Parameters.ParamByName('@MinYpClassa').Value :=0;
     Parameters.ParamByName('@MaxYpClassa').Value :=0;
    end
   else
    begin
     Parameters.ParamByName('@MinYpClassa').Value :=
       box1.keyvalue;
     Parameters.ParamByName('@MaxYpClassa').Value :=
       box1.keyvalue;
    end;
  end;
  with datamzf1.RecipeYpQuery do
  begin
   active:=false;
   sql.Clear;
   if radiobutton1.Checked=true then
     begin
      sql.add('select my_id,yp_batch,sc_fact,');
      sql.add('qr_date,ls_price,yp_amou,hj_id,qr_man ');
      sql.add('from XyMzVali ');
      sql.add('where qr_date>=:SDate and qr_date<=:EDate and');
      sql.add('yp_id=:yp_id');
      Parameters.ParamByName('Sdate').Value :=
        DateTimePicker1.datetime;
      Parameters.ParamByName('Edate').Value :=
        DateTimePicker2.datetime;
     end;
   if radiobutton2.Checked=true then
     begin
      sql.add('select my_id,yp_batch,sc_fact,');
      sql.add('qr_date,ls_price,yp_amou,hj_id,qr_man ');
      sql.add('from XyMzQuitVali ');
      sql.add('where qr_date>=:SDate and qr_date<=:EDate and');
      sql.add('yp_id=:yp_id');
      Parameters.ParamByName('Sdate').Value :=
        DateTimePicker1.datetime;
      Parameters.ParamByName('Edate').Value :=
        DateTimePicker2.datetime;
     end;
   if radiobutton5.Checked=true then
     begin
      sql.add('select my_id,yp_batch,sc_fact,');
      sql.add('qr_date,ls_price,yp_amou,hj_id,qr_man ');
      sql.add('from XyMzVali ');
      sql.add('where qr_date>=:SDate and qr_date<=:EDate and');
      sql.add('yp_id=:yp_id and zb_iden=1');
      Parameters.ParamByName('Sdate').Value :=
        DateTimePicker1.datetime;
      Parameters.ParamByName('Edate').Value :=
        DateTimePicker2.datetime;
     end;
   if radiobutton6.Checked=true then
     begin
      sql.add('select my_id,yp_batch,sc_fact,');
      sql.add('qr_date,ls_price,yp_amou,hj_id,qr_man ');
      sql.add('from XyMzVali ');
      sql.add('where qr_date>=:SDate and qr_date<=:EDate and');
      sql.add('yp_id=:yp_id and mf_iden=1');
      Parameters.ParamByName('Sdate').Value :=
        DateTimePicker1.datetime;
      Parameters.ParamByName('Edate').Value :=
        DateTimePicker2.datetime;
     end;
 end;
 try
   DataMzf1.RecipeHzQuery.Open;
   datamzf1.RecipeYpQuery.Active:=true;
 except
   showmessage('操作失败,可能权限不够!');
 end;

end;

procedure TRecipeYpQuery.ToolButton1Click(Sender: TObject);
begin
 box1.KeyValue:=0;
end;

procedure TRecipeYpQuery.ToolButton2Click(Sender: TObject);
begin
 box2.KeyValue:=0;
end;

procedure TRecipeYpQuery.Button2Click(Sender: TObject);
var title:string[80];
begin
  title:=datetostr(DateTimePicker3.Date)+'—'+datetostr(DateTimePicker4.Date);

  if RadioButton4.Checked=true then
    title:=title+'  制剂';

  if RadioButton1.Checked=true then
    title:=title+'  兰方'  ;
  if RadioButton2.Checked=true then
    title:=title+'  红方' ;
  if RadioButton5.Checked=true then
    title:=title+'  值班方' ;

  if box1.KeyValue<>0 then
    title:=title+' '+box1.Text;

  if box2.KeyValue<>0 then
    title:=title+' '+box2.Text;

  if DataMzf1.RecipeHzQuery.Active=true then
   begin
    RecipeHzPrin.Recipe_title.Caption:=title;
    RecipeHzPrin.print;
   end;
end;

procedure TRecipeYpQuery.ToolButton3Click(Sender: TObject);
begin
 edit1.Text:='';
 edit2.Text:='';
 edit3.Text:='';
 edit4.Text:='';
 edit5.Value:=0;
end;

procedure TRecipeYpQuery.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if  key=#13 then
   begin
    with datamzf1.YpQuery2 do
     begin
      active:=false;
      Parameters.ParamByName('@YpCode').Value := edit1.text;
      try
       open;
       panel12.Visible:=true;
       Listbox2.SetFocus;
      except
       showmessage('文件不能打开!');
      end;
     end;
   end;
end;

procedure TRecipeYpQuery.Panel12Exit(Sender: TObject);
begin
 panel12.Visible:=false;
end;

procedure TRecipeYpQuery.ListBox2KeyPress(Sender: TObject; var Key: Char);
begin
 case key of
   #13:
    begin
      edit5.value:=datamzf1.YpQuery2.FieldByName('yp_id').value;
      edit2.text:=datamzf1.YpQuery2.FieldByName('yp_name').value;
      edit3.text:=datamzf1.YpQuery2.FieldByName('yp_spec').value;
      edit4.text:=datamzf1.YpQuery2.FieldByName('yp_unit').value;
      datamzf1.YpQuery2.Close;
      edit1.SetFocus;
    end;
   #27:
    begin
      edit1.SetFocus;
      datamzf1.YpQuery2.active:=false;
    end;
 end ;
end;

end.

⌨️ 快捷键说明

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