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

📄 dabrproject.pas

📁 详细的ERP设计资料
💻 PAS
字号:
unit DABrProject;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, WSStandardBrowse, DB, ActnList, ToolWin, ComCtrls, Grids,
  DBGrids, QLDBGrid, ExtCtrls, WSEdit,ADODB, Menus;

type
  TDABrProjectForm = class(TWSStandardBrowseForm)
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ToolButton7: TToolButton;
    ToolButton8: TToolButton;
    ToolButton9: TToolButton;
    ToolButton10: TToolButton;
    ToolButton11: TToolButton;
    TreeView: TTreeView;
    Splitter1: TSplitter;
    tblGoodClass: TADOTable;
    dsGoodClass: TDataSource;
    ToolButton12: TToolButton;
    ToolButton13: TToolButton;
    pmTreeEdit: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    QryLevelCode: TADOQuery;
    tblDAGoods: TADODataSet;
    tblDAGoodsID: TIntegerField;
    tblDAGoodsCreateDate: TDateTimeField;
    tblDAGoodsCreateUserID: TIntegerField;
    tblDAGoodsRecordState: TStringField;
    tblDAGoodsProjectClassID: TIntegerField;
    tblDAGoodsDSDesigner: TStringField;
    tblDAGoodsDSDesigner2: TStringField;
    tblDAGoodsDSDesigner3: TStringField;
    tblDAGoodsDSDesigner4: TStringField;
    tblDAGoodsDSDesigner5: TFloatField;
    tblDAGoodsDSDesigner6: TFloatField;
    tblDAGoodsDSDesigner7: TStringField;
    tblDAGoodsDSDesigner8: TStringField;
    tblDAGoodsDSDesigner9: TStringField;
    tblDAGoodsDSDesigner10: TStringField;
    ToolButton14: TToolButton;
    procedure FormCreate(Sender: TObject);
    procedure TreeViewChange(Sender: TObject; Node: TTreeNode);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure tblDAGoodsFilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    procedure AddNewActionExecute(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure TreeViewClick(Sender: TObject);
  private
    { Private declarations }
  protected
      function CreateEditForm: TWSEditForm; override;
  public
    { Public declarations }
  end;

var
  DABrProjectForm: TDABrProjectForm;

implementation

uses CommonDM, WSUtils, DAEdProject;

{$R *.dfm}


function TDABrProjectForm.CreateEditForm: TWSEditForm;
begin
  Result := TDAEdProjectForm.Create(Application);
end;


procedure TDABrProjectForm.FormCreate(Sender: TObject);
begin
  tblgoodclass.Open;
  buildtreefromdataset(treeview.Items,tblgoodclass);
  tblDAGoods.Parameters.ParamByName('LevelCode1').Value:='%001%';
  tblDAGoods.Open;
  inherited;
end;

procedure TDABrProjectForm.TreeViewChange(Sender: TObject;
  Node: TTreeNode);
begin
  inherited;
 tblGoodClass.Locate('ID',integer(node.Data),[])
end;

procedure TDABrProjectForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
tbldagoods.close;
tblgoodclass.Close;
action:=cafree;
end;

procedure TDABrProjectForm.tblDAGoodsFilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
begin
  inherited;
accept:=not (dataset.FieldByName('RecordState').AsString='删除');

end;

procedure TDABrProjectForm.AddNewActionExecute(Sender: TObject);
var aqrTemp: TADOQuery;
begin
  aqrTemp := TADOQuery.Create(nil);
  aqrTemp.Connection := CommonData.acnConnection;
  aqrTemp.Close;
  aqrTemp.sql.Text := 'select * from DAProjectClass where RecordState<>'
    +QuotedStr('删除');
  aqrTemp.open;
  if aqrTemp.IsEmpty then
  begin
    Showmessage('请先输入项目分类资料。');
    Exit;
  end;
 // inherited;
  with CreateEditForm do
  try
    if treeview.SelectionCount>0
    then begin
         if Enter( integer(treeview.Selected.Data)) then refreshdataset;
         end
    else if Enter( -1) then refreshdataset;
  finally
    Free;
  end;

end;

procedure TDABrProjectForm.N1Click(Sender: TObject);
begin
  inherited;
 {DAGoodsClassEditForm:=TDAGoodsClassEditForm.Create(self);
 DAGoodsClassEditForm.Enter(tblGoodClass.fieldbyname('Id').AsInteger);
 n5.Click;  }
end;

procedure TDABrProjectForm.N2Click(Sender: TObject);
begin
  inherited;
 {DAGoodsClassEditForm:=TDAGoodsClassEditForm.Create(self);
 DAGoodsClassEditForm.edit(tblGoodClass.fieldbyname('Id').AsInteger);
 n5.Click;   }
end;

procedure TDABrProjectForm.N5Click(Sender: TObject);
var
 tempList: Tstrings;
 tempbook:tbookmark;
begin
  inherited;
 try
  templist := TStringList.Create;
  templist:=savestate(treeview);
  datasource.DataSet.Close;

  tempbook:=tblGoodClass.GetBookmark;

  tblGoodClass.Refresh;
    treeview.Items.Clear;
  buildtreefromdataset(treeview.Items,tblGoodClass);
  loadstate(treeview,templist);
  tblGoodClass.GotoBookmark(tempbook);

  datasource.DataSet.Open;
  finally
  templist.Free;
 end;


end;

procedure TDABrProjectForm.N3Click(Sender: TObject);
var
temp:ttreenode;
begin
  inherited;
temp:= treeview.Selected;
if (temp.getFirstChild<>nil) or( not tblDAGoods.IsEmpty)
then messagebox(handle,'该类存在下属或还存在记录!','警 告',MB_OK+MB_ICONSTOP)
else begin
    //   tblAreaTree.Locate('ID',integer(temp.data),[]);
       tblGoodClass.Edit;
       tblGoodClass.FieldByName('RecordState').AsString:='删除';
       tblGoodClass.Post;
       treeview.Items.Delete(temp);
     end;

end;

procedure TDABrProjectForm.TreeViewClick(Sender: TObject);
var SLevelCode :string;
   aqrTemp: TADOQuery;
begin
  aqrTemp := TADOQuery.Create(nil);
  aqrTemp.Connection := CommonData.acnConnection;
  aqrTemp.Close;
  aqrTemp.sql.Text := 'select * from dAGOODScLASS where RecordState<>'
    +QuotedStr('删除');
  aqrTemp.open;
  if aqrTemp.IsEmpty then
  begin
    Showmessage('请先输入商品分类资料。');
    Exit;
  end;
  inherited;
  tblDAGoods.DisableControls;
  tblDAGoods.Close;
  QryLevelCode.Close;
  QryLevelCode.SQL.Text :=' select LevelCode from DAGoodsClass where id='
      +trim(inttostr(integer(treeview.Selected.Data)));
  QryLevelCode.Open;
  if QryLevelCode.FieldByName('LevelCode').IsNull then   SLevelCode :='%001%'
     else  SLevelCode :='%'+Trim(QryLevelCode.FieldByName('LevelCode').AsString)+'%';
  tblDAGoods.Parameters.ParamByName('LevelCode1').Value:=SLevelCode;
  tblDAGoods.Open;
  tblDAGoods.EnableControls;
end;

end.

⌨️ 快捷键说明

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