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

📄 cg_outwhs.pas

📁 一个门诊系统程序代码一个门诊系统程序代码一个门诊系统程序代码一个门诊系统程序代码一个门诊系统程序代码
💻 PAS
字号:
unit cg_outwhs;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, cg_master, dxExEdtr, DB, ADODB, ImgList, ActnList, dxEdLib,
  dxDBELib, dxCntner, dxEditor, StdCtrls, DBCtrls, Buttons, Mask, dxTL,
  dxDBCtrl, dxDBGrid, ExtCtrls, ToolWin, ComCtrls, dxDBTLCl, dxGrClms;

type
  Tfcg_outwhs = class(Tfbscg_master)
    Qbaseinfoid: TAutoIncField;
    Qbaseinfofcode: TWideStringField;
    QbaseinfoMa_worker: TWideStringField;
    QbaseinfoMa_whscode: TWideStringField;
    QbaseinfoMa_pcode: TWideStringField;
    QbaseinfoMa_pname: TWideStringField;
    QbaseinfoFdate: TDateTimeField;
    QbaseinfoMa_unit: TWideStringField;
    QbaseinfoMa_unit2: TFloatField;
    QbaseinfoMa_unit1: TFloatField;
    QbaseinfoMa_ss: TFloatField;
    QbaseinfoMa_buyprice: TFloatField;
    QbaseinfoMa_sum: TFloatField;
    QbaseinfoMa_yield: TDateTimeField;
    QbaseinfoMa_enddate: TDateTimeField;
    QbaseinfoMa_ph: TWideStringField;
    QbaseinfoMa_factory: TWideStringField;
    Qbaseinfofout: TIntegerField;
    Qbaseinfofmem: TWideStringField;
    QbaseinfofSort: TWideStringField;
    Qbaseinfoma_bzq: TIntegerField;
    Qbaseinfoma_qyt: TFloatField;
    Qbaseinfoma_otc: TIntegerField;
    dxDBGrid1fcode: TdxDBGridColumn;
    dxDBGrid1Ma_worker: TdxDBGridColumn;
    dxDBGrid1Ma_whscode: TdxDBGridColumn;
    dxDBGrid1Ma_pcode: TdxDBGridColumn;
    dxDBGrid1Ma_pname: TdxDBGridColumn;
    dxDBGrid1Fdate: TdxDBGridDateColumn;
    dxDBGrid1Ma_unit: TdxDBGridColumn;
    dxDBGrid1Ma_buyprice: TdxDBGridMaskColumn;
    dxDBGrid1Ma_sum: TdxDBGridMaskColumn;
    dxDBGrid1Ma_yield: TdxDBGridDateColumn;
    dxDBGrid1Ma_enddate: TdxDBGridDateColumn;
    dxDBGrid1Ma_ph: TdxDBGridColumn;
    dxDBGrid1Ma_factory: TdxDBGridColumn;
    dxDBGrid1ma_bzq: TdxDBGridMaskColumn;
    dxDBGrid1ma_qyt: TdxDBGridMaskColumn;
    dxDBGrid1ma_otc: TdxDBGridCheckColumn;
    dxDBGrid1fout: TdxDBGridCheckColumn;
    DBLookupComboBox2: TDBLookupComboBox;
    procedure actaddExecute(Sender: TObject);
    procedure actfindExecute(Sender: TObject);
    procedure QbaseinfoMa_buypriceValidate(Sender: TField);
    procedure Qbaseinfoma_qytValidate(Sender: TField);
    procedure dxDBButtonEdit1ButtonClick(Sender: TObject;
      AbsoluteIndex: Integer);
    procedure acteditExecute(Sender: TObject);
    procedure actsaveExecute(Sender: TObject);
    procedure actrepriExecute(Sender: TObject);
    procedure btn1Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  fcg_outwhs: Tfcg_outwhs;

implementation

uses Global, selectproout, selectproout1, dataform, pubdata, cg_profind2;

{$R *.dfm}

procedure Tfcg_outwhs.actaddExecute(Sender: TObject);
begin
  inherited;
//添加记录
DBLookupComboBox2.Enabled:=True;
tmpname:='cg_master';
Qbaseinfo.FieldByName('fcode').Value:=getcode('TH');
Qbaseinfo.FieldByName('Ma_worker').Value:=fData.Sqltmp['User_code'];
Qbaseinfo.FieldByName('fdate').Value:=FormatDateTime('YYYY-MM-DD',Date());
Qbaseinfo.FieldByName('Ma_whscode').Value:=fpubdata.qrydisp_whs['Whs_code'];
Qbaseinfo.FieldByName('ma_otc').Value:=0;
Qbaseinfo.FieldByName('Ma_yield').Value:=FormatDateTime('YYYY-MM-DD',Date());
Qbaseinfo.FieldByName('Ma_enddate').Value:=Date+60;
dxDBButtonEdit1.SetFocus;
end;

procedure Tfcg_outwhs.actfindExecute(Sender: TObject);
begin
  inherited;
fmselectproout:=Tfmselectproout.Create(Self);
fmselectproout.ShowModal;
end;

procedure Tfcg_outwhs.QbaseinfoMa_buypriceValidate(Sender: TField);
begin
  inherited;
Qbaseinfo.FieldByName('Ma_sum').Value:=Qbaseinfo['Ma_buyprice']*Qbaseinfo['ma_qyt'];
end;

procedure Tfcg_outwhs.Qbaseinfoma_qytValidate(Sender: TField);
begin
  inherited;
Qbaseinfo.FieldByName('Ma_sum').Value:=Qbaseinfo['Ma_buyprice']*Qbaseinfo['ma_qyt'];
end;

procedure Tfcg_outwhs.dxDBButtonEdit1ButtonClick(Sender: TObject;
  AbsoluteIndex: Integer);
begin
  inherited;
fcg_profind2:=Tfcg_profind2.Create(Self);
fcg_profind2.ShowModal;
end;

procedure Tfcg_outwhs.acteditExecute(Sender: TObject);
begin
  inherited;
DBLookupComboBox2.Enabled:=True;
end;

procedure Tfcg_outwhs.actsaveExecute(Sender: TObject);
begin
  inherited;
DBLookupComboBox2.Enabled:=False;
end;

procedure Tfcg_outwhs.actrepriExecute(Sender: TObject);
begin
  inherited;
DBLookupComboBox2.Enabled:=False;
end;

procedure Tfcg_outwhs.btn1Click(Sender: TObject);
var a,b:Integer;
begin
 // inherited;
if Qbaseinfo.RecordCount>0 then
 if Qbaseinfo.FieldByName('fout').Value=0 then
  begin
  if MessageBox(0, '要审核此单据吗?', '提示', MB_OKCANCEL + MB_ICONQUESTION) =
    IDOK then
    begin
     Qbaseinfo.Edit;
     Qbaseinfo.FieldByName('fout').Value:=1;
     Qbaseinfo.Post;
     //----------------------------------------
      fpubdata.qryphy.Close;//查询当前药品信息
      fpubdata.qryphy.SQL.Clear;
      fpubdata.qryphy.SQL.Add('select * from Bs_physic where (Phy_code='+''''+Qbaseinfo['Ma_pcode']+''''+') and (Phy_name='+''''+Qbaseinfo['Ma_pname']+''''+')');
      fpubdata.qryphy.Open;

      fData.sqlcheck.Close; //查询当前药品的库存信息
      fData.sqlcheck.SQL.Clear;
      fData.sqlcheck.SQL.Add('select * from kc_table where (Kc_code='+''''+Qbaseinfo['Ma_pcode']+''''+') and (Kc_name='+''''+Qbaseinfo['Ma_pname']+''''+')');
      fData.sqlcheck.Open;
     if fData.sqlcheck.RecordCount>0 then
       begin
        fData.sqlcheck.Edit;   //int 取整函数
        fData.sqlcheck.FieldByName('Kc_qty2').Value:=fData.sqlcheck.FieldByName('Kc_qty2').Value-int(Qbaseinfo['ma_qyt']/fpubdata.qryphy.FieldByName('Phy_unit2rate').Value);
        fData.sqlcheck.FieldByName('Kc_qty3').Value:=fData.sqlcheck.FieldByName('Kc_qty3').Value-int((Qbaseinfo['ma_qyt']-int(Qbaseinfo['ma_qyt']/fpubdata.qryphy.FieldByName('Phy_unit2rate').Value)*fpubdata.qryphy.FieldByName('Phy_unit2rate').Value)/fpubdata.qryphy.FieldByName('Phy_unit1rate').Value);
        a:=int(Qbaseinfo['ma_qyt']/fpubdata.qryphy.FieldByName('Phy_unit2rate').Value)* fpubdata.qryphy.FieldByName('Phy_unit2rate').Value;
        b:=int((Qbaseinfo['ma_qyt']-a)/fpubdata.qryphy.FieldByName('Phy_unit1rate').Value)*fpubdata.qryphy.FieldByName('Phy_unit1rate').Value;
        fData.sqlcheck.FieldByName('Kc_qty4').Value:=fData.sqlcheck.FieldByName('Kc_qty4').Value-(Qbaseinfo['ma_qyt']-a-b);
        fData.sqlcheck.FieldByName('Kc_allqty').Value:=fData.sqlcheck.FieldByName('Kc_allqty').Value-Qbaseinfo['ma_qyt'];
        fData.sqlcheck.Post;
        end;
       //-------------------------------------------
    end
  end
  else
  MessageBox(0, '此单已审核!', '提示', MB_OK + MB_ICONINFORMATION +
    MB_TOPMOST);

end;


procedure Tfcg_outwhs.btn2Click(Sender: TObject);
var a,b:Integer;
begin
  //inherited;
if Qbaseinfo.RecordCount>0 then
  if Qbaseinfo.FieldByName('fout').Value=1 then
   begin
   if MessageBox(0, '要反审核此单据吗?', '提示', MB_OKCANCEL + MB_ICONQUESTION) =
     IDOK then
     begin
      Qbaseinfo.Edit;
      Qbaseinfo.FieldByName('fout').Value:=0;
      Qbaseinfo.Post;
      //----------------------------
      fpubdata.qryphy.Close;//查询当前药品信息
      fpubdata.qryphy.SQL.Clear;
      fpubdata.qryphy.SQL.Add('select * from Bs_physic where (Phy_code='+''''+Qbaseinfo['Ma_pcode']+''''+') and (Phy_name='+''''+Qbaseinfo['Ma_pname']+''''+')');
      fpubdata.qryphy.Open;

      fData.sqlcheck.Close; //查询当前药品的库存信息
      fData.sqlcheck.SQL.Clear;
      fData.sqlcheck.SQL.Add('select * from kc_table where (Kc_code='+''''+Qbaseinfo['Ma_pcode']+''''+') and (Kc_name='+''''+Qbaseinfo['Ma_pname']+''''+')');
      fData.sqlcheck.Open;
     if fData.sqlcheck.RecordCount>0 then
       begin
        fData.sqlcheck.Edit;   //int 取整函数
        fData.sqlcheck.FieldByName('Kc_qty2').Value:=fData.sqlcheck.FieldByName('Kc_qty2').Value+int(Qbaseinfo['ma_qyt']/fpubdata.qryphy.FieldByName('Phy_unit2rate').Value);
        fData.sqlcheck.FieldByName('Kc_qty3').Value:=fData.sqlcheck.FieldByName('Kc_qty3').Value+int((Qbaseinfo['ma_qyt']-int(Qbaseinfo['ma_qyt']/fpubdata.qryphy.FieldByName('Phy_unit2rate').Value)*fpubdata.qryphy.FieldByName('Phy_unit2rate').Value)/fpubdata.qryphy.FieldByName('Phy_unit1rate').Value);
        a:=int(Qbaseinfo['ma_qyt']/fpubdata.qryphy.FieldByName('Phy_unit2rate').Value)* fpubdata.qryphy.FieldByName('Phy_unit2rate').Value;
        b:=int((Qbaseinfo['ma_qyt']-a)/fpubdata.qryphy.FieldByName('Phy_unit1rate').Value)*fpubdata.qryphy.FieldByName('Phy_unit1rate').Value;
        fData.sqlcheck.FieldByName('Kc_qty4').Value:=fData.sqlcheck.FieldByName('Kc_qty4').Value+(Qbaseinfo['ma_qyt']-a-b);
        fData.sqlcheck.FieldByName('Kc_allqty').Value:=fData.sqlcheck.FieldByName('Kc_allqty').Value+Qbaseinfo['ma_qyt'];
        fData.sqlcheck.Post;
        end;
        //--------------------------------------
     end
  end
  else
  MessageBox(0, '此单已反审!', '提示', MB_OK + MB_ICONINFORMATION +
    MB_TOPMOST);


end;


end.

⌨️ 快捷键说明

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