unit U_BankMoneyKHInPut; 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, cxDropDownEdit, BtnEdit; type TfrmBankMoneyKHInPut = class(TForm) ToolBar1: TToolBar; TBClose: TToolButton; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; Panel1: TPanel; ToolButton4: TToolButton; Label4: TLabel; Note: TEdit; Label12: TLabel; JSMoney: TEdit; Label3: TLabel; CRTime: TDateTimePicker; FactoryName: TBtnEditC; Label5: TLabel; Label6: TLabel; YFName: TBtnEditC; Label7: TLabel; ADOQueryMain: TADOQuery; CRType1: TEdit; Label1: TLabel; Label2: TLabel; Label8: TLabel; CRType2: TEdit; CRType3: TEdit; Label9: TLabel; BZType: TComboBox; Label10: TLabel; ConNo: TEdit; Label11: TLabel; CRType4: TEdit; Label13: TLabel; CRType5: TEdit; Label14: TLabel; CRType6: TEdit; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure FactoryNameBtnUpClick(Sender: TObject); procedure FactoryNameBtnDnClick(Sender: TObject); procedure YFNameBtnUpClick(Sender: TObject); procedure YFNameBtnDnClick(Sender: TObject); procedure CRType1Click(Sender: TObject); procedure CRType2Click(Sender: TObject); procedure CRType3Click(Sender: TObject); procedure CRType4Click(Sender: TObject); procedure CRType5Click(Sender: TObject); procedure CRType6Click(Sender: TObject); private { Private declarations } FKType:string; procedure InitData(); function SaveData():Boolean; public { Public declarations } FMainId:String; end; var frmBankMoneyKHInPut: TfrmBankMoneyKHInPut; implementation uses U_DataLink,U_ZDYHelp,U_RTFun,U_GSListBankSel,U_KHListSelJJ; {$R *.dfm} procedure TfrmBankMoneyKHInPut.InitData(); var FFYFName:String; begin with ADOQueryMain do begin Filtered:=False; Close; SQL.Clear; sql.Add(' select A.*,B.BankNo,B.BankName,B.HuMingJC '); sql.Add(' from YS_Money_CR A'); sql.Add(' left join KH_Sub_Bank B on A.BKNO=B.BKNO'); sql.Add(' left join KH_Main C on B.KHMainId=C.KHMainId'); sql.Add(' where YFID='''+Trim(FMainId)+''''); Open; end; FFYFName:=Trim(ADOQueryMain.fieldbyname('FKType').AsString); SCSHDataNew(ADOQueryMain,Panel1,2); SCSHDataNew(ADOQueryMain,Panel1,0); if FFYFName='自付' then begin CRType1.text:='√'; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:=''; end else if FFYFName='本公司代付' then begin CRType1.Text:=''; CRType2.Text:='√'; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:=''; end else if FFYFName='客户垫付' then begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:='√'; CRType6.Text:=''; end else if FFYFName='到付' then begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:='√'; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:=''; end else if FFYFName='冲红' then begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:='√'; CRType5.Text:=''; CRType6.Text:=''; end else if FFYFName='加税点' then begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:='√'; end; end; procedure TfrmBankMoneyKHInPut.FormDestroy(Sender: TObject); begin frmBankMoneyKHInPut:=nil; end; procedure TfrmBankMoneyKHInPut.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmBankMoneyKHInPut.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmBankMoneyKHInPut.FormShow(Sender: TObject); begin CRTime.Date:=SGetServerDate(ADOQueryTemp); if Trim(FMainId)<>'' then begin InitData(); end; end; function TfrmBankMoneyKHInPut.SaveData():Boolean; var maxId:String; begin try ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(FMainId)+''''); Open; end; FMainId:=Trim(ADOQueryCmd.fieldbyname('YFID').AsString); if Trim(FMainId)='' then begin if GetLSNo(ADOQueryCmd,maxId,'YU','YS_Money_CR',4,1)=False then begin Result:=False; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取最大号失败!','提示',0); Exit; end; end else begin maxId:=FMainId; end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from YS_Money_CR where YFID='''+Trim(FMainId)+''''); Open; end; with ADOQueryCmd do begin if Trim(FMainId)='' then begin Append; FieldByName('ChkStatusP').Value:='未审核'; end else begin Edit; end; FieldByName('YFID').Value:=Trim(maxId); FieldByName('Filler').Value:=Trim(DName); FieldByName('CRType').Value:='客户费用管理'; FieldByName('CRFlag').Value:='费用管理'; if Trim(CRType1.Text)<>'' then begin FieldByName('FKType').Value:=Trim(CRType1.Hint); FieldByName('QtyFlag').Value:=0; end else if Trim(CRType2.Text)<>'' then begin FieldByName('FKType').Value:=Trim(CRType2.Hint); FieldByName('QtyFlag').Value:=1; end else if Trim(CRType3.Text)<>'' then begin FieldByName('FKType').Value:=Trim(CRType3.Hint); FieldByName('QtyFlag').Value:=0; end else if Trim(CRType4.Text)<>'' then begin FieldByName('FKType').Value:=Trim(CRType4.Hint); FieldByName('QtyFlag').Value:=-1; end else if Trim(CRType5.Text)<>'' then begin FieldByName('FKType').Value:=Trim(CRType5.Hint); FieldByName('QtyFlag').Value:=-1; end else if Trim(CRType6.Text)<>'' then begin FieldByName('FKType').Value:=Trim(CRType6.Hint); FieldByName('QtyFlag').Value:=1; end; FieldByName('FactoryNo').Value:=Trim(FactoryName.TxtCode); RTSetsavedata(ADOQueryCmd,'YS_Money_CR',Panel1,2); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate YS_Money_CR Set Money=JSMoney where YFID='''+Trim(maxId)+''''); ExecSQL; end; FMainId:=Trim(maxId); ADOQueryCmd.Connection.CommitTrans; Result:=True; except Result:=True; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('操作异常!','提示',0); end; end; procedure TfrmBankMoneyKHInPut.ToolButton4Click(Sender: TObject); var FReal:Double; begin ToolBar1.SetFocus; if Trim(FactoryName.Text)='' then begin Application.MessageBox('客户不能为空!','提示',0); Exit; end; if Trim(JSMoney.Text)<>'' then begin if TryStrToFloat(JSMoney.Text,FReal)=False then begin Application.MessageBox('金额非法数字!','提示',0); Exit; end; { if StrToFloat(JSMoney.Text)<0 then begin Application.MessageBox('金额不能小于零!','提示',0); Exit; end; } end; if Trim(BZType.Text)='' then begin Application.MessageBox('币种不能为空!','提示',0); Exit; end; if Application.MessageBox('确定要保存数据吗?','提示',32+4)<>IDYES then Exit; if SaveData() then begin Application.MessageBox('保存成功!','提示',0); ModalResult:=1; end; end; procedure TfrmBankMoneyKHInPut.FactoryNameBtnUpClick(Sender: TObject); begin try frmKHListSelJJ:=TfrmKHListSelJJ.Create(Application); with frmKHListSelJJ do begin frmKHListSelJJ.canshu2:='高权限'; if ShowModal=1 then begin FactoryName.Text:=Trim(frmKHListSelJJ.CDS_HZ.fieldbyname('KHNameJC').AsString); FactoryName.TxtCode:=Trim(frmKHListSelJJ.CDS_HZ.fieldbyname('KHNO').AsString); end; end; finally frmKHListSelJJ.Free; end; end; procedure TfrmBankMoneyKHInPut.FactoryNameBtnDnClick(Sender: TObject); begin FactoryName.Text:=''; end; procedure TfrmBankMoneyKHInPut.YFNameBtnUpClick(Sender: TObject); begin try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='YFNameKH'; flagname:='项目摘要'; {if Trim(DName)<>'ADMIN' then begin ViewFlag:=True; end;} if ShowModal=1 then begin YFName.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmBankMoneyKHInPut.YFNameBtnDnClick(Sender: TObject); begin yfname.Text:=''; end; procedure TfrmBankMoneyKHInPut.CRType1Click(Sender: TObject); begin CRType1.Text:='√'; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:=''; FKType:='自付'; end; procedure TfrmBankMoneyKHInPut.CRType2Click(Sender: TObject); begin CRType1.Text:=''; CRType2.Text:='√'; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:=''; FKType:='本公司代付'; end; procedure TfrmBankMoneyKHInPut.CRType3Click(Sender: TObject); begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:='√'; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:=''; FKType:='到付'; end; procedure TfrmBankMoneyKHInPut.CRType4Click(Sender: TObject); begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:='√'; CRType5.Text:=''; CRType6.Text:=''; FKType:='冲红'; end; procedure TfrmBankMoneyKHInPut.CRType5Click(Sender: TObject); begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:='√'; CRType6.Text:=''; FKType:='客户垫付'; end; procedure TfrmBankMoneyKHInPut.CRType6Click(Sender: TObject); begin CRType1.Text:=''; CRType2.Text:=''; CRType3.Text:=''; CRType4.Text:=''; CRType5.Text:=''; CRType6.Text:='√'; FKType:='加税点'; end; end.