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

📄 hwdb.pas

📁 药品进销存系统 delphi V6开发,入门级参考源代码
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit hwdb;

interface

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

type
  TFrmhwdb = class(TForm)
    Panel1: TPanel;
    DBGrid1: TDBGrid;
    DBGrid2: TDBGrid;
    Label3: TLabel;
    Edit_dbdw: TEdit;
    SpeedButton5: TSpeedButton;
    Panel2: TPanel;
    Label5: TLabel;
    Edit_bm: TEdit;
    Label4: TLabel;
    Edit_sl: TEdit;
    Shape1: TShape;
    Label7: TLabel;
    Label_ckdh: TLabel;
    Label8: TLabel;
    DateTimePicker2: TDateTimePicker;
    Label9: TLabel;
    Label_zdr: TLabel;
    Label10: TLabel;
    Label_zje: TLabel;
    Label1: TLabel;
    ComboBox1: TComboBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    DataSource_tmp: TDataSource;
    tmp_Table: TTable;
    tmp_Query: TQuery;
    Query_sum: TQuery;
    Query_db: TQuery;
    Query_dbdb_bh: TStringField;
    Query_dbcd: TStringField;
    Query_dbpm: TStringField;
    Query_dbgg: TStringField;
    Query_dbdw2: TStringField;
    Query_dbph: TStringField;
    Query_dbjj: TFloatField;
    Query_dbdbsl: TFloatField;
    Query_dbje: TFloatField;
    Query_dbdbrq: TDateTimeField;
    Query_dbdbdw: TStringField;
    Query_dbfpph: TStringField;
    Query_dbck_bh: TStringField;
    Query_dbwp_bm: TStringField;
    Query_kc: TQuery;
    DataSource_kc: TDataSource;
    Query_ckxx: TQuery;
    Database: TDatabase;
    tmp_Querypm: TStringField;
    tmp_Querycd: TStringField;
    tmp_Querygg: TStringField;
    tmp_Querydw: TStringField;
    tmp_Queryjj: TFloatField;
    tmp_Queryph: TStringField;
    tmp_Querydbsl: TFloatField;
    tmp_Queryje: TFloatField;
    tmp_Querypzwh: TStringField;
    tmp_Queryyxq: TFloatField;
    tmp_Queryjs: TFloatField;
    tmp_Queryck_bh: TStringField;
    tmp_Queryhsj: TFloatField;
    Query_dbpzwh: TStringField;
    Query_dbyxq: TFloatField;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ComboBox1Change(Sender: TObject);
    procedure Edit_slKeyPress(Sender: TObject; var Key: Char);
    procedure FormShow(Sender: TObject);
    procedure Edit_bmChange(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure Edit_bmKeyPress(Sender: TObject; var Key: Char);
    procedure openkctable(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure SpeedButton5Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure tmp_QueryCalcFields(DataSet: TDataSet);
  private
    { Private declarations }

  public
    { Public declarations }

  end;

var
  Frmhwdb: TFrmhwdb;
 // ck_id:array[0..25] of string;     //存仓库信息表ckxxb中仓库编号字段的值
  table_name:array[0..25] of string;
  jetotal:real;
  hjtotal:real;
implementation

uses  main, dbrep, dbdwxx;

{$R *.DFM}


procedure TFrmhwdb.openkctable(Sender: TObject);
begin
   Query_kc.DisableControls;
   Query_kc.close;
   Query_kc.UnPrepare;
   Query_kc.sql.Clear;
   if pos('中药',ComboBox1.text)>0 then
     Query_kc.sql.Add('select pm,cd,dw,gg,kcs,jj,ph,jhrq,jgdw,ck_bh,wp_bm,bh from '+table_name[combobox1.itemindex])
   else
     Query_kc.sql.Add('select pm,cd,dw,gg,kcs,bz,jj,ph,jhrq,pzwh,sb,ck_bh,yxq,wp_bm,bh from '+table_name[combobox1.itemindex]);
   Query_kc.sql.Add(' ORDER BY pm,jhrq');
   Query_kc.Prepare;
   Query_kc.open;
   Query_kc.FieldByName('ck_bh').DisplayLabel:='仓库编号';
   Query_kc.FieldByName('bh').DisplayLabel:='编号';
   Query_kc.FieldByName('pm').DisplayLabel:='物品名称';
   Query_kc.FieldByName('wp_bm').DisplayLabel:='物品编码';
   Query_kc.FieldByName('gg').DisplayLabel:='规格';
   Query_kc.FieldByName('kcs').DisplayLabel:='库存数';
   Query_kc.FieldByName('jhrq').DisplayLabel:='进货日期';
   Query_kc.FieldByName('dw').DisplayLabel:='单位';
   Query_kc.FieldByName('jj').DisplayLabel:='进价';
   Query_kc.FieldByName('ph').DisplayLabel:='批号';
   if pos('中药',combobox1.text)>0 then
     Query_kc.FieldByName('jgdw').DisplayLabel:='加工单位'
   else
     begin
       Query_kc.FieldByName('yxq').DisplayLabel:='有效期';
       Query_kc.FieldByName('sb').DisplayLabel:='商标';
       Query_kc.FieldByName('pzwh').DisplayLabel:='批准文号';
       Query_kc.FieldByName('bz').DisplayLabel:='包装';
     end;
   Query_kc.FieldByName('cd').DisplayLabel:='产地';
   Query_kc.EnableControls;
end;

procedure TFrmhwdb.FormCreate(Sender: TObject);
 var   i:integer;
begin

   DateTimePicker2.Date:=Frmmain.GetServerTime;
   i:=0;
   Query_db.close;
   Query_db.UnPrepare;
   Query_db.sql.Clear;
   Query_db.sql.Add('select * from dbxxb');
   Query_db.Prepare;
   Query_db.open;
   Query_ckxx.close;
   Query_ckxx.UnPrepare;
   Query_ckxx.sql.Clear;
   Query_ckxx.sql.Add('select * from ckxxb');
   Query_ckxx.Prepare;
   Query_ckxx.open;
   while not Query_ckxx.Eof do
    begin
     combobox1.Items.Add(Query_ckxx.fields[1].asstring);
     table_name[i]:=Query_ckxx.fieldbyname('bm').asString;
     inc(i);
     Query_ckxx.Next;
    end;
   combobox1.ItemIndex:=0;
   openkctable(Self);  
end;

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

procedure TFrmhwdb.ComboBox1Change(Sender: TObject);

begin
  openkctable(Self);
end;



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

procedure TFrmhwdb.FormShow(Sender: TObject);
begin
  jetotal:=0.0;
  hjtotal:=0.0;
  tmp_table.close;
  tmp_table.TableName:='tmpdb.db';
  if not tmp_table.Exists then
    begin
      tmp_table.FieldDefs.Add('pm',ftstring,20,false);
      tmp_table.FieldDefs.Add('cd',ftstring,20,false);
      tmp_table.FieldDefs.Add('gg',ftstring,10,false);
      tmp_table.FieldDefs.Add('dw',ftstring,4,false);
      tmp_table.FieldDefs.Add('jj',ftfloat);
      tmp_table.FieldDefs.Add('ph',ftstring,20,false);
      tmp_table.FieldDefs.Add('dbsl',ftfloat);
      tmp_table.FieldDefs.Add('je',ftfloat);
      tmp_table.FieldDefs.Add('pzwh',ftstring,40,false);
      tmp_table.FieldDefs.Add('yxq',ftfloat);
      tmp_table.FieldDefs.Add('js',ftfloat);
      tmp_table.FieldDefs.Add('ck_bh',ftstring,1,true);
      tmp_table.CreateTable;
    end
  else tmp_table.EmptyTable;
  tmp_table.open;
  tmp_table.FieldByName('pm').DisplayLabel:='物品名称';
  tmp_table.FieldByName('cd').DisplayLabel:='产地';
  tmp_table.FieldByName('dbsl').DisplayLabel:='调拔数量';
  tmp_table.FieldByName('gg').DisplayLabel:='规格';
  tmp_table.FieldByName('ph').DisplayLabel:='批号';
  tmp_table.FieldByName('dw').DisplayLabel:='单位';
  tmp_table.FieldByName('jj').DisplayLabel:='进价';
  tmp_table.FieldByName('je').DisplayLabel:='金额';
  tmp_table.FieldByName('pzwh').DisplayLabel:='批准文号';
  tmp_table.FieldByName('yxq').DisplayLabel:='有效期';
  tmp_table.FieldByName('js').DisplayLabel:='件数';
  tmp_table.FieldByName('ck_bh').displaylabel:='仓库编号';
  Label_ckdh.Caption:=formatdatetime('yyyymmddhhmmss',Frmmain.GetServerTime);
  Label_zdr.Caption:=Frmmain.name;
  Label_zje.Caption:='0.00';
  bitbtn2.Enabled:=false;

end;

procedure TFrmhwdb.Edit_bmChange(Sender: TObject);
begin
   Query_kc.DisableControls;
   Query_kc.close;
   Query_kc.UnPrepare;
   Query_kc.sql.Clear;
     if pos('中药',combobox1.text)>0 then
       Query_kc.sql.Add('select pm,cd,dw,gg,kcs,jj,ph,jhrq,jgdw,ck_bh,wp_bm,bh from '+table_name[combobox1.itemindex])
     else
       Query_kc.sql.Add('select pm,cd,dw,gg,kcs,bz,jj,ph,jhrq,pzwh,sb,yxq,ck_bh,wp_bm,bh from '+table_name[combobox1.itemindex]);
   Query_kc.sql.Add(' where wp_bm like '+''''+trim(Edit_bm.Text)+'%'+'''ORDER BY pm,jhrq');
   Query_kc.Prepare;
   Query_kc.open;
   Query_kc.FieldByName('ck_bh').DisplayLabel:='仓库编号';
   Query_kc.FieldByName('bh').DisplayLabel:='编号';
   Query_kc.FieldByName('pm').DisplayLabel:='物品名称';
   Query_kc.FieldByName('wp_bm').DisplayLabel:='物品编码';

⌨️ 快捷键说明

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