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

📄 shnew.pas

📁 星光药店进销存管理系统源代码
💻 PAS
字号:
unit ShNew;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, DBCtrls, ComCtrls, Mask;

type
  TFrm_New = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    DBNo: TDBEdit;
    DBName: TDBEdit;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    DBSpecification: TDBEdit;
    DBFigure: TDBEdit;
    DBMagnitude: TDBEdit;
    DBprice: TDBEdit;
    DBproposition: TDBEdit;
    DBnumber: TDBEdit;
    DBmemo: TDBEdit;
    DBTotal: TDBEdit;
    DateTimeyxq: TDateTimePicker;
    DBdate: TDBEdit;
    DBUnit: TDBComboBox;
    Btpost: TBitBtn;
    BitBtn2: TBitBtn;
    Label13: TLabel;
    Label14: TLabel;
    DBText1: TDBText;
    DBText2: TDBText;
    SpeedButton1: TSpeedButton;
    procedure DateTimeyxqCloseUp(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BtpostClick(Sender: TObject);
    procedure DBNoKeyPress(Sender: TObject; var Key: Char);
    procedure DBNameKeyPress(Sender: TObject; var Key: Char);
    procedure DBSpecificationKeyPress(Sender: TObject; var Key: Char);
    procedure DBUnitKeyPress(Sender: TObject; var Key: Char);
    procedure DBMagnitudeKeyPress(Sender: TObject; var Key: Char);
    procedure DBpriceKeyPress(Sender: TObject; var Key: Char);
    procedure DBFigureKeyPress(Sender: TObject; var Key: Char);
    procedure DBpropositionKeyPress(Sender: TObject; var Key: Char);
    procedure DBnumberKeyPress(Sender: TObject; var Key: Char);
    procedure DBdateKeyPress(Sender: TObject; var Key: Char);
    procedure DBmemoKeyPress(Sender: TObject; var Key: Char);
    procedure DBTotalKeyPress(Sender: TObject; var Key: Char);
    procedure SpeedButton1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frm_New: TFrm_New;

implementation
uses DMCG, DMKC, Shopping, DMType, DType;
{$R *.dfm}

procedure TFrm_New.DateTimeyxqCloseUp(Sender: TObject);
begin
  DMC.CGTable1.Edit;
  DMC.CGTable1.fieldbyname('有效期').Asstring:=FormatDateTime('yyyy-MM-DD',DateTimeyxq.date);
end;

procedure TFrm_New.BitBtn2Click(Sender: TObject);
begin
  DMC.CGTable1.Cancel;
  Close;
end;

procedure TFrm_New.BtpostClick(Sender: TObject);
var
  S:Integer;
  Item: TListItem;
begin
  DMC.CGTable1.Post;
  DMK.KCTable1.locate('编码',DMC.CGTable1.Fieldbyname('编号').Asstring,[]);
if DMK.KCTable1.FieldByName('编码').AsString=DMC.CGTable1.FieldByName('编号').AsString then
begin
{累加现有库存数}
  S:=DMK.KCTable1.FieldValues['数量']+DMC.CGTable1.FieldValues['数量'];
  with DMK.KCQuery1 do
    begin
      close;
      sql.Clear;
      SQL.Clear;
      SQL.Add('Update KC');
      SQL.Add('Set 数量=' +inttostr(S));
      SQL.Add(format('Where 品名=''%s''',[DMC.CGTable1.FieldByName('品名').asstring]));
      ExecSQL;
    end;
end
else
begin
{进货时同时新增库存数}
  DMK.KCTable1.Append;
  DMK.KCTable1.Edit;
  DMK.KCTable1.FieldByName('编码').AsString := DMC.CGTable1.FieldByName('编号').AsString;
  DMK.KCTable1.FieldByName('品名').AsString := DMC.CGTable1.FieldByName('品名').AsString;
  DMK.KCTable1.FieldByName('数量').AsInteger := DMC.CGTable1.FieldByName('数量').AsInteger;
  DMK.KCTable1.Post;
end;
  Frm_Shopping.ListView1.Items.Clear;
    with DMC.CGQuery1 do
    begin
      close;
      sql.Clear;
      sql.Add('select b.购货单位,b.编号,b.品名,b.规格,b.单位,b.数量,b.单价,b.金额,b.生产企业,b.批号,b.有效期,b.备注 from CG b');
      sql.Add('where b.单号 = '+DMC.CGATable1.fieldbyname('单号').Asstring);
//     open;
      ExecSQL;
  first;
  while not Eof do
  begin
//    ListView1.Items.Clear;
    Item := Frm_Shopping.ListView1.Items.Add;
    Item.Caption := FieldByName('编号').AsString;
    Item.SubItems.Add(FieldByName('品名').AsString);
    Item.SubItems.Add(FieldByName('规格').AsString);
    Item.SubItems.Add(FieldByName('单位').AsString);
    Item.SubItems.Add(inttostr(FieldByName('数量').AsInteger));
    Item.SubItems.Add(inttostr(FieldByName('单价').AsInteger));
    Item.SubItems.Add(inttostr(FieldByName('金额').AsInteger));
    Item.SubItems.Add(FieldByName('生产企业').AsString);
    Item.SubItems.Add(FieldByName('批号').AsString);
    Item.SubItems.Add(FieldByName('有效期').AsString);
    Item.SubItems.Add(FieldByName('备注').AsString);
    Next;
    end;
    end;
  Close;
end;



procedure TFrm_New.DBNoKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   Begin
     DMDrugs.DrugsTable1.Locate('编号',DBNo.Text,[]);
     DMC.CGTable1.Fieldbyname('编号').Asstring:=DMDrugs.DrugsTable1.FieldByName('编号').Asstring;
     DMC.CGTable1.Fieldbyname('品名').Asstring:=DMDrugs.DrugsTable1.FieldByName('品名').Asstring;     
     DBName.SetFocus;
   end;
end;

procedure TFrm_New.DBNameKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBSpecification.SetFocus;
end;

procedure TFrm_New.DBSpecificationKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBUnit.SetFocus;
end;

procedure TFrm_New.DBUnitKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBMagnitude.SetFocus;
end;

procedure TFrm_New.DBMagnitudeKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBprice.SetFocus;
end;

procedure TFrm_New.DBpriceKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBproposition.SetFocus;
end;

procedure TFrm_New.DBFigureKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBproposition.SetFocus;
end;

procedure TFrm_New.DBpropositionKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   begin
     DMC.CGTable1.FieldValues['金额']:=DMC.CGTable1.FieldValues['数量']*DMC.CGTable1.FieldValues['单价'];
     DBnumber.SetFocus;
   end;
end;

procedure TFrm_New.DBnumberKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBdate.SetFocus;
end;

procedure TFrm_New.DBdateKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBmemo.SetFocus;
end;

procedure TFrm_New.DBmemoKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   DBTotal.SetFocus;
end;

procedure TFrm_New.DBTotalKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
   Btpost.SetFocus;
end;

procedure TFrm_New.SpeedButton1Click(Sender: TObject);
begin
  Form2.SpeedButton2.Caption:='确定';
  Form2.SpeedButton2.Top:=23;
  Form2.SpeedButton2.Left:=328;
  Form2.SpeedButton3.Visible:=False;
  Form2.ShowModal;
end;

end.

⌨️ 快捷键说明

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