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

📄 mzdaym.pas

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

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ComCtrls, DBCtrls, Mask, StdCtrls, DBCGrids, ExtCtrls, Buttons,comobj,
  adodb,db;

type
  TMzDay = class(TForm)
    Label30: TLabel;
    Edit2: TEdit;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    Panel2: TPanel;
    Panel5: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label8: TLabel;
    Label10: TLabel;
    Label23: TLabel;
    Label24: TLabel;
    Label25: TLabel;
    Label26: TLabel;
    DBCtrlGrid2: TDBCtrlGrid;
    Panel6: TPanel;
    DBCheckBox2: TDBCheckBox;
    DBEdit6: TDBEdit;
    DBEdit7: TDBEdit;
    DBEdit8: TDBEdit;
    DBEdit14: TDBEdit;
    DBEdit15: TDBEdit;
    DBEdit16: TDBEdit;
    DBEdit17: TDBEdit;
    Panel13: TPanel;
    Label27: TLabel;
    Label28: TLabel;
    Label29: TLabel;
    ListBox3: TDBLookupListBox;
    ProgressBar2: TProgressBar;
    Label31: TLabel;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure Panel13Exit(Sender: TObject);
    procedure ListBox3KeyPress(Sender: TObject; var Key: Char);
    procedure DBCheckBox2MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  MzDay: TMzDay;

implementation

uses datamz, ConnM, datamz1, MzKcSeleM;

{$R *.DFM}

procedure TMzDay.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  bitbtn4.Enabled:=false;
  bitbtn5.Enabled:=false;
  datamzf.XyMzValiConnection.Connected:=false;
  conn.close;
end;

procedure TMzDay.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
 if  (key=#13) and (length(trim(edit2.text))>0) then
   begin
    with datamzf.YpQuery do
     begin
      active:=false;
      Parameters.ParamByName('YpCode').Value := edit2.text;
      Parameters.ParamByName('YpCode1').Value := edit2.text;
      try
       open;
       panel13.Visible:=true;
       Listbox3.SetFocus;
      except
       showmessage('文件不能打开!');
      end;
     end;
    end;



end;

procedure TMzDay.BitBtn4Click(Sender: TObject);
var
ms:integer;
begin
 ms:=Application.messagebox('确定修改?','提示',MB_OKCANCEL);
 if ms=1 then
   begin
    bitbtn4.Enabled:=false;
    bitbtn5.Enabled:=false;
    datamzf.XyMzValiConnection.BeginTrans;
    try
     datamzf1.XyDayQuery.UpdateBatch(arAllChapters);
     datamzf.XyMzValiConnection.CommitTrans;
    except
      on E1:EOleException do
       begin
         datamzf.XyMzValiConnection.RollbackTrans;
         showmessage(E1.message);
       end;
      on E:EDatabaseError do
       begin
         datamzf.XyMzValiConnection.RollbackTrans;
         showmessage(E.message);
       end;
      else
       begin
         datamzf.XyMzValiConnection.RollbackTrans;
         showmessage('发现异常,操作被取消!');
       end;
    end;
   end;


end;

procedure TMzDay.BitBtn5Click(Sender: TObject);
var
ms:integer;
begin
 ms:=Application.messagebox('放弃修改?','提示',MB_OKCANCEL);
 if ms=1 then
  begin
   datamzf1.XyDayQuery.CancelBatch;
   bitbtn4.Enabled:=false;
   bitbtn5.Enabled:=false;
  end;
end;

procedure TMzDay.BitBtn6Click(Sender: TObject);
var
Rc:integer;
ms:integer;
begin
 ms:=Application.messagebox('确定重新生成假日药品?','提示',MB_OKCANCEL);
 if ms<>1 then
    exit;
 bitbtn4.Enabled:=false;
 bitbtn5.Enabled:=false;
 datamzf1.XySeleQuery1.Active:=false;
 MzKcSele.Caption:='选择值班药品';
 MzKcSele.Label7.Caption:='值班卖';
 MzKcSele.DBCheckBox1.DataField:='firstday_iden';
 with datamzf1.XyKcReQuery do
  begin
    active:=false;
    sql.clear;
    sql.Add('select yp_id ');
    sql.Add('from XyKcRefe ');
    sql.Add('where mz_day_iden=1 ');
    try
     active:=true;
    except
     showmessage('文件不能打开!');
     exit;
    end;
    Progressbar2.max:=RecordCount;
    progressbar2.Position:=0;
    progressbar2.Visible:=true;
    first;
    while not eof do
     begin
       datamzf1.XySeleQuery1.Active:=false;
       datamzf1.XySeleQuery1.Parameters.ParamByName('YpId').Value :=
           FieldByName('yp_id').value;
       try
        datamzf1.XySeleQuery1.Active:=true;
       except
        showmessage('文件不能打开!');
        exit;
       end;
       Rc:=datamzf1.XySeleQuery1.RecordCount;
       if Rc=1 then
         begin
          datamzf1.XySeleQuery1.Edit;
          datamzf1.XySeleQuery1.FieldByName('firstday_iden').value:=1;
          try
           datamzf1.XySeleQuery1.UpdateBatch(arAllChapters);
          except
           showmessage('文件更新失败!');
           exit;
          end;
         end
        else
         begin
          if rc>1 then
            MzKcSele.ShowModal;
         end;
       progressbar2.Position:=progressbar2.Position+1;
       next;
     end;
    active:=false;
    progressbar2.Visible:=false;
    datamzf1.XyDayQuery.Active:=false;
    try
     datamzf1.XyDayQuery.Active:=true;
    except
     showmessage('文件不能打开!');
    end;
  end;


end;

procedure TMzDay.Panel13Exit(Sender: TObject);
begin
 panel13.Visible:=false;

end;

procedure TMzDay.ListBox3KeyPress(Sender: TObject; var Key: Char);
begin
 case key of
   #13:
    begin
      datamzf1.XyDayQuery.Locate('yp_id',
      datamzf.YpQuery.FieldByName('yp_id').value,[loPartialKey]);
      datamzf.YpQuery.Close;
      dbcheckbox2.SetFocus;
    end;
   #27:
    begin
      edit2.SetFocus;
      datamzf.YpQuery.active:=false;
    end;
 end ;


end;

procedure TMzDay.DBCheckBox2MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  bitbtn4.Enabled:=true;
  bitbtn5.Enabled:=true;

end;

end.

⌨️ 快捷键说明

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