unit U_ZdyAttachGYS; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit; type TfrmZdyAttachGYS = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBClose: TToolButton; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; Panel1: TPanel; ToolButton2: TToolButton; ADOQueryMain: TADOQuery; RM1: TRMGridReport; RMDB_Main: TRMDBDataSet; Label3: TLabel; CoName: TEdit; cxGridPopupMenu2: TcxGridPopupMenu; DS_HZ: TDataSource; CDS_HZ: TClientDataSet; Label1: TLabel; CoCode: TEdit; Label2: TLabel; FactType: TComboBox; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; v2Column2: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v2Column15: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; v2Column7: TcxGridDBColumn; CheckBox2: TCheckBox; v2Column1: TcxGridDBColumn; v2Column3: TcxGridDBColumn; CheckBox1: TCheckBox; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure CoNameChange(Sender: TObject); procedure Tv2DblClick(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure CheckBox1Click(Sender: TObject); private { Private declarations } procedure InitGrid(); public end; var frmZdyAttachGYS: TfrmZdyAttachGYS; implementation uses U_DataLink, U_Fun, U_ZDYHelp; {$R *.dfm} procedure TfrmZdyAttachGYS.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; SQL.Clear; sql.Add(' select * from Company A left join Company_contact B '); sql.Add(' on A.CoID=B.CoID and B.IsDefault=1 where A.CoType=''供应商'' and A.Valid=''Y'' and ISQY =1'); if CheckBox2.Checked then begin sql.Add(' and FactType=''坯布厂'' '); end else begin sql.Add(' and FactType<>''坯布厂'' '); end; if CheckBox1.Checked then begin sql.Add(' and FactType=''染厂'' '); end else begin sql.Add(' and FactType<>''染厂'' '); end; SQL.Add(' order by FactType,PLType,idx'); Open; end; SCreateCDS20(ADOQueryMain, CDS_HZ); SInitCDSData20(ADOQueryMain, CDS_HZ); finally ADOQueryMain.EnableControls; end; ToolButton2.Click; end; procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject); begin frmZdyAttachGYS := nil; end; procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject); begin WriteCxGrid('供应商资料', Tv2); Close; end; procedure TfrmZdyAttachGYS.FormShow(Sender: TObject); begin ReadCxGrid('供应商资料', Tv2); InitGrid(); end; procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, CDS_HZ); SInitCDSData20(ADOQueryMain, CDS_HZ); end; end; procedure TfrmZdyAttachGYS.CoNameChange(Sender: TObject); begin ToolButton2.Click; end; procedure TfrmZdyAttachGYS.Tv2DblClick(Sender: TObject); begin if CDS_HZ.IsEmpty then exit; ModalResult := 1; end; procedure TfrmZdyAttachGYS.CheckBox2Click(Sender: TObject); begin if CheckBox2.Checked=True then begin CheckBox1.Checked:=False; end; InitGrid(); end; procedure TfrmZdyAttachGYS.CheckBox1Click(Sender: TObject); begin if CheckBox1.Checked=True then begin CheckBox2.Checked:=False; end; InitGrid(); end; end.