unit U_SalesContractList_XT; 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, cxPC, cxButtonEdit, cxTextEdit, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, RM_e_Graphic, RM_e_Jpeg, RM_E_llPDF, Vcl.Clipbrd, cxContainer, dxCore, cxDateUtils, cxMaskEdit, dxSkinBasic, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark, dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray, dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine, dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark, dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI, dxSkinXmas2008Blue, dxScrollbarAnnotations, cxProgressBar; type TfrmSalesContractList_XT = class(TfrmBaseList) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBAdd: TToolButton; TBEdit: TToolButton; TBPrint: TToolButton; TBClose: TToolButton; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; GPM_1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DS_1: TDataSource; v1OrdDate: TcxGridDBColumn; v1OrdPerson1: TcxGridDBColumn; v1ConNo: TcxGridDBColumn; CDS_2: TClientDataSet; v1CustomerNoName: TcxGridDBColumn; ToolButton1: TToolButton; v1Column1: TcxGridDBColumn; ToolButton2: TToolButton; v1Column4: TcxGridDBColumn; pm2: TPopupMenu; Panel1: TPanel; Label4: TLabel; Label9: TLabel; cxTabControl1: TcxTabControl; tchk: TToolButton; Tnochk: TToolButton; cxSplitter1: TcxSplitter; DS_2: TDataSource; v1Column8: TcxGridDBColumn; Tqx: TToolButton; Tnoqx: TToolButton; ToolButton5: TToolButton; v1Column10: TcxGridDBColumn; v1Column12: TcxGridDBColumn; v1Column9: TcxGridDBColumn; GPM_2: TcxGridPopupMenu; CDS_1: TClientDataSet; btnTijiao: TToolButton; btnCXTijiao: TToolButton; v1Column13: TcxGridDBColumn; Label3: TLabel; Tv1Column1: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; Tv1Column3: TcxGridDBColumn; Tv1Column4: TcxGridDBColumn; Tv1Column5: TcxGridDBColumn; Tv1Column6: TcxGridDBColumn; Tv1Column7: TcxGridDBColumn; Tv1Column14: TcxGridDBColumn; pm1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; btnWC: TToolButton; btnWCCX: TToolButton; Label7: TLabel; ADOQueryImage: TADOQuery; IsJYTime: TCheckBox; ToolButton7: TToolButton; N3: TMenuItem; N4: TMenuItem; Tv1Column25: TcxGridDBColumn; Tv1Column27: TcxGridDBColumn; cxGrid2: TcxGrid; TV2: TcxGridDBTableView; v1XHNo: TcxGridDBColumn; VC_SCSCode: TcxGridDBColumn; cxGridDBColumn2: TcxGridDBColumn; cxGridDBColumn3: TcxGridDBColumn; v1Column5: TcxGridDBColumn; cxGridDBColumn4: TcxGridDBColumn; cxGridDBColumn5: TcxGridDBColumn; cxGridDBColumn6: TcxGridDBColumn; cxGridDBColumn7: TcxGridDBColumn; cxGridDBColumn8: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1PRTOrderQty: TcxGridDBColumn; v1OrderUnit: TcxGridDBColumn; v1PRTPrice: TcxGridDBColumn; cxGridDBColumn9: TcxGridDBColumn; v1Column2: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; N5: TMenuItem; N6: TMenuItem; EndDate: TcxDateEdit; ConNo: TcxTextEdit; BuyConNo: TcxTextEdit; BuyName: TcxTextEdit; MiddleName: TcxTextEdit; BegDate: TcxDateEdit; TV2Column1: TcxGridDBColumn; TV2Column2: TcxGridDBColumn; TV2Column3: TcxGridDBColumn; Tv1Column8: TcxGridDBColumn; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton6: TToolButton; Tv1Column9: TcxGridDBColumn; Tv1Column10: TcxGridDBColumn; Tv1Column11: TcxGridDBColumn; Tv1Column13: TcxGridDBColumn; Tv1Column15: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; Tv1Column17: TcxGridDBColumn; Tv1Column18: TcxGridDBColumn; Tv1Column19: TcxGridDBColumn; Tv1Column20: TcxGridDBColumn; Tv1Column21: TcxGridDBColumn; Tv1Column22: TcxGridDBColumn; Tv1Column23: TcxGridDBColumn; Tv1Column24: TcxGridDBColumn; Tv1Column26: TcxGridDBColumn; Tv1Column28: TcxGridDBColumn; Tv1Column29: TcxGridDBColumn; Tv1Column30: TcxGridDBColumn; Tv1Column31: TcxGridDBColumn; Tv1Column32: TcxGridDBColumn; Tv1Column33: TcxGridDBColumn; Tv1Column12: TcxGridDBColumn; ToolButton8: TToolButton; ToolButton9: TToolButton; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBEditClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure TBAddClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure CheckBox1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure BuyNameChange(Sender: TObject); procedure tchkClick(Sender: TObject); procedure TnochkClick(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); procedure TqxClick(Sender: TObject); procedure TnoqxClick(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure btnTijiaoClick(Sender: TObject); procedure btnCXTijiaoClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure btnWCClick(Sender: TObject); procedure btnWCCXClick(Sender: TObject); procedure ConNoKeyPress(Sender: TObject; var Key: Char); procedure ToolButton7Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure N4Click(Sender: TObject); procedure TBPrintClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure N5Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure ToolButton9Click(Sender: TObject); procedure ToolButton8Click(Sender: TObject); private fFlileFlag: string; procedure InitGrid(); procedure SetStatus(); procedure InitSub(); procedure InitImage(); { Private declarations } public FFInt, FCloth: Integer; FAuthority, FGSTT, FSubIdS: string; { Public declarations } end; implementation uses U_DataLink, U_SalesConInPut, U_RTFun, U_AttachmentUpload, U_LabelPrint, U_ReceivableEdit_XT; {$R *.dfm} procedure TfrmSalesContractList_XT.InitImage(); begin ADOQueryImage.Close; if CDS_1.IsEmpty then exit; with ADOQueryImage do begin close; sql.Clear; sql.Add('select * from TP_File A'); sql.Add('where WBID=' + quotedstr(trim(CDS_1.fieldbyname('SubId').AsString))); sql.Add('and TFType=' + quotedstr(trim('HX'))); open; end; end; procedure TfrmSalesContractList_XT.InitSub(); begin // if CDS_1.IsEmpty then // exit; // with ADOQueryTemp do // begin // close; // sql.Clear; // sql.Add('select * from BS_Contract_sub A '); // sql.Add('where ConMID =' + quotedstr((CDS_1.fieldbyname('ConMID').AsString))); // open; // end; // SCreateCDS(ADOQueryTemp, CDS_2); // SInitCDSData(ADOQueryTemp, CDS_2); // TV2.DataController.Filter.Clear; end; procedure TfrmSalesContractList_XT.N1Click(Sender: TObject); begin SelOKNoFiler(Tv1, True); //全选 end; procedure TfrmSalesContractList_XT.N2Click(Sender: TObject); begin SelOKNoFiler(Tv1, False); //全弃 end; procedure TfrmSalesContractList_XT.N3Click(Sender: TObject); begin Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); end; procedure TfrmSalesContractList_XT.N4Click(Sender: TObject); begin Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); end; procedure TfrmSalesContractList_XT.N5Click(Sender: TObject); begin SelOKNo(CDS_1, True); end; procedure TfrmSalesContractList_XT.N6Click(Sender: TObject); begin SelOKNo(CDS_1, False); end; procedure TfrmSalesContractList_XT.SetStatus(); begin ToolButton3.Enabled := false; ToolButton4.Enabled := false; ToolButton6.Enabled := false; ToolButton8.Enabled := false; ToolButton9.Enabled := false; case cxTabControl1.TabIndex of 0: begin ToolButton3.Enabled := true; end; 1: begin ToolButton4.Enabled := true; ToolButton9.Enabled := true; end; 2: begin ToolButton6.Enabled := true; ToolButton8.Enabled := true; end; end; end; procedure TfrmSalesContractList_XT.FormDestroy(Sender: TObject); begin inherited; // frmContractListNX:=nil; end; procedure TfrmSalesContractList_XT.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmSalesContractList_XT.FormCreate(Sender: TObject); begin inherited; EndDate.Date := SGetServerDate(ADOQueryTemp); BegDate.Date := EndDate.Date - 90; end; procedure TfrmSalesContractList_XT.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmSalesContractList_XT.InitGrid(); var WSql: string; begin WSql := SGetFilters(Panel1, 1, 2); if trim(WSql) <> '' then begin WSql := ' and ' + trim(WSql); end; if IsJYTime.Checked then begin WSql := WSql + ' and ConDate>' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.Date)); WSql := WSql + ' and ConDate<=' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.Date + 1)); end else begin if trim(WSql) <> '' then WSql := ' and 1=1' + trim(WSql) else WSql := WSql + ' and 1=2 '; end; if trim(WSql) = 'and 1=2' then Application.MessageBox('勾选制单日期或填入搜索条件', '提示', 0); try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add(' select A.*,B.*'); sql.Add(' from BS_Contract_Main A inner join BS_Contract_Sub B on A.ConMID =B.ConMID '); sql.Add(' where 1=1 ' + (WSql)); sql.Add(' and A.ConType in (''内销'',''外销'') '); sql.Add(' and isnull(A.status,''0'')=''9'''); if FAuthority = '低权限' then begin sql.Add(' and A.Filler =''' + trim(DName) + ''''); end; case cxTabControl1.TabIndex of 0: begin sql.Add(' and isnull(B.ISXT,''0'')=''0'' '); end; 1: begin sql.Add(' and isnull(B.ISXT,''0'')=''1'' '); end; 2: begin sql.Add(' and isnull(B.ISXT,''0'')=''2'' '); end; end; Open; end; SCreateCDS(ADOQueryMain, CDS_1); SInitCDSData(ADOQueryMain, CDS_1); finally ADOQueryMain.EnableControls; TV1.DataController.Filter.Clear; end; end; procedure TfrmSalesContractList_XT.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, CDS_1); SInitCDSData(ADOQueryMain, CDS_1); end; procedure TfrmSalesContractList_XT.TBPrintClick(Sender: TObject); var WSql: string; begin if CDS_1.IsEmpty then Exit; try frmLabelPrint := TfrmLabelPrint.Create(Application); with frmLabelPrint do begin FLMType := 'SalesConPrint'; FFiltration1 := QuotedStr(Trim(Self.CDS_1.fieldbyname('ConMID').AsString)); if ShowModal = 1 then begin // Self.InitGrid(); end; end; finally frmLabelPrint.Free; end; end; procedure TfrmSalesContractList_XT.TBEditClick(Sender: TObject); begin if CDS_1.IsEmpty then Exit; // if Trim(CDS_1.fieldbyname('Filler').AsString) <> Trim(DName) then // begin // Application.MessageBox('不能操作他人的数据!', '提示', 0); // Exit; // end; try frmSalesConInPut := TfrmSalesConInPut.Create(Application); with frmSalesConInPut do begin PState := '修改'; FConMId := Trim(Self.CDS_1.fieldbyname('ConMID').AsString); FAuthority := self.FAuthority; FGSTT := self.FGSTT; fFlileFlag := self.fFlileFlag; if ShowModal = 1 then begin end; end; finally frmSalesConInPut.Free; end; end; procedure TfrmSalesContractList_XT.TBRafreshClick(Sender: TObject); begin ToolBar1.SetFocus; InitGrid(); end; procedure TfrmSalesContractList_XT.TBAddClick(Sender: TObject); var maxno: string; begin try frmSalesConInPut := TfrmSalesConInPut.Create(Application); with frmSalesConInPut do begin PState := '新增'; FConMId := ''; FAuthority := self.FAuthority; FGSTT := self.FGSTT; fFlileFlag := self.fFlileFlag; if ShowModal = 1 then begin end; end; finally frmSalesConInPut.Free; end; end; procedure TfrmSalesContractList_XT.FormShow(Sender: TObject); begin inherited; fFlileFlag := UserDataFlag + 'HX'; FAuthority := self.fParameters1; readCxGrid(trim(Self.Caption) + 'tv1', Tv1, '销售合同管理'); readCxGrid(trim(Self.Caption) + 'tv2', Tv2, '销售合同管理'); SetStatus(); InitGrid(); end; procedure TfrmSalesContractList_XT.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin if ToolButton1.Visible = False then Exit; ToolButton1.Click; end; procedure TfrmSalesContractList_XT.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmSalesContractList_XT.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmSalesContractList_XT.ConNoKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin InitGrid(); end; end; procedure TfrmSalesContractList_XT.ToolButton1Click(Sender: TObject); begin if CDS_1.IsEmpty then Exit; try frmSalesConInPut := TfrmSalesConInPut.Create(Application); with frmSalesConInPut do begin PState := '查看'; FConMId := Trim(Self.CDS_1.fieldbyname('ConMID').AsString); FGSTT := self.FGSTT; ToolBar2.Visible := False; TBSave.Visible := False; // ScrollBox1.Enabled := False; if ShowModal = 1 then begin end; end; finally frmSalesConInPut.Free; end; end; procedure TfrmSalesContractList_XT.ToolButton2Click(Sender: TObject); begin if CDS_1.IsEmpty then Exit; try frmSalesConInPut := TfrmSalesConInPut.Create(Application); with frmSalesConInPut do begin PState := '复制'; FConMId := Trim(Self.CDS_1.fieldbyname('ConMID').AsString); FAuthority := self.FAuthority; fFlileFlag := self.fFlileFlag; if ShowModal = 1 then begin end; end; finally frmSalesConInPut.Free; end; end; procedure TfrmSalesContractList_XT.ToolButton3Click(Sender: TObject); var MConSIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConSIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConSIDS := MConSIDS + trim(fieldbyname('ConSID').AsString) + ','; end; next; end; MConSIDS := copy(MConSIDS, 1, Length(MConSIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus_XT '); sql.Add(' @ConSIDS=' + QuotedStr(MConSIDS)); sql.Add(',@Operation=''下推'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同下推'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConSIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('下推成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.ToolButton4Click(Sender: TObject); var MConSIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConSIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConSIDS := MConSIDS + trim(fieldbyname('ConSID').AsString) + ','; end; next; end; MConSIDS := copy(MConSIDS, 1, Length(MConSIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus_XT '); sql.Add(' @ConSIDS=' + QuotedStr(MConSIDS)); sql.Add(',@Operation=''撤销下推'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同撤销下推'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConSIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('撤销下推成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.btnWCClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''完成'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同完成'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('完成成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.BuyNameChange(Sender: TObject); begin if ADOQueryMain.Active = False then Exit; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, CDS_1); SInitCDSData(ADOQueryMain, CDS_1); end; procedure TfrmSalesContractList_XT.tchkClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''审核'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同审核'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('审核成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.TnochkClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''撤销审核'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同撤销审核'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('审核成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.cxTabControl1Change(Sender: TObject); begin SetStatus(); TBRafresh.Click; end; procedure TfrmSalesContractList_XT.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); begin InitSub(); end; procedure TfrmSalesContractList_XT.TqxClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''取消'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同取消'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('取消成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.TnoqxClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同撤销取消'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''撤销取消'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); ShowMessage(sql.Text); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('撤销取消成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.ToolButton5Click(Sender: TObject); begin if CDS_1.IsEmpty then Exit; try frmAttachmentUpload := TfrmAttachmentUpload.Create(Application); with frmAttachmentUpload do begin fkeyNO := Trim(Self.CDS_1.fieldbyname('ConMID').AsString); fType := '合同'; FEditAuthority := True; if ShowModal = 1 then begin end; end; finally frmAttachmentUpload.Free; end; end; procedure TfrmSalesContractList_XT.ToolButton6Click(Sender: TObject); begin try frmReceivableEdit_XT := TfrmReceivableEdit_XT.Create(Application); with frmReceivableEdit_XT do begin FConSID := Trim(CDS_1.fieldbyname('ConSID').AsString); if ShowModal = 1 then begin InitGrid(); end; end; finally frmReceivableEdit_XT.Free; end; end; procedure TfrmSalesContractList_XT.ToolButton7Click(Sender: TObject); begin writeCxGrid(trim(Self.Caption) + 'tv1', Tv1, '销售合同管理'); writeCxGrid(trim(Self.Caption) + 'tv2', Tv2, '销售合同管理'); end; procedure TfrmSalesContractList_XT.ToolButton8Click(Sender: TObject); var MConSIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConSIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConSIDS := MConSIDS + trim(fieldbyname('ConSID').AsString) + ','; end; next; end; MConSIDS := copy(MConSIDS, 1, Length(MConSIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus_XT '); sql.Add(' @ConSIDS=' + QuotedStr(MConSIDS)); sql.Add(',@Operation=''撤销下推审核'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同撤销下推审核'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConSIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('撤销成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.ToolButton9Click(Sender: TObject); var MConSIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConSIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConSIDS := MConSIDS + trim(fieldbyname('ConSID').AsString) + ','; end; next; end; MConSIDS := copy(MConSIDS, 1, Length(MConSIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus_XT '); sql.Add(' @ConSIDS=' + QuotedStr(MConSIDS)); sql.Add(',@Operation=''下推审核'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同下推审核'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConSIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('审核成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.btnWCCXClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''撤销完成'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('合同撤销完成'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('撤销完成成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); begin if AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('status').Index] = '2' then ACanvas.Brush.Color := clLime; end; procedure TfrmSalesContractList_XT.btnTijiaoClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''提交'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('内销合同提交'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('提交成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; procedure TfrmSalesContractList_XT.btnCXTijiaoClick(Sender: TObject); var MConMIDS: string; begin if CDS_1.IsEmpty then exit; if not CDS_1.Locate('SSel', True, []) then begin application.MessageBox('请选择数据', '提示'); Exit; end; with CDS_1 do begin DisableControls; First; MConMIDS := ''; while not eof do begin if fieldbyname('SSel').AsBoolean then begin MConMIDS := MConMIDS + trim(fieldbyname('ConMID').AsString) + ','; end; next; end; MConMIDS := copy(MConMIDS, 1, Length(MConMIDS) - 1); EnableControls; end; try with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' exec P_BS_Contract_SetStatus '); sql.Add(' @ConMIDS=' + QuotedStr(MConMIDS)); sql.Add(',@Operation=''撤销提交'' '); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); Sql.Add(',@DName=' + quotedstr(Trim(DName))); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('内销合同撤销提交'))); sql.Add(',' + quotedstr(trim('合同ID:' + trim(MConMIDS)))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); open; end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); application.MessageBox('撤销提交成功', '提示'); InitGrid(); except application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); InitGrid(); end; end; end.