unit U_YSMXlistMonDayDZ; 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, cxDropDownEdit, RM_e_Xls, BtnEdit, cxPC, Menus; type TfrmYSMXlistMonDayDZ = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBClose: TToolButton; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; Panel1: TPanel; ADOQueryMain: TADOQuery; ToolButton1: TToolButton; RM1: TRMGridReport; RMDB_Main: TRMDBDataSet; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxCRTime: TcxGridDBColumn; cxMoneyYe: TcxGridDBColumn; cxQty: TcxGridDBColumn; cxQtyUnit: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; cxGridPopupMenu2: TcxGridPopupMenu; DS_HZ: TDataSource; CDS_HZ: TClientDataSet; v2Price: TcxGridDBColumn; VMoney: TcxGridDBColumn; v2BBMoney: TcxGridDBColumn; v2MPRTCodeName: TcxGridDBColumn; Label4: TLabel; OrdDefNote3: TComboBox; ToolButton3: TToolButton; RMXLSExport1: TRMXLSExport; v2gangNo: TcxGridDBColumn; v2Column1: TcxGridDBColumn; v2note: TcxGridDBColumn; Panetime: TPanel; v2Column2: TcxGridDBColumn; cxTabControl1: TcxTabControl; v2Column4: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v2Column7: TcxGridDBColumn; v2Column3: TcxGridDBColumn; Panel2: TPanel; Label2: TLabel; begdate: TDateTimePicker; Panel3: TPanel; Label1: TLabel; Label3: TLabel; FBegDate: TDateTimePicker; FEndDate: TDateTimePicker; Panel4: TPanel; Label5: TLabel; factoryName: TBtnEditA; RadioGroup1: TRadioGroup; LabBZ: TLabel; PopupMenu1: TPopupMenu; N6: TMenuItem; N7: TMenuItem; N4: TMenuItem; N5: TMenuItem; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; N8: TMenuItem; N9: TMenuItem; v2Column8: TcxGridDBColumn; Panel5: TPanel; Label15: TLabel; Label16: TLabel; Panel6: TPanel; Label8: TLabel; Label9: TLabel; LabGYS: TLabel; Panel7: TPanel; v2Column9: TcxGridDBColumn; v2Column10: TcxGridDBColumn; v2Column11: TcxGridDBColumn; Panel8: TPanel; GroupBox2: TGroupBox; Label11: TLabel; Label12: TLabel; Label13: TLabel; FKMoneyHZ: TEdit; FKMoneyYSH: TEdit; FKMoneyWSH: TEdit; GroupBox1: TGroupBox; Label6: TLabel; Label7: TLabel; Label10: TLabel; YFMoneyHZ: TEdit; YFMoneyYSH: TEdit; YFMoneyWSH: TEdit; Panel9: TPanel; ToolButton2: TToolButton; GroupBox3: TGroupBox; Label17: TLabel; SQMoney: TEdit; Label14: TLabel; BQMoney: TEdit; GroupBox4: TGroupBox; Label19: TLabel; Label20: TLabel; Label21: TLabel; YFMoneyYear: TEdit; HZMoney: TEdit; QKXS: TEdit; Label18: TLabel; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure factoryNameBtnClick(Sender: TObject); procedure v2Column3PropertiesEditValueChanged(Sender: TObject); procedure v2Column3CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure ToFactoryNameChange(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure N7Click(Sender: TObject); procedure N4Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure cxQtyPropertiesEditValueChanged(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure Tv2StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); procedure N3Click(Sender: TObject); procedure N8Click(Sender: TObject); procedure N9Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); private { Private declarations } FFEndDate,FFBegDate:TDateTime; procedure InitGrid(); public { Public declarations } RKFlag,FCYID:String; fType,FMX,FBZ:string; PState:Integer; end; var frmYSMXlistMonDayDZ: TfrmYSMXlistMonDayDZ; implementation uses U_DataLink,U_Fun,U_ZDYHelp,U_RTFun,U_ZdyAttachGYS, U_KHListSelJJ,U_KHSKInPut,U_KHSKListView; {$R *.dfm} procedure TfrmYSMXlistMonDayDZ.InitGrid(); var FYue,FDate:string; FInt:Integer; begin FInt:=cxTabControl1.TabIndex+1; FYue:=Trim(IntToStr(FInt)); if FInt<10 then begin FYue:='0'+Trim(IntToStr(FInt)); end; FDate:=Trim(FormatDateTime('yyyy',begdate.Date))+'-'+FYue; if FMX='' then begin FBegDate.Date:=StrToDate(FDate+'-01'); if FInt=12 then FEndDate.Date:=StrToDate(Trim(FormatDateTime('yyyy',begdate.Date))+'-12-31') else FEndDate.Date:=StrToDate(Trim(FormatDateTime('yyyy',begdate.Date))+'-'+Trim(IntToStr(FInt+1))+'-01')-1; IF trim(factoryName.Text)='' then begin //application.MessageBox('请选择供应商!','提示信息',MB_ICONERROR); exit; end; end; screen.Cursor:=crsqlwait; Panetime.Visible:=true; Panetime.Left:=(Width-Panetime.Width) div 2; Panetime.top:=(Height-Panetime.Height-200) div 2; application.ProcessMessages; with ADOQueryTemp do begin Close; sql.Clear; if RadioGroup1.ItemIndex=0 then begin sql.Add('exec P_YSSK_Month_BZ_HJ :FDate,:BZ,:HuiLv,:factoryNo'); Parameters.ParamByName('FDate').Value:=Trim(FDate); Parameters.ParamByName('factoryNo').Value:=Trim(factoryName.TxtCode); Parameters.ParamByName('BZ').Value:=Trim(FBZ); Parameters.ParamByName('HuiLv').Value:=1; end else if RadioGroup1.ItemIndex=1 then begin sql.Add('exec P_YSSK_Day_BZ_HJ :FBegDate,:FEndDate,:BZ,:HuiLv,:factoryNo'); Parameters.ParamByName('FBegdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FBegDate.Date)); Parameters.ParamByName('FEndDate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FEndDate.Date+1)); Parameters.ParamByName('factoryNo').Value:=Trim(factoryName.TxtCode); Parameters.ParamByName('BZ').Value:=Trim(FBZ); Parameters.ParamByName('HuiLv').Value:=1; end; Open; end; SCSHDataNew(ADOQueryTemp,GroupBox1,2); SCSHDataNew(ADOQueryTemp,GroupBox2,2); SCSHDataNew(ADOQueryTemp,GroupBox3,2); SCSHDataNew(ADOQueryTemp,GroupBox4,2); //LabGYS.Caption:=Trim(factoryName.Text)+'→总应收款:'+Trim(ADOQueryTemp.fieldbyname('HZMoney').AsString); //YFMoneyYear.Caption:='年销售额:'+Trim(ADOQueryTemp.fieldbyname('YFMoneyYear').AsString) // +' 欠款系数:'+Trim(ADOQueryTemp.fieldbyname('QKXS').AsString)+'%'; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; SQL.Clear; if RadioGroup1.ItemIndex=0 then begin sql.Add(' exec P_Qry_YSk_Month :FDate,:factoryNo,:BZ'); Parameters.ParamByName('FDate').Value:=Trim(FDate); Parameters.ParamByName('factoryNo').Value:=Trim(factoryName.TxtCode); Parameters.ParamByName('BZ').Value:=Trim(FBZ); end else if RadioGroup1.ItemIndex=1 then begin sql.Add(' exec P_Qry_YSk_Day :FBegDate,:FEndDate,:factoryNo,:BZ'); Parameters.ParamByName('FBegdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FBegDate.Date)); Parameters.ParamByName('FEndDate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FEndDate.Date+1)); Parameters.ParamByName('factoryNo').Value:=Trim(factoryName.TxtCode); Parameters.ParamByName('BZ').Value:=Trim(FBZ); end; Open; end; SCreateCDS20(ADOQueryMain,CDS_HZ); SInitCDSData20(ADOQueryMain,CDS_HZ); finally ADOQueryMain.EnableControls; Panetime.Visible:=false; screen.Cursor:=crdefault; end; end; procedure TfrmYSMXlistMonDayDZ.FormDestroy(Sender: TObject); begin frmYSMXlistMonDayDZ:=nil; end; procedure TfrmYSMXlistMonDayDZ.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmYSMXlistMonDayDZ.TBCloseClick(Sender: TObject); begin WriteCxGrid('应收款对账单YX11',Tv2,'财务管理'); Close; end; procedure TfrmYSMXlistMonDayDZ.FormShow(Sender: TObject); var fstr:string; begin ReadCxGrid('应收款对账单YX11',Tv2,'财务管理'); LabBZ.Caption:=Trim(FBZ); if Trim(FMX)='' then begin begdate.DateTime:=SGetServerDateMBeg(ADOQueryTemp); fstr:=Trim(FormatDateTime('MM',begdate.Date)); cxTabControl1.TabIndex:=StrToInt(fstr)-1; Panel3.Visible:=False; end else begin RadioGroup1.ItemIndex:=PState; if RadioGroup1.ItemIndex=0 then begin Panel2.Visible:=True; Panel3.Visible:=False; cxTabControl1.Visible:=True; end else if RadioGroup1.ItemIndex=1 then begin Panel2.Visible:=False; Panel3.Visible:=True; cxTabControl1.Visible:=False; end; InitGrid(); end; end; procedure TfrmYSMXlistMonDayDZ.TBRafreshClick(Sender: TObject); begin ToolBar1.SetFocus; InitGrid(); end; procedure TfrmYSMXlistMonDayDZ.ToolButton1Click(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; SelExportData(Tv2,ADOQueryMain,self.Caption); end; procedure TfrmYSMXlistMonDayDZ.FormCreate(Sender: TObject); begin cxGrid2.Align:=AlClient; end; procedure TfrmYSMXlistMonDayDZ.ToolButton3Click(Sender: TObject); var filepath,fsj:string; mBegdate,mEnddate:string; begin fsj:=cxTabControl1.Tabs[cxTabControl1.TabIndex].Caption; mbegdate:=FormatDateTime('yyyy',begdate.Date)+'年'+Trim(Copy(fsj,3,Length(fsj)-2))+'份'; if CDS_HZ.IsEmpty then exit; try filepath:=ExtractFilePath(Application.ExeName) + 'report\应收款对账单YX.rmf'; if not FileExists(Pchar(filepath)) then begin application.MessageBox(pchar('文件['+filepath+']不存在!'),'提示信息',MB_IConError); exit; end; RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); RMVariables['zdr'] :=trim(DName); RmVariables['begDate'] :=mbegdate; RmVariables['endNum'] :=CDS_HZ.fieldbyname('MoneyYe').AsString; RM1.LoadFromFile(filepath); RM1.ShowReport; finally end; end; procedure TfrmYSMXlistMonDayDZ.factoryNameBtnClick(Sender: TObject); begin try frmKHListSelJJ:=TfrmKHListSelJJ.Create(Application); with frmKHListSelJJ do begin frmKHListSelJJ.canshu2:='高权限'; if ShowModal=1 then begin Self.factoryName.Text:=Trim(frmKHListSelJJ.CDS_HZ.fieldbyname('KHNameJC').AsString); Self.factoryName.TxtCode:=Trim(frmKHListSelJJ.CDS_HZ.fieldbyname('KHNO').AsString); end; end; finally frmKHListSelJJ.Free; end; begdate.SetFocus; InitGrid(); end; procedure TfrmYSMXlistMonDayDZ.v2Column3PropertiesEditValueChanged( Sender: TObject); var mvalue:Boolean; begin mvalue:=TcxCheckBox(Sender).EditValue; with CDS_HZ do begin Edit; FieldByName('DZFlag').Value:=mvalue; end; if mvalue=True then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update YF_Money_CR Set DZFlag=1,DZTime=getdate(),DZPerson='''+Trim(DName)+''''); sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); ExecSQL; end; end else begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update YF_Money_CR Set DZFlag=0,DZTime=getdate(),DZPerson='''+Trim(DName)+''''); sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); ExecSQL; end; end; end; procedure TfrmYSMXlistMonDayDZ.v2Column3CustomDrawCell( Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); var id:Integer; begin Id:=TV2.GetColumnByFieldName('DZFlag').Index;//;-TV1.GroupedItemCount; if Id<0 then Exit; if AViewInfo.GridRecord.Values[Id]=True then begin ACanvas.Brush.Color:=clRed; end; end; procedure TfrmYSMXlistMonDayDZ.ToFactoryNameChange(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 TfrmYSMXlistMonDayDZ.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; procedure TfrmYSMXlistMonDayDZ.RadioGroup1Click(Sender: TObject); begin if RadioGroup1.ItemIndex=0 then begin Panel2.Visible:=True; Panel3.Visible:=False; cxTabControl1.Visible:=True; end else if RadioGroup1.ItemIndex=1 then begin Panel2.Visible:=False; Panel3.Visible:=True; cxTabControl1.Visible:=False; end; InitGrid(); end; procedure TfrmYSMXlistMonDayDZ.N6Click(Sender: TObject); begin SelOKNo(CDS_HZ,True); end; procedure TfrmYSMXlistMonDayDZ.N7Click(Sender: TObject); begin SelOKNo(CDS_HZ,False); end; procedure TfrmYSMXlistMonDayDZ.N4Click(Sender: TObject); var FDate:TDateTime; begin if CDS_HZ.IsEmpty then Exit; if CDS_HZ.Locate('SSel',True,[])=False then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; ToolBar1.SetFocus; try Panel2.Visible:=True; Panel2.Refresh; FDate:=SGetServerDateTime(ADOQueryTemp); ADOQueryCmd.Connection.BeginTrans; CDS_HZ.DisableControls; with CDS_HZ do begin First; while CDS_HZ.Locate('SSel',True,[]) do begin if Trim(CDS_HZ.fieldbyname('ChkStatusP').AsString)<>'已审核' then begin if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); Open; end; with ADOQueryCmd do begin Edit; FieldByName('ChkerP').Value:=Trim(DName); FieldByName('ChkTimeP').Value:=FDate; FieldByName('ChkStatusP').Value:='已审核'; FieldByName('ChkerQ').Value:=Trim(DName); FieldByName('ChkTimeQ').Value:=FDate; FieldByName('ChkStatusQ').Value:='已审核'; if Trim(CDS_HZ.fieldbyname('CRType').AsString)='应收款登记' then begin FieldByName('Money').Value:=CDS_HZ.fieldbyname('YFMoney').Value; RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'YS_Money_CR',7); end; Post; end; if Trim(CDS_HZ.fieldbyname('CRType').AsString)='应收款登记' then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update YS_Money_CR Set '); sql.Add('HSMoney=Money'); sql.Add(',JSMoney=Money'); sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); ExecSQL; end; end; with CDS_HZ do begin Edit; FieldByName('ChkStatusP').Value:='已审核'; FieldByName('SSel').Value:=False; Post; end; end else begin with CDS_HZ do begin Edit; FieldByName('SSel').Value:=False; Post; end; end; end else begin with CDS_HZ do begin Edit; FieldByName('SSel').Value:=False; Post; end; end; end; end; CDS_HZ.EnableControls; ADOQueryCmd.Connection.CommitTrans; TBRafresh.Click; Panel2.Visible:=False; except Panel2.Visible:=False; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('操作失败!','提示',0); end; end; procedure TfrmYSMXlistMonDayDZ.N5Click(Sender: TObject); begin if CDS_HZ.IsEmpty then Exit; if CDS_HZ.Locate('SSel',True,[])=False then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; ToolBar1.SetFocus; try Panel2.Visible:=True; Panel2.Refresh; ADOQueryCmd.Connection.BeginTrans; CDS_HZ.DisableControls; with CDS_HZ do begin First; while CDS_HZ.Locate('SSel',True,[]) do begin if Trim(CDS_HZ.fieldbyname('ChkStatusP').AsString)<>'未审核' then begin if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); Open; end; with ADOQueryCmd do begin Edit; FieldByName('ChkerP').Value:=Null; FieldByName('ChkTimeP').Value:=Null; FieldByName('ChkStatusP').Value:='未审核'; FieldByName('ChkerQ').Value:=Null; FieldByName('ChkTimeQ').Value:=Null; FieldByName('ChkStatusQ').Value:='未审核'; Post; end; {with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update YS_Money_CR Set '); sql.Add('HSMoney=Null'); sql.Add(',JSMoney=Null'); sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); ExecSQL; end;} with CDS_HZ do begin Edit; FieldByName('ChkStatusP').Value:='未审核'; { FieldByName('ChkerP').Value:=Null; FieldByName('ChkTimeP').Value:=Null; FieldByName('ChkStatusQ').Value:='未审核'; FieldByName('ChkerQ').Value:=Null; FieldByName('ChkTimeQ').Value:=Null;} FieldByName('SSel').Value:=False; Post; end; end else begin with CDS_HZ do begin Edit; FieldByName('SSel').Value:=False; Post; end; end; end else begin with CDS_HZ do begin Edit; FieldByName('SSel').Value:=False; Post; end; end; end; end; CDS_HZ.EnableControls; ADOQueryCmd.Connection.CommitTrans; TBRafresh.Click; Panel2.Visible:=False; except Panel2.Visible:=False; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('操作失败!','提示',0); end; end; procedure TfrmYSMXlistMonDayDZ.cxQtyPropertiesEditValueChanged( Sender: TObject); var mvalue,FQty,FPrice,FMoney,FShuiDian,FHSPrice,FHSMoney,FJSMoney,FHZFee,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_HZ do begin Edit; if Trim(mvalue)<>'' then FieldByName(FFieldName).Value:=Trim(mvalue) else FieldByName(FFieldName).Value:=Null; Post; end; FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); if Trim(FQty)='' then FQty:='0'; FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); if Trim(FPrice)='' then FPrice:='0'; FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); if Trim(FQty)='' then FQty:='0'; FHZFee:=Trim(CDS_HZ.fieldbyname('HZFee').AsString); if Trim(FHZFee)='' then FHZFee:='0'; FMoney:=Trim(CDS_HZ.fieldbyname('YFMoney').AsString); if Trim(FMoney)='' then FMoney:='0'; if Trim(FFieldName)<>'YFMoney' then begin FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)+StrToFloat(FHZFee)); end; with CDS_HZ do begin Edit; FieldByName('YFMoney').Value:=StrToFloat(FMoney); Post; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmYSMXlistMonDayDZ.N1Click(Sender: TObject); var FDate:TDateTime; DWYFID:String; begin if CDS_HZ.IsEmpty then Exit; if Trim(CDS_HZ.fieldbyname('YFID').AsString)='' then Exit; ToolBar1.SetFocus; DWYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); try FDate:=SGetServerDateTime(ADOQueryTemp); ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); Open; end; with ADOQueryCmd do begin Edit; FieldByName('ChkerP').Value:=Trim(DName); FieldByName('ChkTimeP').Value:=FDate; FieldByName('ChkStatusP').Value:='已审核'; FieldByName('ChkerQ').Value:=Trim(DName); FieldByName('ChkTimeQ').Value:=FDate; FieldByName('ChkStatusQ').Value:='已审核'; if Trim(CDS_HZ.fieldbyname('CRType').AsString)='应收款登记' then begin FieldByName('Money').Value:=CDS_HZ.fieldbyname('YFMoney').Value; RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'YS_Money_CR',7); end; Post; end; if Trim(CDS_HZ.fieldbyname('CRType').AsString)='应收款登记' then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update YS_Money_CR Set '); sql.Add('HSMoney=Money'); sql.Add(',JSMoney=Money'); sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); ExecSQL; end; end; with CDS_HZ do begin Edit; FieldByName('ChkStatusP').Value:='已审核'; Post; end; ADOQueryCmd.Connection.CommitTrans; TBRafresh.Click; CDS_HZ.Locate('YFID',DWYFID,[]); except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('操作失败!','提示',0); end; end; procedure TfrmYSMXlistMonDayDZ.N2Click(Sender: TObject); var DWYFID:string; begin if CDS_HZ.IsEmpty then Exit; if Trim(CDS_HZ.fieldbyname('YFID').AsString)='' then Exit; ToolBar1.SetFocus; DWYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); try ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); Open; end; with ADOQueryCmd do begin Edit; FieldByName('ChkerP').Value:=Null; FieldByName('ChkTimeP').Value:=Null; FieldByName('ChkStatusP').Value:='未审核'; FieldByName('ChkerQ').Value:=Null; FieldByName('ChkTimeQ').Value:=Null; FieldByName('ChkStatusQ').Value:='未审核'; Post; end; with CDS_HZ do begin Edit; FieldByName('ChkStatusP').Value:='未审核'; {FieldByName('ChkStatusQ').Value:='未审核'; FieldByName('ChkerQ').Value:=Null; FieldByName('ChkTimeQ').Value:=Null; FieldByName('ChkerP').Value:=Null; FieldByName('ChkTimeP').Value:=Null;} Post; end; ADOQueryCmd.Connection.CommitTrans; TBRafresh.Click; CDS_HZ.Locate('YFID',DWYFID,[]); except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('操作失败!','提示',0); end; end; procedure TfrmYSMXlistMonDayDZ.Tv2StylesGetContentStyle( Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); var id:Integer; begin Id:=Tv2.GetColumnByFieldName('ChkStatusP').Index; if ARecord.Values[id]='已审核' then exit; AStyle:=DataLink_Money.SkyBlue; end; procedure TfrmYSMXlistMonDayDZ.N3Click(Sender: TObject); var DWYFID:string; begin try frmKHSKInPut:=TfrmKHSKInPut.Create(Application); with frmKHSKInPut do begin FMainId:=''; frmKHSKInPut.FactoryName.Text:=Self.factoryName.Text; frmKHSKInPut.FactoryName.TxtCode:=Self.factoryName.TxtCode; frmKHSKInPut.BZType.ItemIndex:=frmKHSKInPut.BZType.Items.IndexOf(Self.LabBZ.Caption); if ShowModal=1 then begin DWYFID:=Trim(frmKHSKInPut.FMainId); Self.TBRafresh.Click; Self.CDS_HZ.Locate('YFID',DWYFID,[]); end; end; finally frmKHSKInPut.Free; end; end; procedure TfrmYSMXlistMonDayDZ.N8Click(Sender: TObject); var DWYFID:string; begin if Trim(CDS_HZ.fieldbyname('CRType').AsString)<>'收款登记' then Exit; DWYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(DWYFID)+''' and isnull(ChkerP,'''')<>'''' '); Open; end; if ADOQueryTemp.IsEmpty=False then begin Application.MessageBox('数据已审核不能修改!','提示',0); Exit; end; try frmKHSKInPut:=TfrmKHSKInPut.Create(Application); with frmKHSKInPut do begin FMainId:=Trim(Self.CDS_HZ.fieldbyname('YFID').AsString); if ShowModal=1 then begin Self.TBRafresh.Click; Self.CDS_HZ.Locate('YFID',DWYFID,[]); end; end; finally frmKHSKInPut.Free; end; end; procedure TfrmYSMXlistMonDayDZ.N9Click(Sender: TObject); begin if CDS_HZ.IsEmpty then Exit; if Trim(CDS_HZ.fieldbyname('CRType').AsString)<>'收款登记' then Exit; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(Self.CDS_HZ.fieldbyname('YFID').AsString)+''' and isnull(ChkerP,'''')<>'''' '); Open; end; if ADOQueryTemp.IsEmpty=False then begin Application.MessageBox('数据已审核不能删除!','提示',0); Exit; end; if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; try ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin close; sql.Clear; sql.Add(' insert into YS_Money_CR_DelLog '); sql.Add(' select * from YS_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); sql.Add(' Update YS_Money_CR_DelLog Set DelTime=getdate(),DelPerson='''+Trim(DName)+''''); sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); sql.Add(' delete YS_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); execsql; end; ADOQueryCmd.Connection.CommitTrans; CDS_HZ.Delete; TBRafresh.Click; except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('删除失败!','提示',0); end; end; procedure TfrmYSMXlistMonDayDZ.ToolButton2Click(Sender: TObject); var FName,FDate,FYue:string; FInt:Integer; begin if CDS_HZ.IsEmpty then Exit; // if Trim(FName)='FKMoney' then begin if RadioGroup1.ItemIndex=0 then begin FInt:=cxTabControl1.TabIndex+1; FYue:=Trim(IntToStr(FInt)); if FInt<10 then begin FYue:='0'+Trim(IntToStr(FInt)); end; FDate:=Trim(FormatDateTime('yyyy',begdate.Date))+'-'+FYue; FFBegDate:=StrToDate(FDate+'-01'); if FInt=12 then FFEndDate:=StrToDate(Trim(FormatDateTime('yyyy',begdate.Date))+'-12-31') else FFEndDate:=StrToDate(Trim(FormatDateTime('yyyy',begdate.Date))+'-'+Trim(IntToStr(FInt+1))+'-01')-1; end else if RadioGroup1.ItemIndex=1 then begin FFBegDate:=FBegDate.Date; FFEndDate:=FEndDate.Date; end; try frmKHSKListView:=TfrmKHSKListView.Create(Application); with frmKHSKListView do begin FKHNO:=Trim(factoryName.TxtCode); frmKHSKListView.begdate.Date:=Self.FFBegDate; frmKHSKListView.Enddate.Date:=Self.FFEndDate; FactoryNameHZ.Text:=Trim(factoryName.Text); if ShowModal=1 then begin end; end; finally frmKHSKListView.Free; end; end; end; end.