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

📄 wpxg.pas

📁 本系统前端界面采用WINDOWS 窗口风格
💻 PAS
字号:
unit wpxg;

interface

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

type
  TFrmwpxg = class(TForm)
    ListBox1: TListBox;
    Panel1: TPanel;
    Label2: TLabel;
    Label3: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label4: TLabel;
    SpeedButton1: TSpeedButton;
    Label21: TLabel;
    wp_bm_edit: TEdit;
    mc_edit: TEdit;
    gg_edit: TEdit;
    dw_edit: TEdit;
    lb_edit: TEdit;
    jj_edit: TEdit;
    dj_edit: TEdit;
    sl_edit: TEdit;
    yxq_edit: TEdit;
    kcxx_edit: TEdit;
    sb_edit: TEdit;
    ph_edit: TEdit;
    pzwh_edit: TEdit;
    cd_edit: TEdit;
    jgdw_edit: TEdit;
    Edit1: TEdit;
    bz_Edit: TEdit;
    DateTimePicker2: TDateTimePicker;
    Panel2: TPanel;
    Label1: TLabel;
    Label15: TLabel;
    BitBtn2: TBitBtn;
    bm_Edit: TEdit;
    BitBtn3: TBitBtn;
    DBGrid1: TDBGrid;
    MaskEdit1: TMaskEdit;
    Query_kc: TQuery;
    Query_ckxx: TQuery;
    DataSource_kc: TDataSource;
    Database: TDatabase;
    procedure SpeedButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure sl_editKeyPress(Sender: TObject; var Key: Char);
    procedure yxq_editKeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn3Click(Sender: TObject);
    procedure bm_EditChange(Sender: TObject);
    procedure ListBox1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DBGrid1CellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frmwpxg: TFrmwpxg;
  ck_id:array[0..25] of string;     //存仓库信息表ckxxb中仓库编号字段的值
  table_name:array[0..25] of string;

implementation

uses ghs, main;

{$R *.DFM}

procedure TFrmwpxg.SpeedButton1Click(Sender: TObject);
begin
  Frmghs:=TFrmghs.create(Self);
  Frmmain.pubedit:=Edit1;
  Frmghs.ShowModal;
end;

procedure TFrmwpxg.FormCreate(Sender: TObject);
  var i:integer;
begin
  if Frmmain.right='01' then bitbtn3.Enabled:=false;
   keypreview:=true;
   DateTimePicker2.Date:=Frmmain.GetServerTime;
   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;
   listbox1.Clear;
   while not Query_ckxx.Eof do
    begin
     listbox1.Items.Add(Query_ckxx.fieldbyname('ck_mc').asstring);
     ck_id[i]:=Query_ckxx.FieldByName('ck_bh').asString;
     table_name[i]:=Query_ckxx.fieldbyName('bm').asString;
     inc(i);
     Query_ckxx.Next;
    end;
   listbox1.ItemIndex:=0;
   listbox1click(self);
   if pos('中药',listbox1.Items[listbox1.itemindex])>0 then
     begin
      pzwh_edit.Enabled:=false;
      yxq_edit.Enabled:=false;
      sb_edit.Enabled:=false;
      jgdw_edit.Enabled:=true;
      bz_edit.Enabled:=false;
     end
   else
     begin
      jgdw_edit.Enabled:=false;
      pzwh_edit.Enabled:=true;
      yxq_edit.Enabled:=true;
      sb_edit.Enabled:=true;
      bz_edit.Enabled:=true;
     end;
end;

procedure TFrmwpxg.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then begin
     key:=#0;
     postmessage(handle,wm_nextdlgctl,0,0);
  end;
end;

procedure TFrmwpxg.sl_editKeyPress(Sender: TObject; var Key: Char);
begin
 if not (key in ['0'..'9','.',#8]) then key:=#0;
end;

procedure TFrmwpxg.yxq_editKeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9',#8]) then key:=#0
end;

procedure TFrmwpxg.BitBtn3Click(Sender: TObject);
begin
  if bitbtn3.Caption='&E修改' then
    begin
      bitbtn3.Caption:='&Y确定';
      Edit1.Clear;
      mc_Edit.Clear;
      wp_bm_Edit.Clear;
      cd_Edit.Clear;
      gg_Edit.Clear;
      dw_Edit.Clear;
      jj_edit.Clear;
      dj_edit.Clear;
      sl_edit.Clear;
      ph_edit.Clear;
      yxq_edit.Clear;
      sb_edit.Clear;
      lb_edit.Clear;
      bz_edit.Clear;
      kcxx_edit.Clear;
    end
  else if  bitbtn3.Caption='&Y确定' then
    begin
      if edit1.Text=''  then
        begin
          Application.MessageBox('请填写供货商信息','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if  mc_edit.Text=''  then
        begin
          Application.MessageBox('请填写物品名称','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if  wp_bm_edit.Text=''  then
        begin
          Application.MessageBox('请填写完整,','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if sl_edit.Text=''  then
        begin
          Application.MessageBox('请填写进货数量','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if (jj_edit.Text='') or (strtofloat(jj_edit.Text)=0.0)  then
        begin
          Application.MessageBox('请填写药品进价','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if (pos('中药',listbox1.Items[listbox1.itemindex])=0) and (maskedit1.Text='    -  -  ')  then
        begin
          Application.MessageBox('请填写生产日期','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if (dj_edit.Text='') or (strtofloat(dj_edit.Text)=0.0)  then
        begin
          Application.MessageBox('请填写药品单价','提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      if pos('中药',listbox1.Items[listbox1.itemindex])=0 then
        begin
          if (bz_edit.Text='') or (strtofloat(bz_edit.Text)=0.0)  then
            begin
              Application.MessageBox('请填写药品包装数','提示',MB_OK+MB_ICONINFORMATION);
              exit;
            end;
          if (yxq_edit.Text='') or (strtofloat(yxq_edit.Text)=0.0)  then
            begin
              Application.MessageBox('请填写药品包装数','提示',MB_OK+MB_ICONINFORMATION);
              exit;
            end;
        end;
      Query_kc.Edit;
      Query_kc.FieldByName('pm').asstring:=trim(mc_edit.text);
      Query_kc.FieldByName('ghs_mc').asstring:=trim(edit1.Text);
      Query_kc.FieldByName('wp_bm').asstring:=wp_bm_edit.Text;
      Query_kc.FieldByName('gg').asstring:=gg_edit.Text;
      Query_kc.FieldByName('dw').asstring:=dw_edit.Text;
      Query_kc.FieldByName('lb').asstring:=lb_edit.Text;
      Query_kc.FieldByName('jj').asstring:=jj_edit.Text;
      Query_kc.FieldByName('dj').asstring:=dj_edit.Text;
      Query_kc.FieldByName('kcs').asstring:=sl_edit.Text;
      Query_kc.FieldByName('kcxx').asstring:=kcxx_edit.Text;
      Query_kc.FieldByName('ph').asstring:=ph_edit.Text;
      Query_kc.FieldByName('cd').asstring:=cd_edit.Text;
      Query_kc.FieldByName('jhrq').asstring:=datetostr(DateTimePicker2.Date);
      if ListBox1.Items[listbox1.itemindex]<>'中药库' then
        begin
          Query_kc.FieldByName('scrq').asstring:=maskedit1.Text;
          Query_kc.FieldByName('yxq').asstring:=yxq_edit.Text;
          Query_kc.FieldByName('sb').asstring:=sb_edit.Text;
          Query_kc.FieldByName('bz').asstring:=bz_edit.Text;
          Query_kc.FieldByName('pzwh').asstring:=pzwh_edit.text;
        end;
      try
        Database.StartTransaction;
        Query_kc.Post;
        Database.Commit;
        bitbtn3.Caption:='&E修改';
      except
        Database.Rollback;
        application.MessageBox('系统出错!','警告',mb_ok+mb_iconwarning);
        exit;
      end;
      bm_EditChange(Self);
    end;
end;

procedure TFrmwpxg.bm_EditChange(Sender: TObject);
begin
   Query_kc.disablecontrols;
   Query_kc.close;
   Query_kc.UnPrepare;
   Query_kc.sql.Clear;
   Query_kc.sql.Add('select pm,cd,gg,dw,kcs,dj,jj,ph ');
   if pos('中药',listbox1.Items[listbox1.itemindex])=0 then
     Query_kc.sql.Add(',sb,pzwh,yxq,scrq,bz ')
   else Query_kc.sql.Add(',jgdw ');
   Query_kc.sql.Add(',kcxx,jhrq,lb,ghs_mc,ck_bh,wp_bm ');
   Query_kc.sql.add(' from '+table_name[listbox1.itemindex]);
   Query_kc.sql.Add(' where wp_bm like'+''''+bm_edit.Text+'%'+'''');
   Query_kc.sql.Add(' order by pm');
   Query_kc.Prepare;
   Query_kc.Open;
   Query_kc.FieldByName('ck_bh').DisplayLabel:='仓库编号';
   Query_kc.FieldByName('pm').DisplayLabel:='物品名称';
   Query_kc.FieldByName('wp_bm').DisplayLabel:='物品编码';
   Query_kc.FieldByName('gg').DisplayLabel:='规格';
   Query_kc.FieldByName('dw').DisplayLabel:='单位';
   Query_kc.FieldByName('jj').DisplayLabel:='进价';
   Query_kc.FieldByName('dj').DisplayLabel:='单价';
   Query_kc.FieldByName('kcs').DisplayLabel:='库存数';
   Query_kc.FieldByName('kcxx').DisplayLabel:='库存下限';
   Query_kc.FieldByName('lb').DisplayLabel:='类别';
   Query_kc.FieldByName('ph').DisplayLabel:='批号';
   Query_kc.FieldByName('jhrq').DisplayLabel:='进货日期';
   if pos('中药',listbox1.Items[listbox1.itemindex])=0 then
     begin
       Query_kc.FieldByName('sb').DisplayLabel:='商标';
       Query_kc.FieldByName('pzwh').DisplayLabel:='批准文号';
       Query_kc.FieldByName('scrq').DisplayLabel:='生产日期';
       Query_kc.FieldByName('yxq').DisplayLabel:='有效期';
       Query_kc.FieldByName('bz').DisplayLabel:='包装';
     end
   else Query_kc.FieldByName('jgdw').DisplayLabel:='加工单位';
   Query_kc.FieldByName('cd').DisplayLabel:='产地';
   Query_kc.FieldByName('ghs_mc').displaylabel:='供货商名称';
   Query_kc.EnableControls;
end;

procedure TFrmwpxg.ListBox1Click(Sender: TObject);
begin
   edit1.Clear;
   wp_bm_edit.Clear;
   mc_edit.Clear;
   gg_edit.Clear;
   dw_edit.Clear;
   sl_edit.Clear;
   cd_edit.Clear;
   ph_edit.Clear;
   Query_kc.disablecontrols;
   Query_kc.close;
   Query_kc.UnPrepare;
   Query_kc.sql.Clear;
   Query_kc.sql.Add('select pm,cd,gg,dw,kcs,dj,jj,ph ');
   if pos('中药',listbox1.Items[listbox1.itemindex])=0 then
     Query_kc.sql.Add(',sb,pzwh,yxq,scrq,bz ')
   else Query_kc.sql.Add(',jgdw ');
   Query_kc.sql.Add(',kcxx,jhrq,lb,ghs_mc,ck_bh,wp_bm ');
   Query_kc.sql.add(' from '+table_name[listbox1.itemindex]);
   Query_kc.sql.Add(' where ck_bh='''+ck_id[listbox1.itemIndex]+'''');
   Query_kc.sql.Add(' order by pm ');
   Query_kc.Prepare;
   Query_kc.Open;
   Query_kc.FieldByName('ck_bh').DisplayLabel:='仓库编号';
   Query_kc.FieldByName('pm').DisplayLabel:='物品名称';
   Query_kc.FieldByName('wp_bm').DisplayLabel:='物品编码';
   Query_kc.FieldByName('gg').DisplayLabel:='规格';
   Query_kc.FieldByName('dw').DisplayLabel:='单位';
   Query_kc.FieldByName('jj').DisplayLabel:='进价';
   Query_kc.FieldByName('dj').DisplayLabel:='单价';
   Query_kc.FieldByName('kcs').DisplayLabel:='库存数';
   Query_kc.FieldByName('kcxx').DisplayLabel:='库存下限';
   Query_kc.FieldByName('lb').DisplayLabel:='类别';
   Query_kc.FieldByName('ph').DisplayLabel:='批号';
   Query_kc.FieldByName('jhrq').DisplayLabel:='进货日期';
   if pos('中药',listbox1.Items[listbox1.itemindex])=0 then
     begin
       Query_kc.FieldByName('sb').DisplayLabel:='商标';
       Query_kc.FieldByName('pzwh').DisplayLabel:='批准文号';
       Query_kc.FieldByName('scrq').DisplayLabel:='生产日期';
       Query_kc.FieldByName('yxq').DisplayLabel:='有效期';
       Query_kc.FieldByName('bz').DisplayLabel:='包装';
     end
   else Query_kc.FieldByName('jgdw').DisplayLabel:='加工单位';
   Query_kc.FieldByName('cd').DisplayLabel:='产地';
   Query_kc.FieldByName('ghs_mc').displaylabel:='供货商名称';
   Query_kc.EnableControls;
   if pos('中药',listbox1.Items[listbox1.itemindex])>0 then
    begin
     pzwh_edit.Enabled:=false;
     yxq_edit.Enabled:=false;
     sb_edit.Enabled:=false;
     jgdw_edit.Enabled:=true;
     bz_edit.Enabled:=false;
     maskedit1.Enabled:=false;
    end
   else
    begin
     jgdw_edit.Enabled:=false;
     pzwh_edit.Enabled:=true;
     yxq_edit.Enabled:=true;
     sb_edit.Enabled:=true;
     bz_edit.Enabled:=true;
     maskedit1.Enabled:=true;
    end;
end;

procedure TFrmwpxg.BitBtn2Click(Sender: TObject);
begin
  Self.Close;
end;

procedure TFrmwpxg.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action:=CaFree;
end;

procedure TFrmwpxg.DBGrid1CellClick(Column: TColumn);
begin
  if bitbtn3.Caption='&Y确定' then
    if not Query_kc.Eof then
      begin
        mc_edit.Text:=Query_kc.fieldbyname('pm').asstring;
        edit1.Text:=Query_kc.fieldbyname('ghs_mc').asstring;
        wp_bm_edit.Text:=Query_kc.fieldbyname('wp_bm').asstring;
        gg_edit.Text:=Query_kc.fieldbyname('gg').asstring;
        dw_edit.Text:=Query_kc.fieldbyname('dw').asstring;
        jj_edit.Text:=Query_kc.fieldbyname('jj').asstring;
        dj_edit.Text:=Query_kc.fieldbyname('dj').asstring;
        sl_edit.Text:=Query_kc.fieldbyname('kcs').asstring;
        kcxx_edit.Text:=Query_kc.fieldbyname('kcxx').asstring;
        lb_edit.Text:=Query_kc.fieldbyname('lb').asstring;
        ph_edit.Text:=Query_kc.fieldbyname('ph').asstring;
        cd_edit.Text:=Query_kc.fieldbyname('cd').asstring;
        DateTimePicker2.Date:= Query_kc.fieldbyname('jhrq').asdatetime;
        if pos('中药',listbox1.Items[listbox1.itemindex])=0 then
          begin
            maskedit1.Text:=formatdatetime('yyyy-mm-dd',Query_kc.fieldbyname('scrq').asdatetime);
            sb_edit.Text:=Query_kc.fieldbyname('sb').asstring;
            pzwh_edit.Text:=Query_kc.fieldbyname('pzwh').asstring;
            yxq_edit.Text:=Query_kc.fieldbyname('yxq').asstring;
            bz_edit.Text:=Query_kc.fieldbyname('bz').asstring;
          end
        else  jgdw_edit.Text:=Query_kc.fieldbyname('jgdw').asstring;
      end;
end;

end.

⌨️ 快捷键说明

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