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

📄 cpkczl.pas

📁 汽车配件管理系统 采用ACCESS数据库 配件销售类公司适用 。 主要是目录树的学习
💻 PAS
字号:
unit cpkczl;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, dxExEdtr, DB, ADODB, dxCntner, dxTL, dxDBCtrl, dxDBTL, ComCtrls,
  dxtree, dxdbtree, dxdbtrel, cxLookAndFeelPainters, dxfColorButton,
  StdCtrls, cxButtons, cxMaskEdit, cxSpinEdit, cxDBEdit, cxCurrencyEdit,
  Grids, DBGridEh, cxLabel, cxControls, cxContainer, cxEdit, cxTextEdit,
  bsSkinCtrls, Menus, HzSpell, cxCheckBox, Mask, DBCtrlsEh, DBLookupEh;

type
  Tcpkczlck = class(TForm)
    spzl: TADOQuery;
    DataSource0: TDataSource;
    DBTree1: TdxDBTreeView;
    ePanel1: TbsSkinExPanel;
    cxLabel1: TcxLabel;
    DBGridEh1: TDBGridEh;
    Table1: TADOTable;
    Table2: TADOTable;
    Table3: TADOTable;
    Table4: TADOTable;
    Table5: TADOTable;
    Table6: TADOTable;
    Table7: TADOTable;
    Table8: TADOTable;
    Table9: TADOTable;
    DataSource1: TDataSource;
    DataSource2: TDataSource;
    DataSource3: TDataSource;
    DataSource4: TDataSource;
    DataSource5: TDataSource;
    DataSource6: TDataSource;
    DataSource7: TDataSource;
    DataSource8: TDataSource;
    DataSource9: TDataSource;
    DBGridEh2: TDBGridEh;
    DBGridEh3: TDBGridEh;
    DBGridEh4: TDBGridEh;
    DBGridEh5: TDBGridEh;
    DBGridEh6: TDBGridEh;
    cxLabel2: TcxLabel;
    cxLabel3: TcxLabel;
    cxLabel4: TcxLabel;
    cxLabel5: TcxLabel;
    cxLabel6: TcxLabel;
    cxLabel7: TcxLabel;
    cxLabel8: TcxLabel;
    cxButton1: TcxButton;
    cxButton2: TcxButton;
    Button1: TdxfColorButton;
    PopupMenu1: TPopupMenu;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    ADOQy1: TADOQuery;
    py: THzSpell;
    Edit1: TcxTextEdit;
    Edit2: TcxTextEdit;
    Edit3: TcxTextEdit;
    Edit4: TcxTextEdit;
    cEdit1: TcxCurrencyEdit;
    cEdit2: TcxCurrencyEdit;
    cEdit3: TcxCurrencyEdit;
    cEdit4: TcxSpinEdit;
    cxLabel9: TcxLabel;
    Edit5: TcxTextEdit;
    cxLabel10: TcxLabel;
    cxLabel11: TcxLabel;
    cxLabel12: TcxLabel;
    cxLabel13: TcxLabel;
    cxLabel14: TcxLabel;
    cxLabel15: TcxLabel;
    cBox1: TcxCheckBox;
    cxLabel16: TcxLabel;
    dblp1: TDBLookupComboboxEh;
    zjEdit1: TcxTextEdit;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
    procedure cxButton1Click(Sender: TObject);
    procedure cxButton2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure DBGridEh1CellClick(Column: TColumnEh);
    procedure DBGridEh2CellClick(Column: TColumnEh);
    procedure DBGridEh3CellClick(Column: TColumnEh);
    procedure DBGridEh4CellClick(Column: TColumnEh);
    procedure DBGridEh5CellClick(Column: TColumnEh);
    procedure DBGridEh6CellClick(Column: TColumnEh);
    procedure Edit1PropertiesChange(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  cpkczlck: Tcpkczlck;

implementation

{$R *.dfm}

uses main;

procedure Tcpkczlck.FormCreate(Sender: TObject);
begin
spzl.Open;
table1.Open;
table2.Open;
table3.Open;
table4.Open;
table5.Open;
table6.Open;
table7.Open;
table8.Open;
table9.Open;
dblp1.Text:='个';
epanel1.RollState:=true;
end;

procedure Tcpkczlck.N3Click(Sender: TObject);
var sjh,mc,bm:string;
bh,i:integer;
begin
zjedit1.Text:=spzl['zjm1'];
mc:=spzl['spmc'];
sjh:=spzl['spbh'];
edit1.Text:='';
edit5.Text:=spzl['spmc'];
edit2.Text:='';
edit3.Text:=spzl['spbh'];
if (length(spzl['spbh']) mod 5)<>0 then
begin
showmessage('此产品编码错误!位数不够或多出应为5的倍数!'+chr(13)+'请在产品编号处修改!');
cxlabel1.Caption:='产品编号:';
edit1.Text:=spzl['spbh'];
cxbutton1.Enabled:=false;
cxbutton2.Enabled:=false;
epanel1.RollState:=false;
button2.Visible:=true;
exit;
end;
edit4.Text:=spzl['zjm'];
cedit1.Value:=spzl['jj'];
cedit2.Value:=spzl['pfj'];
cedit3.Value:=spzl['sj'];
cedit4.Value:=spzl['sl'];
adoqy1.Close;
adoqy1.SQL.Clear;
adoqy1.SQL.Add('select sjbh,spbh from spk where sjbh=:bh order by spbh');
adoqy1.Parameters[0].Value:=sjh;
adoqy1.Open;
adoqy1.Last;
bm:='';
if adoqy1.RecordCount>0 then
begin
bm:=adoqy1['sjbh'];
bh:=strtoint(copy(adoqy1['spbh'],length(adoqy1['sjbh'])+1,5))+1;
if length(inttostr(bh))<=5 then
begin
i:=1;
while i<=(5-length(inttostr(bh))) do
begin
edit2.Text:=edit2.Text+'0';
i:=i+1;
end;
edit2.Text:=bm+edit2.Text+inttostr(bh);
epanel1.RollState:=false;
cbox1.Checked:=false;
dblp1.Enabled:=false;
end else showmessage('次级分类超过5位数,请新建分类!');
end else
begin
edit2.Text:=spzl['spbh']+'00001';
epanel1.RollState:=false;
cbox1.Checked:=false;
dblp1.Enabled:=false;
end;
adoqy1.Close;

end;

procedure Tcpkczlck.N5Click(Sender: TObject);
begin
spzl.Delete;
dbtree1.RefreshItems;
n3.Enabled:=false;
end;

procedure Tcpkczlck.cxButton1Click(Sender: TObject);
begin
if (length(edit2.Text) mod 5)=0 then
begin
spzl.Append;
spzl['spmc']:=edit1.Text;
spzl['spbh']:=edit2.Text;
spzl['sjmc']:=edit5.Text;
spzl['sjbh']:=edit3.Text;
spzl['zjm']:=edit4.Text;
spzl['zjm1']:=zjedit1.Text;
spzl['dw']:=dblp1.Text;
spzl['jj']:=cedit1.Value;
spzl['pfj']:=cedit2.Value;
spzl['sj']:=cedit3.Value;
spzl['sl']:=cedit4.Value;
spzl['zzcp']:=cbox1.Checked;
spzl.UpdateBatch();
dbtree1.RefreshItems;
end else
showmessage('分项编码错误!不是5的倍数!');
epanel1.RollState:=true;
cbox1.Checked:=false;
edit2.Enabled:=false;
edit3.Enabled:=false;
edit5.Enabled:=false;
cedit1.Enabled:=false;
cedit2.Enabled:=false;
cedit3.Enabled:=false;
cedit4.Enabled:=false;
dblp1.Enabled:=false;
end;

procedure Tcpkczlck.cxButton2Click(Sender: TObject);
begin
epanel1.RollState:=true;
cbox1.Checked:=false;
edit2.Enabled:=false;
edit3.Enabled:=false;
edit5.Enabled:=false;
cedit1.Enabled:=false;
cedit2.Enabled:=false;
cedit3.Enabled:=false;
cedit4.Enabled:=false;
dblp1.Enabled:=false;
end;

procedure Tcpkczlck.Button1Click(Sender: TObject);
begin
spzl.UpdateBatch();
n3.Enabled:=true;
end;

procedure Tcpkczlck.DBGridEh1CellClick(Column: TColumnEh);
begin
edit1.Text:=table1['mc'];
end;

procedure Tcpkczlck.DBGridEh2CellClick(Column: TColumnEh);
begin
edit1.Text:=table2['mc'];
end;

procedure Tcpkczlck.DBGridEh3CellClick(Column: TColumnEh);
begin
edit1.Text:=table3['mc'];
end;

procedure Tcpkczlck.DBGridEh4CellClick(Column: TColumnEh);
begin
edit1.Text:=table4['mc'];
end;

procedure Tcpkczlck.DBGridEh5CellClick(Column: TColumnEh);
begin
edit1.Text:=table5['mc'];
cbox1.Checked:=true;
//edit2.Enabled:=true;
//edit3.Enabled:=true;
//edit5.Enabled:=true;
cedit1.Enabled:=true;
cedit2.Enabled:=true;
cedit3.Enabled:=true;
cedit4.Enabled:=true;
dblp1.Enabled:=true;
end;

procedure Tcpkczlck.DBGridEh6CellClick(Column: TColumnEh);
begin
edit1.Text:=table6['mc'];
end;

procedure Tcpkczlck.Edit1PropertiesChange(Sender: TObject);
begin
edit4.Text:=py.PyHeadOfHz(edit1.Text);
end;

procedure Tcpkczlck.Button2Click(Sender: TObject);
begin
cxlabel1.Caption:='分项名称:';
cxbutton1.Enabled:=true;
cxbutton2.Enabled:=true;
spzl.Edit;
spzl['spbh']:=edit1.Text;
spzl.UpdateBatch();
button2.Visible:=false;
epanel1.RollState:=true;
end;

end.

⌨️ 快捷键说明

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