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

📄 goods.pas

📁 pasa人力资源考勤管理系统
💻 PAS
字号:
unit goods;

interface

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

type
  Tfromgoods = class(TForm)
    Panel3: TPanel;
    Label22: TLabel;
    Label23: TLabel;
    Label24: TLabel;
    Animate1: TAnimate;
    DateTimePicker5: TDateTimePicker;
    BitBtn1: TBitBtn;
    DateTimePicker6: TDateTimePicker;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    ImageList2: TImageList;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton5: TToolButton;
    tbnsort: TToolButton;
    tbnfind: TToolButton;
    tbnprint: TToolButton;
    ToolButton4: TToolButton;
    DBNavigator1: TDBNavigator;
    Label4: TLabel;
    Label5: TLabel;
    ADOdept: TADOQuery;
    ADOindetail: TADOQuery;
    ADOdeptdno: TStringField;
    ADOindetailindetailno: TStringField;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    Panel2: TPanel;
    Label18: TLabel;
    Edit1: TEdit;
    DBGrid1: TDBGrid;
    Splitter1: TSplitter;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label14: TLabel;
    Label17: TLabel;
    DBText2: TDBText;
    DBText3: TDBText;
    Label3: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    DBText1: TDBText;
    DBText4: TDBText;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    dept: TwwDBLookupCombo;
    idetail: TwwDBLookupCombo;
    DBEdit3: TDBEdit;
    Panel4: TPanel;
    Label8: TLabel;
    Edit2: TEdit;
    DBGrid2: TDBGrid;
    Splitter2: TSplitter;
    DBGrid3: TDBGrid;
    ADOdeptdept: TStringField;
    ADOindetailindetailname: TStringField;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    DBGrid4: TDBGrid;
    Splitter3: TSplitter;
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure ToolButton4Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure PageControl1Change(Sender: TObject);
    procedure DBNavigator1BeforeAction(Sender: TObject;
      Button: TNavigateBtn);
    procedure idetailChange(Sender: TObject);
    procedure N1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  fromgoods: Tfromgoods;

implementation

uses datamol, main, publicfunction, addzt, goodsindetail, dingdanman;

{$R *.DFM}

procedure Tfromgoods.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if activecontrol=dbgrid1 then
    exit;
   if key=#13 then
    begin
      key:=#0;
      if activecontrol=dbedit3 then
       begin
        if datamod.ADOgoods.State in [dsinsert,dsedit] then
         begin
          datamod.adogoods.post;
          datamod.adogoods.append;
         end;
         dbedit1.setfocus;
       end
      else
        selectnext(activecontrol,true,true);
    end;
end;

procedure Tfromgoods.ToolButton4Click(Sender: TObject);
begin
 close;
end;

procedure Tfromgoods.FormShow(Sender: TObject);
begin
adodept.Close;
adodept.Open;
adoindetail.Close;
adoindetail.Open;
end;

procedure Tfromgoods.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 datamod.Adogoods.Close;
 datamod.ADOdingdanman.Close;
 adodept.Close;
 adoindetail.Close;
 action:=cafree;
 fromgoods:=nil;
end;

procedure Tfromgoods.FormCreate(Sender: TObject);
begin
 adodept.Close;
 adodept.Open;
 adoindetail.Close;
 adoindetail.open;
 datamod.ADOgoods.Close;
 datamod.adogoods.commandtext:='select * from goods order by goodsid';
 datamod.Adogoods.open;
 datamod.Adoindetail.Close;
 datamod.adoindetail.commandtext:='select * from indetail order by indetailno';
 datamod.Adoindetail.Open;
 datamod.adoindetailb.close;
 datamod.adoindetailb.open;
 datamod.Adodept.Open;
 datamod.adodingdanman.Close;
 datamod.adodingdanman.Open;
end;

procedure Tfromgoods.PageControl1Change(Sender: TObject);
begin
 case pagecontrol1.ActivePageIndex of
 0:begin
     dbnavigator1.DataSource:=datamod.Dsgoods;
     adoindetail.Close;
     adoindetail.open;
   end;
 1:begin
     dbnavigator1.DataSource:=datamod.Dsindetail;
   end;
 end;
end;

procedure Tfromgoods.DBNavigator1BeforeAction(Sender: TObject;
  Button: TNavigateBtn);
begin
if pagecontrol1.ActivePageIndex=1 then
begin
 if button in [nbinsert,nbedit] then
 begin
   if not assigned(Formgoodsindetail) then
    Formgoodsindetail:=tFormgoodsindetail.Create(self);
   Formgoodsindetail.Show;
   if button=nbedit then
   begin
    formgoodsindetail.dbEdit1.Text:=datamod.Adoindetailindetailno.Value;
    formgoodsindetail.dbEdit2.Text:=datamod.Adoindetailindetailname.Value;
   end;
 end;
end;
end;

procedure Tfromgoods.idetailChange(Sender: TObject);
begin
if datamod.adogoods.Active then
begin
 datamod.adogoods.edit;
  datamod.adogoodsindetailname.Value:=adoindetail.fieldbyname('indetailname').asstring;
 datamod.adoquery1.Close;
 datamod.adoquery1.sql.Clear;
 datamod.adoquery1.SQL.add('select sum(isnull(prices,0)) prices from indetailb where indetailno='''+trim(idetail.Text)+'''');
 datamod.adoquery1.open;
 if not datamod.adoquery1.Eof then
 begin
   datamod.adogoods.Edit;
   datamod.adogoodsprices.Value:=datamod.adoquery1.fieldbyname('prices').asfloat;
 end;
end;
end;

procedure Tfromgoods.N1Click(Sender: TObject);
begin
 if not assigned(formdingdanman) then
   formdingdanman:=tformdingdanman.create(self);
 formdingdanman.show;
end;

end.

⌨️ 快捷键说明

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