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; DEFstr5: TComboBox; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; v2Column2: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v2Column15: TcxGridDBColumn; v2Column3: TcxGridDBColumn; v2Column4: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v2Column9: TcxGridDBColumn; v2Column1: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; 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); private { Private declarations } procedure InitGrid(); public end; var frmZdyAttachGYS: TfrmZdyAttachGYS; implementation uses U_DataLink, U_RTFun, U_ZDYHelp; {$R *.dfm} procedure TfrmZdyAttachGYS.InitGrid(); begin try with ADOQueryTemp do begin Close; sql.Clear; SQL.Add('select * from SY_User where username=''' + Trim(DName) + ''''); open; end; if ADOQueryTemp.FieldByName('utype').Value = '业务员' then begin v2Column3.Visible := False; v2Column3.Hidden := True; v2Column4.Visible := False; v2Column4.Hidden := True; v2Column5.Visible := False; v2Column5.Hidden := True; v2Column9.Visible := False; v2Column9.Hidden := True; end else begin v2Column3.Visible := true; v2Column3.Hidden := false; v2Column4.Visible := true; v2Column4.Hidden := false; v2Column5.Visible := true; v2Column5.Hidden := false; v2Column9.Visible := true; v2Column9.Hidden := false; end; 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'' '); Open; end; SCreateCDS20(ADOQueryMain, CDS_HZ); SInitCDSData20(ADOQueryMain, CDS_HZ); finally ADOQueryMain.EnableControls; end; 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 if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS20(ADOQueryMain, CDS_HZ); SInitCDSData20(ADOQueryMain, CDS_HZ); end; end; procedure TfrmZdyAttachGYS.Tv2DblClick(Sender: TObject); begin if CDS_HZ.IsEmpty then exit; ModalResult := 1; end; end.