unit U_MCGKCListNew; 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, cxButtonEdit, cxDropDownEdit, cxPC, Buttons, cxContainer, cxGroupBox, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, ImgList, StrUtils, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmMCGKCListNew = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBAdd: TToolButton; TBClose: TToolButton; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; ToolButton1: TToolButton; Panel1: TPanel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; ToolButton4: TToolButton; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport2: TRMXLSExport; CDS_PRT: TClientDataSet; labMYType: TLabel; PopupMenu1: TPopupMenu; CheckBox1: TCheckBox; Label3: TLabel; JCDanWeiJC: TEdit; Button1: TButton; ODPat: TOpenDialog; IdFTP1: TIdFTP; PopupMenu2: TPopupMenu; MenuItem1: TMenuItem; N3: TMenuItem; MenuItem2: TMenuItem; N4: TMenuItem; Label1: TLabel; Note: TEdit; ImageList1: TImageList; KHNo: TEdit; JCKHNo: TEdit; Label5: TLabel; CGName: TEdit; ToolButton2: TToolButton; v1MYMF: TcxGridDBColumn; Label7: TLabel; ToolButton3: TToolButton; ADOQuery1: TADOQuery; ADOQuery2: TADOQuery; N1: TMenuItem; DataSource2: TDataSource; CDS_Sub: TClientDataSet; Panel2: TPanel; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn2: TcxGridDBColumn; Tv2Column2: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; DataSource3: TDataSource; CDS_3: TClientDataSet; Tv1Column4: TcxGridDBColumn; Tv2Column1: TcxGridDBColumn; Label2: TLabel; Panel3: TPanel; Label23: TLabel; NowQty: TEdit; Label4: TLabel; AfterQty: TEdit; Button2: TButton; Button3: TButton; Tv1Column1: TcxGridDBColumn; MYKZ: TEdit; Tv2Column3: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure TBAddClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure CustomerNoNameChange(Sender: TObject); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure ZJStatusChange(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure SpeedButton2Click(Sender: TObject); procedure SpeedButton4Click(Sender: TObject); procedure SpeedButton5Click(Sender: TObject); procedure SpeedButton3Click(Sender: TObject); procedure SpeedButton6Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure MYNameChange(Sender: TObject); procedure Button3Click(Sender: TObject); procedure MYKZChange(Sender: TObject); procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); procedure Tv2DblClick(Sender: TObject); private canshu1, FFKHName: string; DQdate: TDateTime; procedure InitGrid(); procedure InitForm(); function DelData(): Boolean; procedure Initimage(); { Private declarations } public FFInt, FCloth: Integer; FMYName: string; { Public declarations } end; var frmMCGKCListNew: TfrmMCGKCListNew; implementation uses U_DataLink, U_RTFun, U_QCRKInPut, U_ZDYHelp, U_LLRKInPut, U_GYSList, U_LLRKInPutMH_MCG, U_LLRKInPutMH, U_LLRKInPutX, U_LLRKInPut_CG, U_LLRKInPutMH_CG, U_BPZdy_LRM, U_LLRKInPutMH_MTHCK, U_LLRKInPutMH_MPD, U_CGMian; {$R *.dfm} procedure TfrmMCGKCListNew.FormDestroy(Sender: TObject); begin frmMCGKCListNew := nil; end; procedure TfrmMCGKCListNew.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmMCGKCListNew.FormCreate(Sender: TObject); begin cxgrid1.Align := alClient; canshu1 := Trim(DParameters1); end; procedure TfrmMCGKCListNew.TBCloseClick(Sender: TObject); begin WriteCxGrid('棉库存1', Tv1, '棉仓库'); WriteCxGrid('棉库存2', Tv2, '棉仓库'); Close; end; procedure TfrmMCGKCListNew.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; SQL.Add('exec P_View_MainKC2 '); sql.Add('@WSql=' + quotedstr(Trim(FMYName))); Open; end; SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); finally ADOQueryMain.EnableControls; end; FFKHName := ''; end; procedure TfrmMCGKCListNew.InitForm(); begin BegDate.Date := SGetServerDateMBeg(ADOQueryTemp); EndDate.Date := SGetServerDate(ADOQueryTemp); readCxGrid('棉库存1', Tv1, '棉仓库'); readCxGrid('棉库存2', Tv2, '棉仓库'); InitGrid(); end; procedure TfrmMCGKCListNew.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; function TfrmMCGKCListNew.DelData(): Boolean; begin try Result := false; ADOQueryCmd.Connection.BeginTrans; Order_Main.DisableControls; with Order_Main do begin //First; // while Order_Main.Locate('SSel',True,[]) do begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' delete from YS_Money_CR where YFTypeId=''' + trim(Order_Main.fieldbyname('MYID').AsString) + ''' '); sql.Add(' insert into CK_MYSC_CR_Log '); sql.Add(' select * from CK_MYSC_CR where MYID=''' + Trim(Order_Main.fieldbyname('MYID').AsString) + ''''); sql.Add(' UPdate CK_MYSC_CR_Log Set DelTime=getdate(),DelerCode=''' + Trim(DCode) + ''',Deler=''' + Trim(DName) + ''''); sql.Add(' where MYID=''' + Trim(Order_Main.fieldbyname('MYID').AsString) + ''''); sql.Add(' Delete from CK_MYSC_CR where MYID=''' + Trim(Order_Main.fieldbyname('MYID').AsString) + ''''); ExecSQL; end; Order_Main.Delete; end; end; Order_Main.EnableControls; ADOQueryCmd.Connection.CommitTrans; Result := True; except ADOQueryCmd.Connection.RollbackTrans; Result := False; Application.MessageBox('数据删除异常!', '提示', 0); end; end; procedure TfrmMCGKCListNew.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; TcxGridToExcel(Self.Caption, cxGrid1); end; procedure TfrmMCGKCListNew.TBRafreshClick(Sender: TObject); begin InitGrid(); TBFind.Click; end; procedure TfrmMCGKCListNew.TBAddClick(Sender: TObject); begin try frmLLRKInPutMH_MCG := TfrmLLRKInPutMH_MCG.Create(Application); with frmLLRKInPutMH_MCG do begin PState := 0; FMainId := ''; FSubid := ''; FMYType := '采购棉'; FMYTypeFlag := 'CGH'; labMYType.Caption := '(棉)采购'; FML := '棉'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_MCG.Free; end; end; procedure TfrmMCGKCListNew.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmMCGKCListNew.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmMCGKCListNew.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmMCGKCListNew.ToolButton1Click(Sender: TObject); begin try frmLLRKInPutMH_MCG := TfrmLLRKInPutMH_MCG.Create(Application); with frmLLRKInPutMH_MCG do begin PState := 1; FMainId := Trim(Self.Order_Main.fieldbyname('RKNo').AsString); FSubid := Trim(Self.Order_Main.fieldbyname('MYID').AsString); FMYType := Trim(Self.Order_Main.fieldbyname('MYType').AsString); FMYTypeFlag := Trim(Self.Order_Main.fieldbyname('MYTypeFlag').AsString); TBSave.Visible := False; labMYType.Caption := '(棉)采购'; PopupMenu1.Items.Clear; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_MCG.Free; end; end; procedure TfrmMCGKCListNew.CustomerNoNameChange(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 TfrmMCGKCListNew.N2Click(Sender: TObject); begin if Order_Main.IsEmpty then exit; with Order_Main do begin DisableControls; first; while not eof do begin edit; fieldbyname('ssel').Value := false; post; next; end; First; EnableControls; end; end; procedure TfrmMCGKCListNew.N1Click(Sender: TObject); begin NowQty.text := Trim(CDS_Sub.fieldbyname('Qty').AsString); Panel3.Visible := true; cxGrid1.Enabled := False; cxGrid2.Enabled := False; end; procedure TfrmMCGKCListNew.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; procedure TfrmMCGKCListNew.ZJStatusChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmMCGKCListNew.ToolButton4Click(Sender: TObject); var fPrintFile: string; begin if Order_Main.IsEmpty then Exit; if Trim(Order_Main.fieldbyname('Chker').AsString) = '' then exit; fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\检测报告.rmf'; RMXLSExport2 := TRMXLSExport.Create(RMXLSExport2); with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from Test_Report where TRId=''' + Trim(Order_Main.fieldbyname('TRId').AsString) + ''''); Open; end; SCreateCDS20(ADOQueryTemp, CDS_PRT); SInitCDSData20(ADOQueryTemp, CDS_PRT); if FileExists(fPrintFile) then begin //RMVariables['OrderUnit']:=Order_Main.fieldbyname('OrderUnit').Value; RM1.LoadFromFile(fPrintFile); RM1.ShowReport; end else begin Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\检测报告.rmf'), '提示', 0); end; end; procedure TfrmMCGKCListNew.SpeedButton2Click(Sender: TObject); begin try frmLLRKInPut_CG := TfrmLLRKInPut_CG.Create(Application); with frmLLRKInPut_CG do begin PState := 0; FMainId := ''; FMYType := '采购面料'; FMYTypeFlag := 'CGM'; labMYType.Caption := '(面料)采购'; FML := '面料'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPut_CG.Free; end; end; procedure TfrmMCGKCListNew.SpeedButton4Click(Sender: TObject); begin try frmLLRKInPutMH_CG := TfrmLLRKInPutMH_CG.Create(Application); with frmLLRKInPutMH_CG do begin PState := 0; FMainId := ''; FMYType := '采购棉'; FMYTypeFlag := 'CGH'; labMYType.Caption := '(棉)采购'; FML := '棉'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_CG.Free; end; end; procedure TfrmMCGKCListNew.SpeedButton5Click(Sender: TObject); begin try frmLLRKInPutMH_CG := TfrmLLRKInPutMH_CG.Create(Application); with frmLLRKInPutMH_CG do begin PState := 0; FMainId := ''; FMYType := '采购无纺布'; FMYTypeFlag := 'CGW'; labMYType.Caption := '(无纺布)采购'; FML := '无纺布'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_CG.Free; end; end; procedure TfrmMCGKCListNew.SpeedButton3Click(Sender: TObject); begin try frmLLRKInPut_CG := TfrmLLRKInPut_CG.Create(Application); with frmLLRKInPut_CG do begin PState := 0; FMainId := ''; FMYType := '采购线'; FMYTypeFlag := 'CGX'; labMYType.Caption := '(线)采购'; FML := '线'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPut_CG.Free; end; end; procedure TfrmMCGKCListNew.SpeedButton6Click(Sender: TObject); begin try frmLLRKInPut_CG := TfrmLLRKInPut_CG.Create(Application); with frmLLRKInPut_CG do begin PState := 0; FMainId := ''; FMYType := '采购成品'; FMYTypeFlag := 'CGC'; labMYType.Caption := '采购(成品)'; FML := '成品'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPut_CG.Free; end; end; procedure TfrmMCGKCListNew.Button2Click(Sender: TObject); var FReal, JSQty: Double; maxno, Flag: string; begin if TryStrToFloat(AfterQty.Text, FReal) = False then begin Application.MessageBox('米数非法数字!', '提示', 0); Exit; end; GetLSNo(ADOQueryCmd, maxno, 'MH', 'CK_MYSC_CR', 3, 1); JSQty := StrToFloat(AfterQty.Text) - StrToFloat(NowQty.Text); if JSQty > 0 then begin Flag := '加'; end else begin Flag := '减'; JSQty := JSQty * - 1; end; with ADOQueryTemp do begin close; sql.Clear; sql.Add('insert into CK_MYSC_CR'); sql.Add('(MYType,MYTypeFlag,MYID,CRTime,CRQtyFlag,CRFlag,CRType,MYCode,MYName,MYMF,MYKZ,Qty'); sql.Add(',KHNo,KHName,Filler,FillerCode,Filltime,JCDanWei,JCNo,SJLX) values('); sql.Add(quotedstr(trim('盘点棉'))); sql.Add(',' + quotedstr(trim('CGH'))); sql.Add(',' + quotedstr(trim(maxno))); sql.Add(',CONVERT(VARCHAR(10),getdate(),120) '); if Flag = '加' then begin sql.Add(',1'); sql.Add(',' + quotedstr(trim('入库'))); sql.Add(',' + quotedstr(trim('盘点入库'))); end else begin sql.Add(',-1'); sql.Add(',' + quotedstr(trim('出库'))); sql.Add(',' + quotedstr(trim('盘点出库'))); end; sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('MYCode').AsString))); sql.Add(',' + quotedstr(trim(FMYName))); sql.Add(',' + quotedstr(trim(''))); sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('MYKZ').AsString))); sql.Add(',' + FloatToStr(JSQty)); sql.Add(',' + quotedstr(trim(CDS_Sub.fieldbyname('KHNo').AsString))); sql.Add(',' + quotedstr(trim(CDS_Sub.fieldbyname('KHName').AsString))); sql.Add(', ' + quotedstr(trim(DName))); sql.Add(', ' + quotedstr(trim(DCode))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim('绍兴宇昊绣品有限公司'))); sql.Add(',' + quotedstr(trim('GS02'))); sql.Add(',' + quotedstr(trim('新'))); sql.Add(')'); // showmessage(sql.text); execsql; end; CDS_Sub.Edit; CDS_Sub.fieldbyname('Qty').value := AfterQty.Text; Order_Main.Edit; if Flag = '加' then begin Order_Main.fieldbyname('Qty').value := Order_Main.fieldbyname('Qty').value + JSQty; end else begin Order_Main.fieldbyname('Qty').value := Order_Main.fieldbyname('Qty').value - JSQty; end; NowQty.text := ''; AfterQty.text := ''; Panel3.Visible := false; cxGrid1.Enabled := true; cxGrid2.Enabled := true; end; procedure TfrmMCGKCListNew.Button1Click(Sender: TObject); begin try frmGYSList := TfrmGYSList.Create(Application); with frmGYSList do begin KHType.Text := '绣花厂'; KHType.TxtCode := '绣花厂'; if ShowModal = 1 then begin Self.JCDanWeiJC.Text := Trim(frmGYSList.Order_Main.fieldbyname('KHNameJC').AsString); TBFind.Click; end; end; finally frmGYSList.Free; end; end; procedure TfrmMCGKCListNew.Initimage(); begin end; procedure TfrmMCGKCListNew.ToolButton2Click(Sender: TObject); var FKHName, FKHNO: string; begin try frmLLRKInPutMH_MTHCK := TfrmLLRKInPutMH_MTHCK.Create(Self); with frmLLRKInPutMH_MTHCK do begin PState := 0; FMainId := ''; FMYType := '退货棉'; FMYTypeFlag := 'CGH'; labMYType.Caption := '(棉)退货'; FML := '棉'; frmLLRKInPutMH_MTHCK.KHName.Text := Trim(Order_Main.fieldbyname('KHName').AsString); frmLLRKInPutMH_MTHCK.KHNo.Text := Trim(Order_Main.fieldbyname('KHNo').AsString); frmLLRKInPutMH_MTHCK.MYName.Text := Trim(Order_Main.fieldbyname('MYName').AsString); frmLLRKInPutMH_MTHCK.MYCode.Text := Trim(Order_Main.fieldbyname('MYCode').AsString); frmLLRKInPutMH_MTHCK.MYKZ.Text := Trim(Order_Main.fieldbyname('MYKZ').AsString); frmLLRKInPutMH_MTHCK.MYMF.Text := Trim(Order_Main.fieldbyname('MYMF').AsString); frmLLRKInPutMH_MTHCK.GFOrderNo.Text := Trim(Order_Main.fieldbyname('GFOrderNo').AsString); frmLLRKInPutMH_MTHCK.PS.Text := Trim(Order_Main.fieldbyname('PS').AsString); frmLLRKInPutMH_MTHCK.MDJChang.Text := Trim(Order_Main.fieldbyname('MDJChang').AsString); frmLLRKInPutMH_MTHCK.MDKGFlag.Checked := Order_Main.fieldbyname('MDKGFlag').AsBoolean; frmLLRKInPutMH_MTHCK.MDMFlag.Checked := Order_Main.fieldbyname('MDMFlag').AsBoolean; frmLLRKInPutMH_MTHCK.HSFlag.Checked := Order_Main.fieldbyname('HSFlag').AsBoolean; frmLLRKInPutMH_MTHCK.BHSFlag.Checked := Order_Main.fieldbyname('BHSFlag').AsBoolean; frmLLRKInPutMH_MTHCK.MYMDPrice.Text := Order_Main.fieldbyname('MYMDPrice').asstring; frmLLRKInPutMH_MTHCK.Price.Text := floattostr(Order_Main.fieldbyname('Price').asfloat); frmLLRKInPutMH_MTHCK.FFZMYID := Order_Main.fieldbyname('FZMYID').asstring; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_MTHCK.Free; end; end; procedure TfrmMCGKCListNew.N5Click(Sender: TObject); var FFMYType: string; begin if Order_Main.IsEmpty then Exit; try frmLLRKInPutMH_MCG := TfrmLLRKInPutMH_MCG.Create(Application); with frmLLRKInPutMH_MCG do begin PState := 3; FMainId := Trim(Self.Order_Main.fieldbyname('RKNo').AsString); FSubid := Trim(Self.Order_Main.fieldbyname('MYID').AsString); FMYType := Trim(Self.Order_Main.fieldbyname('MYType').AsString); FMYTypeFlag := Trim(Self.Order_Main.fieldbyname('MYTypeFlag').AsString); labMYType.Caption := '(棉)采购'; //Panel5.Visible:=false; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_MCG.Free; end; end; procedure TfrmMCGKCListNew.N6Click(Sender: TObject); var FFMYType: string; begin if Order_Main.IsEmpty then Exit; if Trim(Order_Main.fieldbyname('CRType').AsString) = '采购入库' then begin try frmLLRKInPutMH_MCG := TfrmLLRKInPutMH_MCG.Create(Application); with frmLLRKInPutMH_MCG do begin PState := 2; FMainId := Trim(Self.Order_Main.fieldbyname('RKNo').AsString); FSubid := Trim(Self.Order_Main.fieldbyname('MYID').AsString); FMYType := Trim(Self.Order_Main.fieldbyname('MYType').AsString); FMYTypeFlag := Trim(Self.Order_Main.fieldbyname('MYTypeFlag').AsString); labMYType.Caption := '(棉)采购'; //Panel5.Visible:=false; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_MCG.Free; end; end else if Trim(Order_Main.fieldbyname('CRType').AsString) = '盘点入库' then begin try frmLLRKInPutMH_MPD := TfrmLLRKInPutMH_MPD.Create(Application); with frmLLRKInPutMH_MPD do begin PState := 2; FMainId := Trim(Self.Order_Main.fieldbyname('RKNo').AsString); FSubid := Trim(Self.Order_Main.fieldbyname('MYID').AsString); FMYType := Trim(Self.Order_Main.fieldbyname('MYType').AsString); FMYTypeFlag := Trim(Self.Order_Main.fieldbyname('MYTypeFlag').AsString); labMYType.Caption := '(棉)盘点'; //Panel5.Visible:=false; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLRKInPutMH_MPD.Free; end; end; end; procedure TfrmMCGKCListNew.ToolButton3Click(Sender: TObject); var FKHName, GYSMName, CPMF: string; begin if CDS_Sub.IsEmpty then Exit; if CDS_Sub.Locate('ssel', True, []) = False then begin Application.MessageBox('没有选择数据!', '提示', 0); Exit; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete TbForBatch where DName=' + quotedstr(Trim(DName))); SQL.Add('and MainType=' + quotedstr('棉采购')); // ShowMessage(sql.text); ExecSQL; end; with CDS_Sub do begin First; while CDS_Sub.Locate('SSel', True, []) = True do begin if FKHName = '' then begin FKHName := Trim(Self.CDS_Sub.fieldbyname('KHNameJC').AsString); end; with ADOQuery2 do begin Close; sql.Clear; sql.Add(' select top 1 CPName,BPMF from M_LX A INNER JOIN M_ZDY B on A.MLXID=B.CPID INNER JOIN M_GYS C on A.GYSID =C.GYSID '); sql.Add(' where C.GYSJC=''' + Trim(Self.CDS_Sub.fieldbyname('KHNameJC').AsString) + ''''); sql.Add(' and KHMName =''' + Trim(Self.FMYName) + ''''); sql.Add(' and BPKZ =''' + Trim(Self.Order_Main.fieldbyname('MYKZ').AsString) + ''''); // ShowMessage(sql.text); open; end; GYSMName := Trim(ADOQuery2.fieldbyname('CPName').AsString); CPMF := Trim(ADOQuery2.fieldbyname('BPMF').AsString); with ADOQuery2 do begin Close; sql.Clear; sql.Add(' insert into TbForBatch(DName,MainType,Value1,Value2,Value3,Value4,PSHZ,QtyHZ,Filltime) '); sql.Add(' values( ' + quotedstr(Trim(DName)) + ',' + quotedstr('棉采购') + ',' + quotedstr(Trim(FMYName)) + ''); sql.Add(',' + quotedstr(Trim(Order_Main.fieldbyname('MYKZ').AsString)) + ',' + quotedstr(Trim(GYSMName)) + ',' + quotedstr(Trim(CPMF)) + ',' + Trim(CDS_Sub.fieldbyname('PS').AsString) + ',' + Trim(CDS_Sub.fieldbyname('Qty').AsString) + ',getdate()' + ')'); // ShowMessage(sql.text); ExecSQL; end; if Trim(Self.CDS_Sub.fieldbyname('KHNameJC').AsString) <> Trim(FKHName) then begin Application.MessageBox('不能选择多个供应商', '提示', 0); with CDS_Sub do begin DisableControls; first; while not eof do begin edit; fieldbyname('ssel').Value := FALSE; post; next; end; First; EnableControls; end; Exit; end; CDS_Sub.edit; CDS_Sub.fieldbyname('ssel').Value := FALSE; end; end; frmCGMian := TfrmCGMian.create(self); with frmCGMian do begin PState := 0; GYSName.text := FKHName; // GYSName.Enabled := false; if showmodal = 1 then begin InitGrid(); end; free; end; end; procedure TfrmMCGKCListNew.MYNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmMCGKCListNew.Button3Click(Sender: TObject); begin NowQty.text := ''; AfterQty.text := ''; Panel3.Visible := false; cxGrid1.Enabled := true; cxGrid2.Enabled := true; end; procedure TfrmMCGKCListNew.MYKZChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmMCGKCListNew.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); begin try ADOQueryTemp.DisableControls; with ADOQueryTemp do begin Filtered := False; Close; sql.Clear; SQL.Add('exec P_View_MainKC33 '); sql.Add(' @MYKZ=' + quotedstr(Trim(Order_Main.fieldbyname('MYKZ').AsString))); sql.Add(',@MYName=' + quotedstr(Trim(FMYName))); sql.Add(',@MYCode=' + quotedstr(Trim(Order_Main.fieldbyname('MYCode').AsString))); // ShowMessage(SQL.text); Open; end; SCreateCDS20(ADOQueryTemp, CDS_Sub); SInitCDSData20(ADOQueryTemp, CDS_Sub); finally ADOQueryTemp.EnableControls; end; end; procedure TfrmMCGKCListNew.Tv2DblClick(Sender: TObject); begin ModalResult := 1; end; end.