unit U_YGYPZZChkList_NBYD; 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, ActnMan, ActnColorMaps, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,IniFiles; type TfrmYGYPZZChkList_NBYD = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; TBView: TToolButton; PopupMenu1: TPopupMenu; N2: TMenuItem; N1: TMenuItem; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; ADOQuery1: TADOQuery; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxStyle2: TcxStyle; ADOQuery2: TADOQuery; v1GSBiaoTi: TcxGridDBColumn; Panel1: TPanel; Label4: TLabel; GSBiaoTi: TEdit; ODPat: TOpenDialog; IdFTP1: TIdFTP; SaveDialog1: TSaveDialog; Label3: TLabel; Label2: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; v1filltime: TcxGridDBColumn; v1FBType: TcxGridDBColumn; v1ZDNote: TcxGridDBColumn; cxTabControl1: TcxTabControl; TFB: TToolButton; TCXFB: TToolButton; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBExportClick(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 Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure TFBClick(Sender: TObject); procedure TCXFBClick(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); private canshu1:string; DQdate:TDateTime; FDEPT,FDPName: string; lstPat: TStringList; procedure InitGrid(); procedure InitForm(); function DelData():Boolean; procedure setstatus(); procedure SaveData(); procedure ReadINIFile10(); { Private declarations } public FFInt,FCloth:Integer; { Public declarations } end; var frmYGYPZZChkList_NBYD: TfrmYGYPZZChkList_NBYD; implementation uses U_DataLink,U_RTFun,U_ZDYHelp, U_YGYPInPut, U_ZDYHelpSel,U_YGYPInPut_YGFJDJ,U_YGYPInPut_GBLDJ; {$R *.dfm} procedure TfrmYGYPZZChkList_NBYD.setstatus(); begin TBADD.Visible:=False; TUpdate.Visible:=False; TDel.Visible:=False; TFB.Visible:=False; TCXFB.Visible:=False; case cxTabControl1.TabIndex of 0:begin TBADD.Visible:=true; TUpdate.Visible:=true; TDel.Visible:=true; TFB.Visible:=true; end; 1:begin TCXFB.Visible:=true; end; 2:begin end; 3:begin end; end; end; procedure TfrmYGYPZZChkList_NBYD.SaveData(); var maxno:String; begin if GetLSNo(ADOQueryTemp,maxno,'ZD','OA_YG_GSGZZD',4,1)=False then begin Application.MessageBox('取最大号失败!','提示',0); Exit; end; with ADOQueryTemp do begin Close; sql.Clear; SQL.Add('select * from OA_YG_GSGZZD where ZDID='''+Trim(maxno)+''''); Open; if isempty then begin append; fieldbyname('filler').AsString:=trim(DName); fieldbyname('filltime').AsDateTime:=SGetServerDate(ADOQuery2); fieldbyname('ZDID').Value:=trim(maxno); fieldbyname('DeptType').Value:=trim(FDPName); fieldbyname('GSBiaoTi').Value:=trim(Order_Main.fieldbyname('GSBiaoTi').AsString); post; end; end; end; procedure TfrmYGYPZZChkList_NBYD.FormDestroy(Sender: TObject); begin frmYGYPZZChkList_GBLYD:=nil; end; procedure TfrmYGYPZZChkList_NBYD.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmYGYPZZChkList_NBYD.FormCreate(Sender: TObject); begin canshu1:=Trim(DParameters1); end; procedure TfrmYGYPZZChkList_NBYD.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('公司内部列表',Tv1,'OA管理'); end; procedure TfrmYGYPZZChkList_NBYD.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; sql.Clear; sql.Add('select * '); sql.Add(' from OA_YG_GSGZZD '); sql.Add(' where FBStatus=''申请通过'' '); if cxTabControl1.TabIndex<>0 then begin sql.add(' and filltime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+''''); sql.Add(' and filltime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+''''); end; if cxTabControl1.TabIndex=0 then sql.add(' and isnull(YDStatus,'''')='''''); if cxTabControl1.TabIndex=1 then sql.add(' and isnull(YDStatus,'''')=''已阅读'''); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmYGYPZZChkList_NBYD.InitForm(); begin ReadCxGrid('公司内部列表',Tv1,'OA管理'); setstatus(); EndDate.Date:=SGetServerDate(ADOQueryTemp); BegDate.Date:=EndDate.Date-7; if trim(CanShu1)='查询' then begin TBADD.Visible:=False; TUpdate.Visible:=false; TDel.Visible:=False; end else begin TBADD.Visible:=true; TUpdate.Visible:=true; TDel.Visible:=true; end; InitGrid(); end; procedure TfrmYGYPZZChkList_NBYD.TBFindClick(Sender: TObject); begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; function TfrmYGYPZZChkList_NBYD.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 TfrmYGYPZZChkList_NBYD.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; TcxGridToExcel('公司规章制度列表',cxGrid1); end; procedure TfrmYGYPZZChkList_NBYD.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmYGYPZZChkList_NBYD.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmYGYPZZChkList_NBYD.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmYGYPZZChkList_NBYD.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmYGYPZZChkList_NBYD.TBViewClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; frmYGYPInPut_GBLDJ:=TfrmYGYPInPut_GBLDJ.create(self); with frmYGYPInPut_GBLDJ do begin ToolBar1.Visible:=False; FCLID:=trim(Order_Main.fieldbyname('ZDID').AsString); if showModal=1 then begin end; free; end; end; procedure TfrmYGYPZZChkList_NBYD.CustomerNoNameChange(Sender: TObject); begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; procedure TfrmYGYPZZChkList_NBYD.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin TBView.Click; end; procedure TfrmYGYPZZChkList_NBYD.N2Click(Sender: TObject); begin SelOKNo(Order_Main,True); end; procedure TfrmYGYPZZChkList_NBYD.N1Click(Sender: TObject); begin SelOKNo(Order_Main,False); end; procedure TfrmYGYPZZChkList_NBYD.ReadINIFile10(); var programIni:Tinifile; //配置文件名 FileName:string; begin FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI'; programIni:=Tinifile.create(FileName); server:=programIni.ReadString('SERVER','服务器地址','127.0.0.1'); programIni.Free; end; procedure TfrmYGYPZZChkList_NBYD.TFBClick(Sender: TObject); begin if order_Main.IsEmpty then exit; if application.MessageBox('是否执行此操作','提示',1)=2 then exit; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('update OA_YG_GSGZZD set YDStatus=''已阅读'' '); sql.Add('where ZDID='''+trim(Order_Main.fieldbyname('ZDID').asstring)+''' '); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('update OA_YG_DangAn set YDID='''' '); sql.Add('where isnull(YGEName,YGName)='''+trim(DName)+''' '); ExecSQL; end; InitGrid(); end; procedure TfrmYGYPZZChkList_NBYD.TCXFBClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; if Application.MessageBox('确定要执行撤销操作吗?','提示',32+4)<>IDYES then Exit; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('Update OA_YG_GSGZZD Set YDStatus='''' '); sql.Add(' where ZDID='''+trim(Order_Main.fieldbyname('ZDID').AsString)+''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('update OA_YG_DangAn set isnull(YDID,'''')=''1'' '); sql.Add('where isnull(YGEName,YGName)='''+trim(DName)+''' '); ExecSQL; end; initGrid(); end; procedure TfrmYGYPZZChkList_NBYD.cxTabControl1Change(Sender: TObject); begin setStatus(); initGrid(); end; end.