unit U_SKCR_SH; 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, cxPC, Menus; type TfrmSKCR_SH = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBDel: TToolButton; TBClose: TToolButton; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; Panel1: TPanel; ToolButton2: TToolButton; Label1: TLabel; YFName: TEdit; ADOQueryMain: TADOQuery; ToolButton1: TToolButton; RM1: TRMGridReport; RMDB_Main: TRMDBDataSet; Label3: TLabel; FactoryName: TEdit; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; cxGridDBColumn3: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; Label2: TLabel; begdate: TDateTimePicker; Enddate: TDateTimePicker; cxGridPopupMenu2: TcxGridPopupMenu; DS_HZ: TDataSource; CDS_HZ: TClientDataSet; ToolButton3: TToolButton; VBZ: TcxGridDBColumn; VYB: TcxGridDBColumn; v2Column6: TcxGridDBColumn; Label4: TLabel; Money: TEdit; v2Column1: TcxGridDBColumn; v2DerateMoney: TcxGridDBColumn; tchk: TToolButton; tnochk: TToolButton; cxTabControl1: TcxTabControl; v2Ssel: TcxGridDBColumn; v2ComTaitou: TcxGridDBColumn; nochk: TToolButton; TSD: TToolButton; v2IFSD: TcxGridDBColumn; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; Label10: TLabel; Label12: TLabel; ChkNote: TEdit; Label17: TLabel; CheckBox1: TCheckBox; v2KHDKMoney: TcxGridDBColumn; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; Label5: TLabel; note: TEdit; v2IFKP: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBDelClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure FactoryNameChange(Sender: TObject); procedure Button2Click(Sender: TObject); procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton1Click(Sender: TObject); procedure v2Column4PropertiesEditValueChanged(Sender: TObject); procedure v2Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure VBBPropertiesEditValueChanged(Sender: TObject); procedure MoneyChange(Sender: TObject); procedure v2Column1PropertiesEditValueChanged(Sender: TObject); procedure v2DerateMoneyPropertiesEditValueChanged(Sender: TObject); procedure tchkClick(Sender: TObject); procedure tnochkClick(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure nochkClick(Sender: TObject); procedure TSDClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure v2SselPropertiesChange(Sender: TObject); procedure CheckBox1Click(Sender: TObject); private { Private declarations } procedure InitGridHZ(); procedure InitGrid(); function SaveData():Boolean; Procedure SetStatus(); public fflag:integer; { Public declarations } RKFlag,FCYID,fmanage:String; end; var frmSKCR_SH: TfrmSKCR_SH; implementation uses U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList, U_ZdyAttachment, U_ProductOrderListSel, U_FjList10; {$R *.dfm} Procedure TfrmSKCR_SH.SetStatus(); var i:integer; begin Tchk.Enabled:=false; TNochk.Enabled:=false; //TBDel.Enabled:=false; // Ttj.Enabled:=false; // TnoTj.Enabled:=false; for i:=0 to tv2.ColumnCount-1 do begin IF uppercase(tv2.Columns[i].DataBinding.FieldName)<>'SSEL' then tv2.Columns[i].Options.Editing:=false; end; IF fmanage='高权限' then begin if cxTabControl1.TabIndex=0 then begin Tchk.Enabled:=true; //TBDel.Enabled:=true; for i:=1 to tv2.ColumnCount-1 do begin tv2.Columns[i].Options.Editing:=true; end; end; if cxTabControl1.TabIndex=1 then begin TNochk.Enabled:=true; end; end else begin if cxTabControl1.TabIndex=0 then begin //Tchk.Enabled:=false; TBDel.Enabled:=true; for i:=1 to tv2.ColumnCount-1 do begin tv2.Columns[i].Options.Editing:=true; end; end; if cxTabControl1.TabIndex=1 then begin end; end; end; procedure TfrmSKCR_SH.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; SQL.Clear; sql.Add(' select A.*, '); sql.add('IFSD=cast((case when isnull((select T.TFID from TP_File T where T.WBID=A.YFID and T.TFType=''SD''),'''')='''' then 0 else 1 end) as bit)'); sql.Add(' from YF_Money_CR A'); sql.Add(' left join YF_Money_KC B on A.CRID=B.CRID'); // SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); sql.Add('where A.CRTime>='''+FormatDateTime('yyyy-MM-dd',begdate.DateTime)+''' '); sql.Add(' and CRTime<'''+FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)+''' '); sql.Add(' and A.CRType=''收款登记'' and A.YFDefFlag1='''+inttostr(fflag)+''' '); IF cxTabControl1.TabIndex=0 then sql.Add(' and A.status=''1'' '); IF cxTabControl1.TabIndex=1 then sql.Add(' and A.status=''2'' '); IF cxTabControl1.TabIndex=2 then sql.Add(' and ( A.status=''1'' or A.status=''2'' ) '); if Money.Text<>'' then begin sql.add('and A.Money like '''+'%'+trim(Money.Text)+'%'+''''); end; Open; end; SCreateCDS20(ADOQueryMain,CDS_HZ); SInitCDSData20(ADOQueryMain,CDS_HZ); Label12.Caption:='0'; finally ADOQueryMain.EnableControls; //ToolButton2.Click; end; end; procedure TfrmSKCR_SH.InitGridHZ(); begin end; procedure TfrmSKCR_SH.FormDestroy(Sender: TObject); begin frmSKCR_SH:=nil; end; procedure TfrmSKCR_SH.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmSKCR_SH.TBCloseClick(Sender: TObject); begin WriteCxGrid('收款登记1',Tv2,'财务管理'); {with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); ExecSQL; end;} Close; end; procedure TfrmSKCR_SH.TBDelClick(Sender: TObject); var FBBMoney,CRID:string; begin if CDS_HZ.IsEmpty then Exit; if CDS_HZ.Locate('ssel',true,[])=false then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; try ADOQueryCmd.Connection.BeginTrans; with CDS_HZ do begin DisableControls; First; while not eof do begin IF Fieldbyname('ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); execsql; end; end; next; end; First; EnableControls; end; InitGrid(); ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; application.MessageBox('操作失败!','提示信息',0); end; end; procedure TfrmSKCR_SH.FormShow(Sender: TObject); begin fflag:=0; ReadCxGrid('收款登记',Tv2,'财务管理'); Enddate.DateTime:=SGetServerDate(ADOQueryTemp); begdate.DateTime:=SGetServerDate(ADOQueryTemp)-7; SetStatus(); InitGrid(); end; procedure TfrmSKCR_SH.TBRafreshClick(Sender: TObject); begin toolbar1.SetFocus; InitGrid(); end; procedure TfrmSKCR_SH.ToolButton2Click(Sender: TObject); begin Label12.Caption:='0'; if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,CDS_HZ); SInitCDSData20(ADOQueryMain,CDS_HZ); end; end; procedure TfrmSKCR_SH.FactoryNameChange(Sender: TObject); begin ToolButton2.Click; end; procedure TfrmSKCR_SH.Button2Click(Sender: TObject); begin if CDS_HZ.IsEmpty then Exit; if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then begin with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); ExecSQL; end; end; CDS_HZ.Delete; end; function TfrmSKCR_SH.SaveData():Boolean; var maxId,CRID:String; begin try ADOQueryCmd.Connection.BeginTrans; if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then begin Result:=False; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取最大号失败!','提示',0); Exit; end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''' '); Open; end; if ADOQueryCmd.IsEmpty=False then begin CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; end else begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update YF_Money_CRID set CRID=CRID+1'); sql.Add('select * from YF_Money_CRID '); Open; end; CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from YF_Money_KC where 1<>1'); Open; end; with ADOQueryCmd do begin Append; FieldByName('CRID').Value:=StrToInt(CRID); FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); FieldByName('ZdyStr1').Value:='应收收'; // FieldByName('YFDefFlag1').Value:=fFlag; Post; end; end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from YF_Money_CR where 1<>1'); Open; end; with ADOQueryCmd do begin Append; FieldByName('YFID').Value:=Trim(maxId); FieldByName('CRID').Value:=StrToInt(CRID); //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); FieldByName('Filler').Value:=Trim(DName); FieldByName('CRType').Value:='收款登记'; FieldByName('CRFlag').Value:='应收收'; FieldByName('QtyFlag').Value:=-1; FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); FieldByName('YFDefFlag1').Value:=fFlag; FieldByName('status').Value:=0; Post; end; with CDS_HZ do begin Edit; FieldByName('YFId').Value:=Trim(maxId); FieldByName('CRID').Value:=StrToInt(CRID); end; ADOQueryCmd.Connection.CommitTrans; Result:=True; except Result:=True; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('增行失败!','提示',0); end; end; procedure TfrmSKCR_SH.cxGridDBColumn8PropertiesEditValueChanged( Sender: TObject); var mvalue,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_HZ do begin Edit; FieldByName(FFieldName).Value:=Trim(mvalue); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YCL_SG_HZ '); if Trim(mvalue)<>'' then begin sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); end else begin sql.Add(' Set '+FFieldName+'=NULL'); end; SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); ExecSQL; end; end; procedure TfrmSKCR_SH.cxGridDBColumn5PropertiesEditValueChanged( Sender: TObject); var mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; if Trim(mvalue)='' then begin mvalue:='0'; end; FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_HZ do begin Edit; FieldByName(FFieldName).Value:=Trim(mvalue); Post; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); Open; end; FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; 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'; FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); if Trim(FMoney)='' then FMoney:='0'; FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); if Trim(FHuiLv)='' then FHuiLv:='0'; {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); if Trim(FBBMoney)='' then FBBMoney:='0'; } if Trim(FFieldName)<>'Money' then begin if Trim(FFieldName)<>'HuiLv' then begin FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); end else begin FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); end; end else begin FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); end; with CDS_HZ do begin Edit; FieldByName('Money').Value:=StrToFloat(FMoney); FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); if Trim(FFieldName)<>'Money' then begin sql.Add(',Money='+FMoney); end; sql.Add(',BBMoney='+FBBMoney); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); ExecSQL; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.cxGridDBColumn1PropertiesEditValueChanged( Sender: TObject); var mvalue,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_HZ do begin Edit; FieldByName(FFieldName).Value:=Trim(mvalue); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); if Trim(mvalue)<>'' then begin sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); end else begin sql.Add(' Set '+FFieldName+'=NULL'); end; SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.ToolButton3Click(Sender: TObject); begin try frmZdyAttachment:=TfrmZdyAttachment.Create(Application); with frmZdyAttachment do begin if ShowModal=1 then begin with Self.CDS_HZ do begin Append; FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); FieldByName('HuiLv').Value:=1; if Trim(DParameters2)='人民币' then begin FieldByName('HuiLv').Value:=1; end; Post; end; Self.SaveData(); end; end; finally frmZdyAttachment.Free; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='YFName'; flagname:='项目及摘要'; if Trim(DParameters3)='项目分开' then MainType:='收款'; if ShowModal=1 then begin with Self.CDS_HZ do begin Edit; FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmSKCR_SH.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='OrderUnit'; flagname:='数量单位'; if ShowModal=1 then begin Self.CDS_HZ.Edit; Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmSKCR_SH.v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='BZType'; flagname:='币种'; if ShowModal=1 then begin Self.CDS_HZ.Edit; Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmSKCR_SH.ToolButton1Click(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; SelExportData(Tv2,ADOQueryMain,'付款列表'); end; procedure TfrmSKCR_SH.v2Column4PropertiesEditValueChanged(Sender: TObject); var mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; if Trim(mvalue)='' then begin mvalue:='0'; end; FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_HZ do begin Edit; FieldByName(FFieldName).Value:=Trim(mvalue); Post; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); Open; end; FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); if Trim(FMoney)='' then FMoney:='0'; FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); if Trim(FHuiLv)='' then FHuiLv:='0'; {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); if Trim(FBBMoney)='' then FBBMoney:='0'; } FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); with CDS_HZ do begin Edit; FieldByName('Money').Value:=StrToFloat(FMoney); FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); sql.Add(',BBMoney='+FBBMoney); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+FBBMoney); sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); ExecSQL; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.v2Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application); with frmProductOrderListSel do begin FFInt:=1; //frmProductOrderList.v1Column4.Visible:=True; if ShowModal=1 then begin with Self.CDS_HZ do begin Edit; FieldByName('MainId').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString); FieldByName('OrderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString); with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set MainId='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString)+''''); sql.Add(' ,OrderNo='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString)+''''); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; end; end; end; finally frmProductOrderListSel.Free; end; end; procedure TfrmSKCR_SH.VBBPropertiesEditValueChanged(Sender: TObject); var mvalue,FKCBB:string; begin mvalue:=TcxTextEdit(Sender).EditingText; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); Open; end; FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; if Trim(mvalue)='' then mvalue:='0'; with CDS_HZ do begin Edit; FieldByName('BBMoney').Value:=StrToFloat(mvalue); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' set BBMoney='+mvalue); SQL.Add(',Editer='''+Trim(DName)+''''); SQL.Add(',Edittime=getdate() '); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+mvalue); sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); ExecSQL; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.MoneyChange(Sender: TObject); begin initgrid(); end; procedure TfrmSKCR_SH.v2Column1PropertiesEditValueChanged(Sender: TObject); var mvalue,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_HZ do begin Edit; FieldByName(FFieldName).Value:=Trim(mvalue); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.v2DerateMoneyPropertiesEditValueChanged( Sender: TObject); var mvalue:string; begin mvalue:=TcxTextEdit(Sender).EditingText; if Trim(mvalue)='' then mvalue:='0'; with CDS_HZ do begin Edit; FieldByName('DerateMoney').Value:=StrToFloatdef(mvalue,0); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YF_Money_CR '); sql.Add(' set DerateMoney='+mvalue); SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); ExecSQL; end; tv2.Controller.EditingController.ShowEdit(); end; procedure TfrmSKCR_SH.tchkClick(Sender: TObject); begin IF CDS_HZ.IsEmpty then exit; if CDS_HZ.Locate('ssel',true,[])=false then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; try ADOQueryCmd.Connection.BeginTrans; with CDS_HZ do begin DisableControls; First; while not eof do begin IF Fieldbyname('ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('update YF_Money_CR SET status=''2'' '); sql.Add('where YFID ='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); execsql; end; end; next; end; First; EnableControls; end; InitGrid(); ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; application.MessageBox('操作失败!','提示信息',0); end; end; procedure TfrmSKCR_SH.tnochkClick(Sender: TObject); begin IF CDS_HZ.IsEmpty then exit; if CDS_HZ.Locate('ssel',true,[])=false then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; try ADOQueryCmd.Connection.BeginTrans; with CDS_HZ do begin DisableControls; First; while not eof do begin IF Fieldbyname('ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('update YF_Money_CR SET status=''1'' '); sql.Add('where YFID ='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); execsql; end; end; next; end; First; EnableControls; end; InitGrid(); ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; application.MessageBox('操作失败!','提示信息',0); end; end; procedure TfrmSKCR_SH.cxTabControl1Change(Sender: TObject); begin SetStatus(); InitGrid(); end; procedure TfrmSKCR_SH.nochkClick(Sender: TObject); begin IF CDS_HZ.IsEmpty then exit; if CDS_HZ.Locate('ssel',true,[])=false then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; try ADOQueryCmd.Connection.BeginTrans; with CDS_HZ do begin DisableControls; First; while not eof do begin IF Fieldbyname('ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('update YF_Money_CR SET status=''0'',chkstatus=''不通过'',chknote='''+trim(chknote.Text)+''' '); sql.Add('where YFID ='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); execsql; end; end; next; end; First; EnableControls; end; InitGrid(); ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; application.MessageBox('操作失败!','提示信息',0); end; end; procedure TfrmSKCR_SH.TSDClick(Sender: TObject); begin IF CDS_HZ.IsEmpty then exit; frmFjList10:=TfrmFjList10.create(self); with frmFjList10 do begin fkeyNO:=trim(CDS_HZ.fieldbyname('YFID').AsString); fType:='SD'; if showmodal=1 then begin initgrid(); end; free; end; end; procedure TfrmSKCR_SH.N1Click(Sender: TObject); begin SelOKNo(CDS_HZ,True); end; procedure TfrmSKCR_SH.N2Click(Sender: TObject); begin SelOKNo(CDS_HZ,false); end; procedure TfrmSKCR_SH.v2SselPropertiesChange(Sender: TObject); begin toolbar1.SetFocus; HJ(CDS_HZ,Label12,CDS_HZ.fieldbyname('Money').AsCurrency); end; procedure TfrmSKCR_SH.CheckBox1Click(Sender: TObject); begin Label12.Caption:='0'; IF CDS_HZ.IsEmpty then exit; with CDS_HZ do begin DisableControls; first; while not eof do begin edit; fieldbyname('ssel').Value:=checkbox1.Checked; if checkbox1.Checked=true then begin Label12.Caption:=floattostr(strtofloat(Label12.Caption)+fieldbyname('Money').AsCurrency); end; post; next; end; First; EnableControls; end; end; end.