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

📄 formsell.pas

📁 用delphi和sql server编写的药品进销存系统
💻 PAS
字号:
unit FormSell;

interface

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

type
  TSell = class(TForm)
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label1: TLabel;
    Label6: TLabel;
    DataSource1: TDataSource;
    ADOTable1: TADOTable;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    ADOQuery1: TADOQuery;
    Button3: TButton;
    ADOTable2: TADOTable;
    DataSource2: TDataSource;
    GroupBox3: TGroupBox;
    Label7: TLabel;
    ComboBox1: TComboBox;
    Edit7: TEdit;
    Button4: TButton;
    Button5: TButton;
    DBGrid2: TDBGrid;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Edit2Exit(Sender: TObject);
    procedure Edit4Exit(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure Button2Click(Sender: TObject);
    procedure DBGrid2CellClick(Column: TColumn);
    procedure Edit2Change(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Sell: TSell;
  ID:String;

implementation

uses FormManage;


{$R *.DFM}

procedure TSell.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  manage.Show;
end;



procedure TSell.Button1Click(Sender: TObject);
begin
//ShowMessage(Edit4.Text+'***********'+adoTable2.fieldbyname('库存数').AsString );
 if Edit4.Text>adoTable2.fieldbyname('库存数').AsString then
  begin
  ShowMessage('对不起,您选择的商品我们只有'+adoTable2.fieldbyname('库存数').AsString+'件,请您重新输入!');
  Edit4.SetFocus;
  end
  else
  begin
AdoTable1.Append;
AdoTable1.FieldValues['销售日期'] := Edit1.text;
AdoTable1.FieldValues['药品名称'] := Edit2.text;
AdoTable1.FieldValues['药品代码'] := Edit3.text;
AdoTable1.FieldValues['销售数量'] := Edit4.text;
AdoTable1.FieldValues['销售单价'] := Edit5.text;
AdoTable1.FieldValues['销售金额'] := Edit6.text;
AdoTable1.Post;

AdoTable2.Edit;
AdoTable2.FieldValues['库存数']:=AdoTable2.FieldValues['库存数']-StrToInt(Edit4.Text);
AdoTable2.Post;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
Edit6.Clear;
Edit7.Clear;
end
end;

procedure TSell.FormCreate(Sender: TObject);

begin
Edit1.Text:=DateToStr(Date);
//Edit2.Clear;
//Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
Edit6.Clear;
Edit7.Clear;
end;

procedure TSell.Edit2Exit(Sender: TObject);
begin
//ShowMessage(Edit1.Text);

end;

procedure TSell.Edit4Exit(Sender: TObject);
begin
// ShowMessage( adoquery1.fieldbyname('库存数').AsString +'*****************'+Edit4.Text);



if Edit4.Text='' then
begin
ShowMessage('请输入您购买的药品数量');
Edit4.SetFocus;
end
else
Edit6.Text:=FloatToStr(StrToFloat(Edit5.Text)*StrToFloat(Edit4.Text));

end;

procedure TSell.Button3Click(Sender: TObject);
begin

AdoTable2.Edit;
AdoTable2.FieldValues['库存数']:=AdoTable2.FieldValues['库存数']+AdoTable1.FieldValues['销售数量']-StrToInt(Edit4.Text);
AdoTable2.Post;

AdoTable1.Edit;
AdoTable1.FieldValues['销售日期'] := Edit1.text;
AdoTable1.FieldValues['药品名称'] := Edit2.text;
AdoTable1.FieldValues['药品代码'] := Edit3.text;
AdoTable1.FieldValues['销售数量'] := Edit4.text;
AdoTable1.FieldValues['销售单价'] := Edit5.text;
AdoTable1.FieldValues['销售金额'] := Edit6.text;
AdoTable1.Post;

Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
Edit6.Clear;
Edit7.Clear;

end;

procedure TSell.Button4Click(Sender: TObject);
begin
if Edit7.Text<>''then
//ShowMessage( ComboBox1.Items[0]+'****************'+Edit7.text);
begin
if AdoTable1.Locate(ComboBox1.Items[ComboBox1.ItemIndex],Edit7.text,[loCaseInsensitive, loPartialKey]) then
begin

//ShowMessage(BooleanToStr(a));
Edit1.Text:=DateToStr(AdoTable1.FieldValues['销售日期']);
Edit2.text:=AdoTable1.FieldValues['药品名称'];
Edit3.Text:=AdoTable1.FieldValues['药品代码'];
Edit4.Text:=IntToStr(AdoTable1.FieldValues['销售数量']);
Edit5.Text:=FloatToStr(AdoTable1.FieldValues['销售单价']);
Edit6.text:=FloatToStr(AdoTable1.FieldValues['销售金额']);
end
else
ShowMessage('对不起,查不到您输入的药品信息!');
end
else
begin
  ShowMessage('请输入要查询的药品名称!');
  Edit7.SetFocus;
  end
end;

procedure TSell.DBGrid1CellClick(Column: TColumn);
begin
Edit1.Text:=DateToStr(AdoTable1.FieldValues['销售日期']);
//Edit2.text:=AdoTable1.FieldValues['药品名称'];
Edit3.Text:=AdoTable1.FieldValues['药品代码'];
Edit4.Text:=IntToStr(AdoTable1.FieldValues['销售数量']);
//Edit5.Text:=FloatToStr(AdoTable1.FieldValues['销售单价']);
Edit6.text:=FloatToStr(AdoTable1.FieldValues['销售金额']);
end;

procedure TSell.Button2Click(Sender: TObject);
begin
adoquery1.Close;
 adoquery1.SQL.Clear;
 adoquery1.SQL.Add('select * from 药品信息 where 药品名称='''+edit2.Text+'''');
 adoquery1.Open;
 if adoquery1.fieldbyname('药品代码').AsString<>'' then
 begin

  AdoTable2.Locate('药品代码',adoquery1.fieldbyname('药品代码').AsString,[loCaseInsensitive, loPartialKey]);
   AdoTable2.Edit;
 AdoTable2.FieldValues['库存数']:=AdoTable2.FieldValues['库存数']+StrToInt(Edit4.Text);
 AdoTable2.Post;
 ADOTable1.Delete;

 end



end;

procedure TSell.DBGrid2CellClick(Column: TColumn);
begin
Edit3.Text:=AdoTable2.FieldValues['药品代码'];
Edit4.Clear;
Edit6.Clear;
end;

procedure TSell.Edit2Change(Sender: TObject);
begin



 adoquery1.Close;
 adoquery1.SQL.Clear;
 adoquery1.SQL.Add('select * from 药品信息 where 药品名称='''+edit2.Text+'''');
 adoquery1.Open;


 edit5.Text:=adoquery1.fieldbyname('销售单价').AsString;
   edit3.Text:=adoquery1.fieldbyname('药品代码').AsString;






end;

procedure TSell.Button5Click(Sender: TObject);
begin
Sell.Hide;
Manage.Show;


end;

procedure TSell.Edit3Change(Sender: TObject);
begin


  AdoTable2.Locate('药品代码',Edit3.text,[loCaseInsensitive, loPartialKey]);

edit5.Text:=adoTable2.FieldValues['销售单价'];
edit2.Text:=adoTable2.FieldValues['药品名称'];
end;

end.

⌨️ 快捷键说明

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