unit U_ContractListXF_WC; 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, cxCurrencyEdit, RM_e_Graphic, RM_e_Jpeg, cxLookAndFeels, cxLookAndFeelPainters, dxBarBuiltInMenu, cxNavigator; type TfrmContractList_XF_WC = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBPrint: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; RM1: TRMGridReport; RMDBDataSet1: TRMDBDataSet; RMXLSExport1: TRMXLSExport; PopupMenu1: TPopupMenu; N2: TMenuItem; ADOQueryPrint: TADOQuery; CDS_Print: TClientDataSet; PopupMenu2: TPopupMenu; N11: TMenuItem; N21: TMenuItem; N31: TMenuItem; Panel1: TPanel; Label1: TLabel; Label4: TLabel; Label5: TLabel; Label8: TLabel; Label9: TLabel; Label12: TLabel; Label13: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; CustomerNo: TEdit; ConPerson1: TEdit; MPRTCodeName: TEdit; ConNo: TEdit; MPRTKZ: TEdit; MPRTMF: TEdit; cxTabControl1: TcxTabControl; cxSplitter1: TcxSplitter; ADOQuerySub: TADOQuery; DataSource2: TDataSource; TChk: TToolButton; Tnochk: TToolButton; Panel4: TPanel; Label14: TLabel; Panel10: TPanel; Image2: TImage; Button1: TButton; RadioGroup1: TRadioGroup; RMJPEGExport1: TRMJPEGExport; Label6: TLabel; CustomerNoName: TEdit; Label7: TLabel; GCName: TEdit; ToolButton1: TToolButton; TFJSC: TToolButton; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1OrdDate: TcxGridDBColumn; v1ConNo: TcxGridDBColumn; v1QianDPlace: TcxGridDBColumn; v1YWY: TcxGridDBColumn; v1CustomerNoName: TcxGridDBColumn; v1GCName: TcxGridDBColumn; v1FLZQty: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; v1ConType: TcxGridDBColumn; Label2: TLabel; ConType: TEdit; cxGridPopupMenu2: TcxGridPopupMenu; v1HTDJ: TcxGridDBColumn; Label3: TLabel; HTDJ: TEdit; v1Ssel: TcxGridDBColumn; v1QDDate: TcxGridDBColumn; cxTabControl2: TcxTabControl; cxGrid2: TcxGrid; TV2: TcxGridDBTableView; v1BNo: TcxGridDBColumn; v1XFBFB: TcxGridDBColumn; v1FLQty: TcxGridDBColumn; V2KSFee: TcxGridDBColumn; V2Column1: TcxGridDBColumn; v1JSMoney: TcxGridDBColumn; V2Column2: TcxGridDBColumn; V2Column3: TcxGridDBColumn; V2Column4: TcxGridDBColumn; v1Note: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; ToolButton2: TToolButton; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBEditClick(Sender: TObject); procedure TBDelClick(Sender: TObject); procedure TBExportClick(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 TBTPClick(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure TcopyClick(Sender: TObject); procedure CustomerNoChange(Sender: TObject); procedure ConNoKeyPress(Sender: TObject; var Key: Char); procedure cxTabControl1Change(Sender: TObject); procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); procedure TChkClick(Sender: TObject); procedure TnochkClick(Sender: TObject); procedure Image2Click(Sender: TObject); procedure TBPrintClick(Sender: TObject); procedure Button1Click(Sender: TObject); procedure TFJSCClick(Sender: TObject); procedure cxTabControl2Change(Sender: TObject); procedure GCNameKeyPress(Sender: TObject; var Key: Char); procedure ToolButton2Click(Sender: TObject); private DQdate:TDateTime; procedure InitGrid(); procedure InitForm(); function DelData():Boolean; procedure InitGridFH(); procedure SetStatus(); procedure InitSub(); { Private declarations } public FFInt,FCloth:Integer; canshu1:string; { Public declarations } end; var frmContractList_XF_WC: TfrmContractList_XF_WC; implementation uses U_DataLink,U_ConInPutXF,U_Fun,U_ZDYHelp,U_FjList_RZ; {$R *.dfm} procedure TfrmContractList_XF_WC.InitSub(); begin ADOQuerySub.Close; IF Order_Main.IsEmpty then exit; with ADOQuerySub do begin close; sql.Clear; sql.Add('select * from JYOrderCon_sub '); sql.Add('where mainID ='+quotedstr((Order_Main.fieldbyname('mainID').AsString))); open; end; end; procedure TfrmContractList_XF_WC.SetStatus(); begin Tchk.Visible:=false; case cxTabControl1.TabIndex of 0:begin TChk.Visible:=true; end; 1:begin end; 2:begin end; end; end; procedure TfrmContractList_XF_WC.FormDestroy(Sender: TObject); begin frmContractList_XF_WC:=nil; end; procedure TfrmContractList_XF_WC.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmContractList_XF_WC.FormCreate(Sender: TObject); begin cxgrid1.Align:=alClient; //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); DQdate:=SGetServerDate(ADOQueryTemp); cxTabControl1.TabIndex:=0; canshu1:=trim(DParameters1); end; procedure TfrmContractList_XF_WC.TBCloseClick(Sender: TObject); begin Close; if FCloth<>1 then WriteCxGrid('订单合同列表',Tv1,'生产指示单管理') else WriteCxGrid('订单合同列表选择',Tv1,'生产指示单管理'); end; procedure TfrmContractList_XF_WC.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('select A.*'); SQL.Add(',FLZQty=(select Sum(FLQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); sql.Add(' from JYOrderCon_Main A '); SQL.Add('where 1=1 '); IF cxTabControl1.TabIndex<>0 then begin sql.Add(' and A.OrdDate>='''+FormatDateTime('yyyy-MM-dd',BegDate.Date)+''''); SQL.Add(' and A.OrdDate<'''+FormatDateTime('yyyy-MM-dd',enddate.Date+1)+''''); end; IF cxTabControl1.TabIndex=0 then begin sql.Add(' and isnull(A.status,''0'')=''2'''); end; IF cxTabControl1.TabIndex=1 then begin sql.Add(' and isnull(A.status,''0'')=''3'''); end; if cxTabControl2.TabIndex<>4 then begin sql.Add(' and isnull(A.ConType,'''')='''+Trim(cxTabControl2.Tabs[cxTabControl2.TabIndex].Caption)+''''); end; Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmContractList_XF_WC.InitGridFH(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('exec Order_QryList :MainId,:WSql'); Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmContractList_XF_WC.InitForm(); begin if FCloth<>1 then ReadCxGrid('订单合同列表',Tv1,'生产指示单管理') else ReadCxGrid('订单合同列表选择',Tv1,'生产指示单管理'); BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-30; EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); InitGrid(); end; procedure TfrmContractList_XF_WC.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active=False then Exit; SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; procedure TfrmContractList_XF_WC.TBEditClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; if Trim(Order_Main.fieldbyname('filler').AsString)<>Trim(DName) then begin Application.MessageBox('不能操作他人的数据!','提示',0); Exit; end; try frmConInPutXF:=TfrmConInPutXF.Create(Application); with frmConInPutXF do begin PState:=1; FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); if ShowModal=1 then begin end; end; finally frmConInPutXF.Free; end; end; procedure TfrmContractList_XF_WC.TBDelClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; if Trim(Order_Main.fieldbyname('filler').AsString)<>Trim(DName) then begin Application.MessageBox('不能操作他人的数据!','提示',0); Exit; end; with ADOQueryTemp do begin close; sql.Clear; sql.add('select * from JYOrder_Main where ConNo='''+trim(Order_Main.fieldbyname('ConNo').AsString)+''' '); open; if not isempty then begin application.MessageBox('已生成指示单,不能删除','提示'); exit; end; end; if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; if DelData() then begin Order_Main.Delete; end; end; function TfrmContractList_XF_WC.DelData():Boolean; begin try Result:=false; ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete JYOrderCon_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); sql.Add('delete JYOrderCon_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); 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('合同号:'+trim(Order_Main.FieldByName('conNo').AsString)))); sql.Add(','+quotedstr(trim('成功'))); sql.Add(')'); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; Result:=True; except ADOQueryCmd.Connection.RollbackTrans; Result:=False; Application.MessageBox('数据删除异常!','提示',0); end; end; procedure TfrmContractList_XF_WC.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; SelExportData(Tv1,ADOQueryMain,'合同列表'); end; procedure TfrmContractList_XF_WC.TBRafreshClick(Sender: TObject); begin if FFInt=1 then begin InitGridFH(); end else InitGrid(); end; procedure TfrmContractList_XF_WC.TBAddClick(Sender: TObject); var maxno:string; begin try frmConInPutXF:=TfrmConInPutXF.Create(Application); with frmConInPutXF do begin PState:=0; FMainId:=''; if ShowModal=1 then begin end; TBRafresh.Click; end; finally frmConInPutXF.Free; end; end; procedure TfrmContractList_XF_WC.FormShow(Sender: TObject); begin InitForm(); SetStatus(); end; procedure TfrmContractList_XF_WC.Tv1CellDblClick( Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin if ToolButton1.Visible=False then Exit; ToolButton1.Click; end; procedure TfrmContractList_XF_WC.TBTPClick(Sender: TObject); var FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; begin end; procedure TfrmContractList_XF_WC.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmContractList_XF_WC.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmContractList_XF_WC.Tv1StylesGetContentStyle( Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); var id,id10:Integer; begin {try if Tv1.GroupedItemCount=0 then begin Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; if Trim(VarToStr(ARecord.Values[id]))='' then Exit; if Id<0 then Exit; if ARecord.Values[id10]='完成' then exit; if (ARecord.Values[id]-DQdate)>=4 then Exit; if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then AStyle:=DataLink_.QHuangSe else if ARecord.Values[id]-DQdate<0 then begin AStyle:=DataLink_OrderManage.FenHongS; end; end else begin end; except end; } end; procedure TfrmContractList_XF_WC.v1DeliveryDateCustomDrawCell( Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); begin { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; Id10:=TV1.GetColumnByFieldName('SubStatus').Index; if Id<0 then Exit; if AViewInfo.GridRecord.Values[Id10]='完成' then Exit; if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then ACanvas.Brush.Color:=clYellow else if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then begin ACanvas.Brush.Color:=clRed; end; begin ACanvas.Brush.Color:=clRed; end else if AViewInfo.GridRecord.Values[Id]='Purple' then begin ACanvas.Brush.Color:=clPurple; end else if AViewInfo.GridRecord.Values[Id]='Olive' then begin ACanvas.Brush.Color:=clOlive; end else if AViewInfo.GridRecord.Values[Id]='Teal' then begin ACanvas.Brush.Color:=clTeal; end else if AViewInfo.GridRecord.Values[Id]='Background' then begin ACanvas.Brush.Color:=clBackground; end; } end; procedure TfrmContractList_XF_WC.N1Click(Sender: TObject); var fPrintFile:string; Porderno:string; begin if Order_Main.IsEmpty then Exit; fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\生产指示单10.rmf' ; SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); if FileExists(fPrintFile) then begin //RMVariables['begindate']:=begindate.DateTime; //RMVariables['enddate']:=enddate.DateTime; //RMVariables['printtime']:=Now; //RMVariables['printer']:=Trim(gUserName); RM1.LoadFromFile(fPrintFile); RM1.ShowReport; end else begin Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\生产指示单10.rmf'),'提示',0); end; SDofilter(ADOQueryMain,''); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); Order_Main.Locate('ordernoM',Porderno,[]); end; procedure TfrmContractList_XF_WC.N2Click(Sender: TObject); var fPrintFile:string; Porderno:string; begin if Order_Main.IsEmpty then Exit; fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\生产指示单.rmf' ; SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); if FileExists(fPrintFile) then begin //RMVariables['begindate']:=begindate.DateTime; //RMVariables['enddate']:=enddate.DateTime; //RMVariables['printtime']:=Now; //RMVariables['printer']:=Trim(gUserName); RM1.LoadFromFile(fPrintFile); RM1.ShowReport; end else begin Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\生产指示单.rmf'),'提示',0); end; SDofilter(ADOQueryMain,''); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); Order_Main.Locate('ordernoM',Porderno,[]); end; procedure TfrmContractList_XF_WC.ToolButton1Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; try frmConInPutXF:=TfrmConInPutXF.Create(Application); with frmConInPutXF do begin PState:=1; FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); ToolBar2.Visible:=False; TBSave.Visible:=False; ScrollBox1.Enabled:=False; Tv1.OptionsSelection.CellSelect:=False; if ShowModal=1 then begin end; end; finally frmConInPutXF.Free; end; end; procedure TfrmContractList_XF_WC.TcopyClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; try frmConInPutXF:=TfrmConInPutXF.Create(Application); with frmConInPutXF do begin PState:=1; CopyInt:=99; FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); if ShowModal=1 then begin end; end; finally frmConInPutXF.Free; end; end; procedure TfrmContractList_XF_WC.CustomerNoChange(Sender: TObject); begin if ADOQueryMain.Active=False then Exit; SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; procedure TfrmContractList_XF_WC.ConNoKeyPress(Sender: TObject; var Key: Char); begin if Key=#13 then begin if Length(conno.Text)<3 then Exit; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; SQL.Clear; sql.Add('select A.*,A.ConNo ConNoM '); sql.Add(' from JYOrderCon_Main A '); SQL.Add('where OrdDate>='''+'1899-01-01'+''''); SQL.Add('and OrdDate<'''+'2050-01-01'+''''); sql.Add(' and MPRTType=''外销'' '); if Trim(DParameters1)<>'高权限' then begin sql.Add('and A.Filler='''+Trim(DName)+''''); end; sql.Add(' and ConNo like '''+'%'+Trim(ConNo.Text)+'%'+''''); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; end; procedure TfrmContractList_XF_WC.cxTabControl1Change(Sender: TObject); begin SetStatus(); TBRafresh.Click; end; procedure TfrmContractList_XF_WC.Tv1FocusedRecordChanged( Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); begin InitSub(); end; procedure TfrmContractList_XF_WC.TChkClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; try with Order_Main do begin first; while not eof do begin if FieldByName('Ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('update JYOrdercon_Main SET status=''3'''); sql.Add(' ,chker='+quotedstr(trim(DName))); sql.Add(' ,ChkDate=getdate() '); sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); execsql; end; end; next; end; end; application.MessageBox('操作成功!','提示信息'); TBRafresh.Click; except; application.MessageBox('操作失败!','提示信息',0); end; end; procedure TfrmContractList_XF_WC.TnochkClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; try with Order_Main do begin first; while not eof do begin if FieldByName('Ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('update JYOrdercon_Main SET status=''2'''); sql.Add(' ,chker='+quotedstr(trim(DName))); sql.Add(' ,ChkDate=getdate() '); sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); execsql; end; end; next; end; end; application.MessageBox('操作成功!','提示信息'); TBRafresh.Click; except; application.MessageBox('操作失败!','提示信息',0); end; end; procedure TfrmContractList_XF_WC.Image2Click(Sender: TObject); begin Panel4.Visible:=False; end; procedure TfrmContractList_XF_WC.TBPrintClick(Sender: TObject); var fPrintFile:string; EngMoney:string; begin if Order_Main.IsEmpty then Exit; Button1.Click; end; procedure TfrmContractList_XF_WC.Button1Click(Sender: TObject); var fPrintFile:string; EngMoney:string; FimageFile: string; begin FimageFile:=''; if Order_Main.IsEmpty then Exit; if radiogroup1.ItemIndex=0 then fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\外销合同.rmf' ; with ADOQueryPrint do begin Close; sql.Clear; sql.Add('select A.*,B.* '); sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); sql.Add(' where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); Open; end; SCreateCDS20(ADOQueryPrint,CDS_Print); SInitCDSData20(ADOQueryPrint,CDS_Print); if FileExists(fPrintFile) then begin RMVariables['ImageFile']:=trim(FimageFile); RM1.LoadFromFile(fPrintFile); RM1.ShowReport; end else begin Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\外销合同.rmf'),'提示',0); end; end; procedure TfrmContractList_XF_WC.TFJSCClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; try frmFjList_RZ:=TfrmFjList_RZ.Create(Application); with frmFjList_RZ do begin if Trim(DParameters1)<>'高权限' then cxButton1.Visible:=false; fkeyNO:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); fType:='合同'; if ShowModal=1 then begin end; end; finally frmFjList_RZ.Free; end; end; procedure TfrmContractList_XF_WC.cxTabControl2Change(Sender: TObject); begin SetStatus(); TBRafresh.Click; end; procedure TfrmContractList_XF_WC.GCNameKeyPress(Sender: TObject; var Key: Char); begin if Key=#13 then begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('select A.*'); SQL.Add(',FLZQty=(select Sum(FLQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); sql.Add(' from JYOrderCon_Main A '); SQL.Add('where 1=1 and A.GCName like '''+'%'+trim(GCName.Text)+'%'+''''); IF cxTabControl1.TabIndex=0 then begin sql.Add(' and isnull(A.status,''0'')=''2'''); end; IF cxTabControl1.TabIndex=1 then begin sql.Add(' and isnull(A.status,''0'')=''3'''); end; if cxTabControl2.TabIndex<>4 then begin sql.Add(' and isnull(A.ConType,'''')='''+Trim(cxTabControl2.Tabs[cxTabControl2.TabIndex].Caption)+''''); end; Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; end; procedure TfrmContractList_XF_WC.ToolButton2Click(Sender: TObject); var FConNO,FConMainid:String; begin if cxTabControl1.TabIndex<>1 then Exit; if Application.MessageBox('确定要删除合同吗?数据删除后将无法撤销!','',32+4)<>IDYES then Exit; begin try ADOQueryCmd.Connection.BeginTrans; FConNO:=Trim(Order_Main.fieldbyname('ConNo').AsString); FConMainid:=Trim(Order_Main.fieldbyname('Mainid').AsString); with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete YF_Money_CR where isnull(ConNo,'''')='''+Trim(FConNO)+''' and isnull(CRFlag,'''')=''应收收'' '); sql.Add('delete JYOrder_Main where isnull(ConNo,'''')='''+Trim(FConNO)+''''); sql.Add('delete JYOrderCon_Main where isnull(ConNo,'''')='''+Trim(FConNO)+''''); sql.Add('delete JYOrderCon_Sub where isnull(MainId,'''')='''+Trim(FConMainid)+''''); sql.Add('delete CK_CP_CR where isnull(ConNo,'''')='''+Trim(FConNO)+''''); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; Order_Main.Delete; Application.MessageBox('操作成功!','提示',0); except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('数据删除失败!','提示',0); Exit; end; end; end; end.