185 lines
4.6 KiB
ObjectPascal
185 lines
4.6 KiB
ObjectPascal
unit U_custHelpPS;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, cxPC, cxControls, ImgList, ComCtrls, ToolWin, StdCtrls, ExtCtrls,
|
|
U_LeftHelptree, DB, ADODB, cxStyles, cxCustomData, cxGraphics, cxFilter,
|
|
cxData, cxDataStorage, cxEdit, cxDBData, cxGridCustomTableView,
|
|
cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses,
|
|
cxGridCustomView, cxGrid, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL,
|
|
cxTLData;
|
|
type
|
|
PMyRec = ^TMyRec;
|
|
TMyRec = record
|
|
wbcode: string;
|
|
Tvtem_str: string;
|
|
end;
|
|
type
|
|
TfrmCustHelpPS = class(TForm)
|
|
Panel1: TPanel;
|
|
Label1: TLabel;
|
|
Edit1: TEdit;
|
|
ImageList24: TImageList;
|
|
ADOQueryTmp: TADOQuery;
|
|
ADOConnection1: TADOConnection;
|
|
ADOQueryHelp: TADOQuery;
|
|
DS_Help: TDataSource;
|
|
tv1: TcxGridDBTableView;
|
|
cxGrid1Level1: TcxGridLevel;
|
|
cxGrid1: TcxGrid;
|
|
tv1customNo: TcxGridDBColumn;
|
|
tv1shortName: TcxGridDBColumn;
|
|
ToolBar1: TToolBar;
|
|
BtnOk: TToolButton;
|
|
BtnCancel: TToolButton;
|
|
tv1customName: TcxGridDBColumn;
|
|
DataSource1: TDataSource;
|
|
ADOQueryChild: TADOQuery;
|
|
cxDBTreeList1: TcxDBTreeList;
|
|
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure BtnCancelClick(Sender: TObject);
|
|
procedure BtnOkClick(Sender: TObject);
|
|
procedure Edit1Change(Sender: TObject);
|
|
procedure tv1DblClick(Sender: TObject);
|
|
procedure FormShow(Sender: TObject);
|
|
procedure cxDBTreeList1Click(Sender: TObject);
|
|
private
|
|
LoadFlag:Boolean;
|
|
fSqlStr:string;
|
|
procedure InitTree();
|
|
procedure InitGrid(mSql:string);
|
|
public
|
|
fValidCustFlag:Boolean; //是否显示无效客户
|
|
fDispCustomName:Boolean; //是否显示全称
|
|
end;
|
|
|
|
var
|
|
frmCustHelpPS: TfrmCustHelpPS;
|
|
|
|
implementation
|
|
uses
|
|
U_global;
|
|
{$R *.dfm}
|
|
|
|
procedure TfrmCustHelpPS.FormCreate(Sender: TObject);
|
|
begin
|
|
with ADOConnection1 do
|
|
begin
|
|
Connected:=false;
|
|
ConnectionString:=gConString;
|
|
Connected:=true;
|
|
end;
|
|
|
|
fSqlStr:='select a.CustomNo,a.ShortName,a.CustomName,a.CustomNameEn,'+
|
|
'a.Contactor,ywyCode from V_BC_customer10 A where 1=1 ';
|
|
InitTree();
|
|
cxGrid1.Align :=alClient;
|
|
InitGrid(fSqlStr);
|
|
end;
|
|
|
|
|
|
procedure TfrmCustHelpPS.BtnCancelClick(Sender: TObject);
|
|
begin
|
|
close;
|
|
end;
|
|
procedure TfrmCustHelpPS.InitTree();
|
|
var
|
|
fsj:String;
|
|
begin
|
|
fsj:='select frameNo,frameName,TopFrameNo='''''+
|
|
' from YC_Frame A '+
|
|
' where exists(select Code from YC_Stuff X where X.dept=A.frameNo and X.ywyFlag=''Y'' and valid=''Y'')'+
|
|
' union all '+
|
|
' select frameNo=Code,frameName=name,TopFrameNo=dept '+
|
|
' from YC_Stuff A '+
|
|
' where A.YWYFlag=''Y'' and A.Valid=''Y'' ';
|
|
|
|
with ADOQueryChild do
|
|
begin
|
|
Close;
|
|
sql.Clear;
|
|
sql.Add(fsj);
|
|
Open;
|
|
end;
|
|
cxDBTreeList1.FullExpand;
|
|
end;
|
|
|
|
procedure TfrmCustHelpPS.BtnOkClick(Sender: TObject);
|
|
begin
|
|
if ADOQueryHelp.IsEmpty then exit;
|
|
ModalResult := 1;
|
|
end;
|
|
procedure TfrmCustHelpPS.InitGrid(mSql:string);
|
|
begin
|
|
try
|
|
with ADOQueryHelp do
|
|
begin
|
|
close;
|
|
sql.Clear ;
|
|
sql.Add(mSql);
|
|
if gIsYwy then
|
|
sql.Add('and A.contactor='+quotedStr(guserName));
|
|
if fValidCustFlag then
|
|
sql.Add('and A.valid=''Y''');
|
|
sql.Add('order by CustomNoId');
|
|
Open;
|
|
end;
|
|
finally
|
|
end;
|
|
end;
|
|
procedure TfrmCustHelpPS.Edit1Change(Sender: TObject);
|
|
var
|
|
TmpSql:string;
|
|
begin
|
|
TmpSql := 'SELECT CustomNo,ShortName,CustomName,a.Contactor,ywyCode FROM V_BC_Customer10 A'
|
|
+ ' where (A.CustomName Like '+quotedStr('%'+trim(edit1.Text)+'%')+
|
|
' or A.ShortName Like '+quotedStr('%'+trim(edit1.Text)+'%')+
|
|
' or A.CustomNo Like '+quotedStr('%'+trim(edit1.Text)+'%')+ ')';
|
|
InitGrid(TmpSql);
|
|
end;
|
|
|
|
procedure TfrmCustHelpPS.tv1DblClick(Sender: TObject);
|
|
begin
|
|
BtnOk.Click ;
|
|
end;
|
|
|
|
procedure TfrmCustHelpPS.FormShow(Sender: TObject);
|
|
begin
|
|
tv1customName.Visible := fDispCustomName;
|
|
end;
|
|
|
|
procedure TfrmCustHelpPS.cxDBTreeList1Click(Sender: TObject);
|
|
var
|
|
fSqlStr:string;
|
|
begin
|
|
if ADOQueryHelp.Active then
|
|
begin
|
|
if Trim(ADOQueryChild.fieldbyname('frameno').AsString)<>'' then
|
|
begin
|
|
fSqlStr:=' ywyCode='+quotedStr(Trim(ADOQueryChild.fieldbyname('frameno').AsString));
|
|
try
|
|
ADOQueryHelp.DisableControls;
|
|
with ADOQueryHelp do
|
|
begin
|
|
if Trim(fSqlStr)='' then
|
|
begin
|
|
Filtered:=False;
|
|
end else
|
|
begin
|
|
Filtered:=False;
|
|
Filter:=fSqlStr;
|
|
Filtered:=True;
|
|
end;
|
|
end;
|
|
finally
|
|
ADOQueryHelp.EnableControls;
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
end.
|