229 lines
5.2 KiB
ObjectPascal
229 lines
5.2 KiB
ObjectPascal
unit U_ProductHelp;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, DB, ADODB, Grids, DBGrids, ExtCtrls, ComCtrls, ImgList, ToolWin,
|
||
StdCtrls, cxControls, cxPC,StrUtils, cxStyles, cxCustomData, cxGraphics,
|
||
cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel,
|
||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
|
||
cxGridCustomView, cxGrid;
|
||
|
||
type
|
||
TfrmProductHelp = class(TForm)
|
||
Panel1: TPanel;
|
||
Label1: TLabel;
|
||
Edit1: TEdit;
|
||
ImageList24: TImageList;
|
||
DataSource1: TDataSource;
|
||
ADOQueryTmp: TADOQuery;
|
||
ADOQueryHelp: TADOQuery;
|
||
ToolBar2: TToolBar;
|
||
ToolButton1: TToolButton;
|
||
ToolButton2: TToolButton;
|
||
Label2: TLabel;
|
||
cxTabControl1: TcxTabControl;
|
||
Label3: TLabel;
|
||
Edit2: TEdit;
|
||
cxGrid1: TcxGrid;
|
||
tv1: TcxGridDBTableView;
|
||
tv1p_Code: TcxGridDBColumn;
|
||
tv1P_chnName: TcxGridDBColumn;
|
||
tv1P_engName: TcxGridDBColumn;
|
||
tv1P_spec: TcxGridDBColumn;
|
||
tv1P_gram: TcxGridDBColumn;
|
||
tv1P_Breadth: TcxGridDBColumn;
|
||
tv1P_upBreadth: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
tv1Num: TcxGridDBColumn;
|
||
tv1P_Breadthp: TcxGridDBColumn;
|
||
tv1P_upBreadthp: TcxGridDBColumn;
|
||
ADOConnection1: TADOConnection;
|
||
procedure BtnOkClick(Sender: TObject);
|
||
procedure BtnCancelClick(Sender: TObject);
|
||
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
|
||
Shift: TShiftState);
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure cxTabControl1Change(Sender: TObject);
|
||
procedure tv1DblClick(Sender: TObject);
|
||
private
|
||
SortID: Integer;
|
||
SortCaption, SortField, SortOrder: String;
|
||
procedure IntiQuery();
|
||
procedure IntiQuery10();
|
||
public
|
||
fDipFlag:integer; //1:³ÉÆ·£»2£ºÅ÷²¼ ;3£º±´Ë¹
|
||
fPbCtr:boolean;
|
||
fCustomNo:string;
|
||
fSysCode:string;
|
||
end;
|
||
|
||
var
|
||
frmProductHelp: TfrmProductHelp;
|
||
|
||
implementation
|
||
uses
|
||
U_global;
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmProductHelp.BtnOkClick(Sender: TObject);
|
||
begin
|
||
if ADOQueryHelp.IsEmpty then exit;
|
||
ModalResult := 1;
|
||
end;
|
||
|
||
procedure TfrmProductHelp.BtnCancelClick(Sender: TObject);
|
||
begin
|
||
ModalResult := -1;
|
||
end;
|
||
|
||
|
||
procedure TfrmProductHelp.IntiQuery();
|
||
var
|
||
whereStr:string;
|
||
begin
|
||
whereStr:='';
|
||
if trim(edit1.Text)<>'' then
|
||
begin
|
||
whereStr:='and P_code like '+quotedStr('%'+trim(edit1.text)+'%');
|
||
end;
|
||
|
||
if trim(edit2.Text)<>'' then
|
||
begin
|
||
whereStr:='and P_chnName like '+quotedStr('%'+trim(edit2.text)+'%');
|
||
end;
|
||
|
||
//ÀàÐÍ
|
||
if cxTabControl1.TabIndex=1 then
|
||
whereStr:=whereStr+' and P_Code like ''P%'''
|
||
else if cxTabControl1.TabIndex=2 then
|
||
whereStr:=whereStr+' and P_Code like ''J%'''
|
||
else if cxTabControl1.TabIndex=3 then
|
||
whereStr:=whereStr+' and P_Code like ''B%''';
|
||
|
||
with ADOQueryHelp Do
|
||
Begin
|
||
DisableControls;
|
||
Active := False;
|
||
SQL.Clear;
|
||
SQL.Add('select * from V_MC_Catlog');
|
||
sql.Add('where 1=1 '+whereStr);
|
||
Active := True;
|
||
EnableControls;
|
||
end;
|
||
end;
|
||
///////////////////////////////////////////
|
||
//Å÷²¼¿ØÖÆ
|
||
///////////////////////////////////////////
|
||
procedure TfrmProductHelp.IntiQuery10();
|
||
var
|
||
filterStr:string;
|
||
begin
|
||
filterStr:='';
|
||
if trim(edit1.Text)<>'' then
|
||
begin
|
||
filterStr:=' and P_code like '+quotedStr('%'+trim(edit1.text)+'%');
|
||
end;
|
||
if trim(edit2.Text)<>'' then
|
||
begin
|
||
filterStr:=' and P_chnName like '+quotedStr('%'+trim(edit2.text)+'%');
|
||
end;
|
||
//ÀàÐÍ
|
||
//if cxTabControl1.TabIndex=1 then
|
||
// filterStr:=filterStr+' and P_type=''C'''
|
||
//else if cxTabControl1.TabIndex=2 then
|
||
// filterStr:=filterStr+' and P_type=''P''';
|
||
try
|
||
with ADOQueryHelp Do
|
||
Begin
|
||
DisableControls;
|
||
close;
|
||
filtered:=false;
|
||
SQL.Clear;
|
||
if trim(fSysCode)='YH' then
|
||
sql.Add('exec JS_PBCK_CHANGE_YH10')
|
||
else
|
||
SQL.Add('exec JS_PBCK_CHANGE10');
|
||
sql.Add(QuotedStr(fCustomNo));
|
||
Open;
|
||
|
||
if trim(filterStr)='' then
|
||
begin
|
||
ADOQueryHelp.Filtered:=false;
|
||
ADOQueryHelp.EnableControls;
|
||
exit;
|
||
end;
|
||
filterStr:=trim(RightBStr(filterStr,length(filterStr)-4));
|
||
with ADOQueryHelp do
|
||
begin
|
||
filtered:=false;
|
||
filter:=filterStr;
|
||
filtered:=true;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
finally
|
||
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmProductHelp.Edit1KeyDown(Sender: TObject; var Key: Word;
|
||
Shift: TShiftState);
|
||
Var
|
||
TmpSql :string;
|
||
begin
|
||
if Key = VK_RETURN then
|
||
begin
|
||
if fPbCtr then
|
||
IntiQuery10()
|
||
else
|
||
IntiQuery();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmProductHelp.FormCreate(Sender: TObject);
|
||
begin
|
||
cxgrid1.Align:=alClient;
|
||
with ADOConnection1 do
|
||
begin
|
||
Connected:=false;
|
||
ConnectionString:=gConString;
|
||
Connected:=true;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmProductHelp.FormShow(Sender: TObject);
|
||
var
|
||
tabIndex:integer;
|
||
begin
|
||
cxTabControl1.TabIndex:=fDipFlag;
|
||
if fPbCtr then
|
||
IntiQuery10()
|
||
else
|
||
IntiQuery();
|
||
Edit1.SetFocus;
|
||
|
||
end;
|
||
|
||
procedure TfrmProductHelp.cxTabControl1Change(Sender: TObject);
|
||
var
|
||
tabIndex:integer;
|
||
begin
|
||
tabIndex:=cxTabControl1.TabIndex;
|
||
if cxTabControl1.Tabs[tabIndex].Caption='Å÷²¼²Ö¿â' then
|
||
IntiQuery10()
|
||
else
|
||
IntiQuery();
|
||
end;
|
||
|
||
procedure TfrmProductHelp.tv1DblClick(Sender: TObject);
|
||
begin
|
||
if ADOQueryHelp.IsEmpty then exit;
|
||
ModalResult := 1;
|
||
end;
|
||
|
||
end.
|