2025-01-08 11:55:07 +08:00
|
|
|
|
unit U_StuffHelp;
|
2024-12-23 17:08:59 +08:00
|
|
|
|
|
|
|
|
|
interface
|
|
|
|
|
|
|
|
|
|
uses
|
|
|
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
|
|
|
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, cxFilter,
|
|
|
|
|
cxData, cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, cxGridLevel,
|
|
|
|
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
|
|
|
|
|
cxControls, cxGridCustomView, cxGrid, cxInplaceContainer, cxDBTL,
|
|
|
|
|
cxTLData, ComCtrls, ToolWin, ADODB, ImgList,StrUtils, ExtCtrls;
|
|
|
|
|
|
|
|
|
|
type
|
2025-01-08 11:55:07 +08:00
|
|
|
|
TfrmStuffHelp = class(TForm)
|
2024-12-23 17:08:59 +08:00
|
|
|
|
ToolBar2: TToolBar;
|
|
|
|
|
TOk: TToolButton;
|
|
|
|
|
TBClose: TToolButton;
|
|
|
|
|
cxDBTreeList1: TcxDBTreeList;
|
|
|
|
|
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
|
|
|
|
|
cxGrid1: TcxGrid;
|
|
|
|
|
tv1: TcxGridDBTableView;
|
|
|
|
|
tv1Code: TcxGridDBColumn;
|
|
|
|
|
tv1Name: TcxGridDBColumn;
|
|
|
|
|
DBGrid1Level1: TcxGridLevel;
|
|
|
|
|
GroupBox1: TGroupBox;
|
|
|
|
|
ADOQueryDept: TADOQuery;
|
|
|
|
|
DataSource1: TDataSource;
|
|
|
|
|
ADOConnection1: TADOConnection;
|
|
|
|
|
tv1Column1: TcxGridDBColumn;
|
|
|
|
|
cxStyleRepository1: TcxStyleRepository;
|
|
|
|
|
cxStyle1: TcxStyle;
|
|
|
|
|
cxStyle2: TcxStyle;
|
|
|
|
|
cxStyle_gridRow: TcxStyle;
|
|
|
|
|
cxStyle_gridFoot: TcxStyle;
|
|
|
|
|
cxStyle_gridHead: TcxStyle;
|
|
|
|
|
cxStyle_gridGroupBox: TcxStyle;
|
|
|
|
|
cxStyle_yellow: TcxStyle;
|
|
|
|
|
cxStyle_Red: TcxStyle;
|
|
|
|
|
ADOQueryHelp: TADOQuery;
|
|
|
|
|
DataSource2: TDataSource;
|
|
|
|
|
Label1: TLabel;
|
|
|
|
|
Edt_name: TEdit;
|
|
|
|
|
ImageList1: TImageList;
|
|
|
|
|
cxStyleTree: TcxStyle;
|
|
|
|
|
Label2: TLabel;
|
|
|
|
|
Edt_Code: TEdit;
|
|
|
|
|
Splitter1: TSplitter;
|
|
|
|
|
procedure FormShow(Sender: TObject);
|
|
|
|
|
procedure FormCreate(Sender: TObject);
|
|
|
|
|
procedure TBCloseClick(Sender: TObject);
|
|
|
|
|
procedure TOkClick(Sender: TObject);
|
|
|
|
|
procedure tv1DblClick(Sender: TObject);
|
|
|
|
|
procedure Edt_nameChange(Sender: TObject);
|
|
|
|
|
procedure cxDBTreeList1Click(Sender: TObject);
|
|
|
|
|
private
|
|
|
|
|
procedure InitTree();
|
|
|
|
|
procedure DoQuery();
|
|
|
|
|
procedure FilterData(strdepotno,strcode,strname:string);
|
|
|
|
|
public
|
|
|
|
|
fFrameNo:string;
|
|
|
|
|
fFrameName:string;
|
|
|
|
|
fIsYwy:boolean;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
var
|
2025-01-08 11:55:07 +08:00
|
|
|
|
frmStuffHelp: TfrmStuffHelp;
|
2024-12-23 17:08:59 +08:00
|
|
|
|
|
|
|
|
|
implementation
|
|
|
|
|
uses
|
2025-01-08 11:55:07 +08:00
|
|
|
|
U_global;
|
2024-12-23 17:08:59 +08:00
|
|
|
|
{$R *.dfm}
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
|
//////<2F><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
///////////////////////////////////////////////////////////
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.FilterData(strdepotno,strcode,strname:string);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
var
|
|
|
|
|
filterStr:string;
|
|
|
|
|
begin
|
|
|
|
|
filterStr:='';
|
|
|
|
|
if trim(strdepotno)<>'' then
|
|
|
|
|
filterStr:=filterStr+' and dept like '+quotedstr('%'+trim(strdepotno)+'%');
|
|
|
|
|
if trim(strcode)<>'' then
|
2025-01-08 11:55:07 +08:00
|
|
|
|
filterStr:=filterStr+' and code like '+quotedstr('%'+trim(strcode)+'%');
|
2024-12-23 17:08:59 +08:00
|
|
|
|
if trim(strname)<>'' then
|
2025-01-08 11:55:07 +08:00
|
|
|
|
filterStr:=filterStr+' and name like '+quotedstr('%'+trim(strname)+'%');
|
2024-12-23 17:08:59 +08:00
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
ADOQueryHelp.DisableControls ;
|
|
|
|
|
if trim(filterStr)='' then
|
|
|
|
|
begin
|
|
|
|
|
ADOQueryHelp.Filtered:=false;
|
|
|
|
|
ADOQueryHelp.EnableControls;
|
|
|
|
|
exit;
|
|
|
|
|
end;
|
|
|
|
|
filterStr:=trim(RightBStr(filterStr,length(filterStr)-5));
|
|
|
|
|
// showmessage(filterStr);
|
|
|
|
|
with ADOQueryHelp do
|
|
|
|
|
begin
|
|
|
|
|
filtered:=false;
|
|
|
|
|
filter:=filterStr;
|
|
|
|
|
filtered:=true;
|
|
|
|
|
end;
|
|
|
|
|
finally
|
|
|
|
|
ADOQueryHelp.EnableControls;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
//////////////////////////////////////////////////////
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.InitTree();
|
2024-12-23 17:08:59 +08:00
|
|
|
|
var
|
|
|
|
|
strsql,strwhere:string;
|
|
|
|
|
begin
|
2025-01-08 11:55:07 +08:00
|
|
|
|
strsql:=' SELECT distinct frameNo,frameTop,frameName,Framelevel '+
|
|
|
|
|
' from YC_frame '+
|
|
|
|
|
' where Framelevel=''0'' and Valid=''Y'' '+
|
2024-12-23 17:08:59 +08:00
|
|
|
|
' union '+
|
2025-01-08 11:55:07 +08:00
|
|
|
|
' SELECT distinct B.frameNo,B.frameTop,B.frameName,Framelevel '+
|
|
|
|
|
' FROM YC_stuff A '+
|
|
|
|
|
' INNER JOIN YC_frame B on A.dept=B.frameNo and B.Valid=''Y'' ';
|
2024-12-23 17:08:59 +08:00
|
|
|
|
|
|
|
|
|
strwhere:=' where A.Valid=''Y'' ';
|
2025-01-08 11:55:07 +08:00
|
|
|
|
if fIsYwy then
|
|
|
|
|
strwhere:=strwhere+' and A.YWYFlag=''Y'' ';
|
2024-12-23 17:08:59 +08:00
|
|
|
|
if trim(fFrameNo)<>'' then
|
2025-01-08 11:55:07 +08:00
|
|
|
|
strwhere:=strwhere+' and A.dept like '+quotedstr(trim(fFrameNo)+'%');
|
2024-12-23 17:08:59 +08:00
|
|
|
|
if trim(fFrameName)<>'' then
|
|
|
|
|
strwhere:=strwhere+' and B.frameName like '+quotedstr('%'+trim(fFrameName)+'%');
|
2025-01-08 11:55:07 +08:00
|
|
|
|
strsql:=strsql+ strwhere;
|
2024-12-23 17:08:59 +08:00
|
|
|
|
|
|
|
|
|
with ADOQueryDept do
|
|
|
|
|
begin
|
|
|
|
|
close;
|
|
|
|
|
sql.Clear ;
|
|
|
|
|
sql.Add( strsql);
|
|
|
|
|
Open;
|
|
|
|
|
end;
|
|
|
|
|
cxDBTreeList1.FullExpand;
|
|
|
|
|
|
|
|
|
|
DoQuery();
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.FormShow(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
InitTree();
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.FormCreate(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
cxGrid1.Align :=alclient;
|
|
|
|
|
with ADOConnection1 do
|
|
|
|
|
begin
|
|
|
|
|
Connected:=false;
|
2025-01-08 11:55:07 +08:00
|
|
|
|
ConnectionString:=gConString;
|
2024-12-23 17:08:59 +08:00
|
|
|
|
Connected:=true;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
//////////////////////////////////////////////////
|
|
|
|
|
//
|
|
|
|
|
//////////////////////////////////////////////////
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.DoQuery();
|
2024-12-23 17:08:59 +08:00
|
|
|
|
var
|
|
|
|
|
strsql,strwhere:string;
|
|
|
|
|
begin
|
2025-01-08 11:55:07 +08:00
|
|
|
|
strsql:=' select A.code,A.Name,A.dept,A.ywyflag,A.Duties,Case A.Sex when ''F'' then ''Ů'' else ''<27><>'' end as Sex,A.Intime '+
|
|
|
|
|
' from YC_stuff A ';
|
|
|
|
|
strwhere:=' where A.Valid=''Y'' ';
|
2024-12-23 17:08:59 +08:00
|
|
|
|
if fIsYwy then
|
2025-01-08 11:55:07 +08:00
|
|
|
|
strwhere:=strwhere+' and A.YWYFlag=''Y'' ';
|
|
|
|
|
if trim(fFrameNo)<>'' then
|
|
|
|
|
strwhere:=strwhere+' and A.dept like '+quotedstr(trim(fFrameNo)+'%');
|
|
|
|
|
strsql:=strsql+ strwhere +' order by A.Code ';
|
2024-12-23 17:08:59 +08:00
|
|
|
|
|
|
|
|
|
with ADOQueryHelp do
|
|
|
|
|
begin
|
|
|
|
|
close;
|
|
|
|
|
sql.Clear ;
|
|
|
|
|
sql.Add( strsql);
|
|
|
|
|
Open;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.TBCloseClick(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
close;
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.TOkClick(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
if ADOQueryHelp.IsEmpty then
|
|
|
|
|
begin
|
|
|
|
|
ModalResult:=-1
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
ModalResult:=1;
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.tv1DblClick(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
Tok.Click ;
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.Edt_nameChange(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
FilterData('',edt_code.Text,Edt_name.Text);
|
|
|
|
|
end;
|
|
|
|
|
|
2025-01-08 11:55:07 +08:00
|
|
|
|
procedure TfrmStuffHelp.cxDBTreeList1Click(Sender: TObject);
|
2024-12-23 17:08:59 +08:00
|
|
|
|
begin
|
|
|
|
|
if ADOQueryDept.IsEmpty then exit;
|
|
|
|
|
if trim(ADOQueryDept.FieldByName('Framelevel').AsString)='0' then
|
|
|
|
|
FilterData('','','')
|
|
|
|
|
else
|
2025-01-08 11:55:07 +08:00
|
|
|
|
FilterData(ADOQueryDept.FieldByName('Frameno').AsString,'','');
|
2024-12-23 17:08:59 +08:00
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
end.
|