unit U_YGCXList; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxButtonEdit, cxDropDownEdit, cxPC, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL, cxTLData, cxLookAndFeels, cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, dxBarBuiltInMenu, cxNavigator; type TfrmYGCXList = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Order_Main: TClientDataSet; TBView: TToolButton; Panel1: TPanel; PopupMenu1: TPopupMenu; N2: TMenuItem; N1: TMenuItem; Label1: TLabel; YGName: TEdit; Label2: TLabel; YGSex: TComboBox; Label3: TLabel; ShenFenNo: TEdit; Label4: TLabel; YGType: TComboBox; Label5: TLabel; Edit1: TEdit; cxDBTreeList1: TcxDBTreeList; cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn; DataSource2: TDataSource; CDS_Tree: TClientDataSet; ADOQueryTree: TADOQuery; cxSplitter1: TcxSplitter; cxTabControl1: TcxTabControl; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1Column7: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column15: TcxGridDBColumn; v1Column16: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column18: TcxGridDBColumn; v1Column19: TcxGridDBColumn; v1Column20: TcxGridDBColumn; v1Column21: TcxGridDBColumn; v1Column22: TcxGridDBColumn; v1Column23: TcxGridDBColumn; v1Column24: TcxGridDBColumn; v1Column25: TcxGridDBColumn; v1Column26: TcxGridDBColumn; v1Column27: TcxGridDBColumn; v1Column28: TcxGridDBColumn; v1Column29: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; v1Column3: TcxGridDBColumn; TSel: TToolButton; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure TBViewClick(Sender: TObject); procedure CustomerNoNameChange(Sender: TObject); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure YGNameChange(Sender: TObject); procedure cxDBTreeList1DblClick(Sender: TObject); procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure TSelClick(Sender: TObject); private canshu1:string; DQdate:TDateTime; procedure InitGrid(); procedure InitForm(); function DelData():Boolean; procedure InitTree(); { Private declarations } public FFInt,FCloth:Integer; { Public declarations } end; var frmYGCXList: TfrmYGCXList; implementation uses U_DataLink,U_RTFun,U_ZDYHelp, U_YGInPut; {$R *.dfm} procedure TfrmYGCXList.FormDestroy(Sender: TObject); begin frmYGCXList:=nil; end; procedure TfrmYGCXList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmYGCXList.FormCreate(Sender: TObject); begin canshu1:=Trim(DParameters1); cxgrid1.Align:=alClient; end; procedure TfrmYGCXList.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('员工档案查询',Tv1,'OA管理'); end; procedure TfrmYGCXList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' exec P_View_YGList :DPID,:LiZhiFlag'); Parameters.ParamByName('DPID').Value:=Trim(CDS_Tree.fieldbyname('DPID').AsString); Parameters.ParamByName('LiZhiFlag').Value:=cxTabControl1.TabIndex; Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmYGCXList.InitTree(); var i:Integer; begin try ADOQueryTree.DisableControls; with ADOQueryTree do begin Close; SQL.Clear; SQL.Add('select * from SY_Dept order by DPlevel,DPOrder,DPName'); Open; end; SCreateCDS20(ADOQueryTree,CDS_Tree); SInitCDSData20(ADOQueryTree,CDS_Tree); cxDBTreeList1.Items[0].Expand(True); finally ADOQueryTree.EnableControls; end; end; procedure TfrmYGCXList.InitForm(); begin ReadCxGrid('员工档案查询',Tv1,'OA管理'); InitTree(); //InitGrid(); end; procedure TfrmYGCXList.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active=False then Exit; SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; function TfrmYGCXList.DelData():Boolean; begin try Result:=false; ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Delete OA_YG_DangAn where YGId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Delete OA_YG_DangAn_Other where YGId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Delete TP_File where WBId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+''''); sql.Add(' and TFType=''YG'' '); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; Result:=True; except ADOQueryCmd.Connection.RollbackTrans; Result:=False; Application.MessageBox('数据删除异常!','提示',0); end; end; procedure TfrmYGCXList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmYGCXList.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmYGCXList.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmYGCXList.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmYGCXList.TBViewClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; try frmYGInPut:=TfrmYGInPut.Create(Application); with frmYGInPut do begin PState:=1; FMainId:=Trim(Self.Order_Main.fieldbyname('YGId').AsString); TBSave.Visible:=False; ToolButton1.Visible:=False; ToolButton2.Visible:=False; if ShowModal=1 then begin end; end; finally frmYGInPut.Free; end; end; procedure TfrmYGCXList.CustomerNoNameChange(Sender: TObject); begin if ADOQueryMain.Active=False then Exit; SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; procedure TfrmYGCXList.N2Click(Sender: TObject); begin SelOKNo(Order_Main,True); end; procedure TfrmYGCXList.N1Click(Sender: TObject); begin SelOKNo(Order_Main,False); end; procedure TfrmYGCXList.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; procedure TfrmYGCXList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin TBView.Click; end; procedure TfrmYGCXList.YGNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmYGCXList.cxDBTreeList1DblClick(Sender: TObject); begin if FFInt<>100 then InitGrid(); end; procedure TfrmYGCXList.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin if Order_Main.IsEmpty then Exit; CDS_Tree.Locate('DPID',Trim(Order_Main.fieldbyname('DPID').AsString),[]); end; procedure TfrmYGCXList.TSelClick(Sender: TObject); begin Modalresult:=1; end; end.