unit U_MCGRKList_XKC; 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, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinDarkRoom, dxSkinOffice2013White, dxSkinSharpPlus, dxSkinSpringTime, dxSkinsDefaultPainters, dxSkinscxPCPainter, cxNavigator; type TfrmMCGRKList_XKC = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; ToolButton1: TToolButton; Panel1: TPanel; ToolButton4: TToolButton; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport2: TRMXLSExport; CDS_PRT: TClientDataSet; Label2: TLabel; MYName: TEdit; labMYType: TLabel; cxGrid2: TcxGrid; TV2: TcxGridDBTableView; cxGridLevel1: TcxGridLevel; V2MYName: TcxGridDBColumn; V2MYCode: TcxGridDBColumn; V2PS: TcxGridDBColumn; V2Qty: TcxGridDBColumn; V2KgQty: TcxGridDBColumn; cxGridPopupMenu2: TcxGridPopupMenu; DataSource2: TDataSource; PB_MX: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; cxStyle2: TcxStyle; Label6: TLabel; MYCode: TEdit; 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 FormShow(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure CustomerNoNameChange(Sender: TObject); procedure N2Click(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure ZJStatusChange(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure Tv1DblClick(Sender: TObject); procedure KHNameChange(Sender: TObject); procedure N1Click(Sender: TObject); procedure MYCodeChange(Sender: TObject); procedure TV2DblClick(Sender: TObject); private canshu1:string; DQdate:TDateTime; procedure InitGrid(); procedure InitForm(); function DelData():Boolean; { Private declarations } public FFInt,FCloth:Integer; { Public declarations } end; var frmMCGRKList_XKC: TfrmMCGRKList_XKC; implementation uses U_DataLink,U_RTFun, U_QCRKInPut,U_ZDYHelp,U_LLRKInPut,U_GYSList,U_RCCKInPut, U_LLRKInPutMH,U_LLRKInPutX,U_LLRKInPut_CG,U_LLRKInPutMH_CG,U_LLRKInPutMH_PBCG, U_LLRKInPutMH_PBKCCG,U_BPZdy_LRPB,U_LLRKInPutMH_MCG,U_BPZdy_LRM,U_MCGRKList_MKC_CX, U_MCGRKList_XKC_CX; {$R *.dfm} procedure TfrmMCGRKList_XKC.FormDestroy(Sender: TObject); begin frmMCGRKList_XKC:=nil; end; procedure TfrmMCGRKList_XKC.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmMCGRKList_XKC.FormCreate(Sender: TObject); begin canshu1:=Trim(DParameters1); end; procedure TfrmMCGRKList_XKC.TBCloseClick(Sender: TObject); begin WriteCxGrid('线库存1',Tv2,'贸易生产管理'); Close; end; procedure TfrmMCGRKList_XKC.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('select AA.* from'); SQL.Add(' (select A.MYCode,A.MYName,A.MYKZ,Sum(MXKCPiQty) PS,Sum(MXKCKgQty) KgQty,Sum(MXKCQty) Qty'); sql.Add(' from CK_MYSC_CR A '); sql.Add(' where isnull(MYTypeFlag,'''')=''CGMX'''); sql.Add(' group by A.MYCode,A.MYName,A.MYKZ '); SQL.Add(' ) AA '); sql.Add(' where AA.PS>0 order by cast(MYKZ as decimal(18,2))'); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmMCGRKList_XKC.InitForm(); begin ReadCxGrid('线库存1',Tv2,'贸易生产管理'); InitGrid(); end; procedure TfrmMCGRKList_XKC.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 TfrmMCGRKList_XKC.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(' 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 CK_MYSC_CR where MYId='''+Trim(Order_Main.fieldbyname('MYId').AsString)+''''); sql.Add(' delete from TP_File where WBID='''+trim(Order_Main.fieldbyname('MYId').AsString)+''' '); sql.Add(' and TFType=''采购坯布'''); 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 TfrmMCGRKList_XKC.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; TcxGridToExcel(Self.Caption,cxGrid2); end; procedure TfrmMCGRKList_XKC.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmMCGRKList_XKC.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmMCGRKList_XKC.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmMCGRKList_XKC.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmMCGRKList_XKC.ToolButton1Click(Sender: TObject); begin try frmMCGRKList_XKC_CX:=TfrmMCGRKList_XKC_CX.Create(Application); with frmMCGRKList_XKC_CX do begin FMYCode:=Trim(Self.Order_Main.fieldbyname('MYCode').AsString); FMYName:=Trim(Self.Order_Main.fieldbyname('MYName').AsString); if ShowModal=1 then begin end; end; finally frmMCGRKList_XKC_CX.Free; end; end; procedure TfrmMCGRKList_XKC.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 TfrmMCGRKList_XKC.N2Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from CK_MYSC_CR_MX where MYID='''+Trim(Order_Main.fieldbyname('MYID').AsString)+''''); Open; end; if ADOQueryTemp.IsEmpty=False then begin Application.MessageBox('已产生明细数据,不能删除!','提示',0); Exit; end; if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; if DelData() then begin //Order_Main.Delete; end; end; procedure TfrmMCGRKList_XKC.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; procedure TfrmMCGRKList_XKC.ZJStatusChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmMCGRKList_XKC.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 TfrmMCGRKList_XKC.Tv1DblClick(Sender: TObject); begin ToolButton1.Click; end; procedure TfrmMCGRKList_XKC.KHNameChange(Sender: TObject); begin SDofilter(ADOQueryCmd,SGetFilters(Panel1,3,4)); SCreateCDS20(ADOQueryCmd,PB_MX); SInitCDSData20(ADOQueryCmd,PB_MX); end; procedure TfrmMCGRKList_XKC.N1Click(Sender: TObject); begin frmRCCKInPut:=TfrmRCCKInPut.Create(self); with frmRCCKInPut do begin if ShowModal=1 then begin end; free; end; end; procedure TfrmMCGRKList_XKC.MYCodeChange(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 TfrmMCGRKList_XKC.TV2DblClick(Sender: TObject); begin ToolButton1.Click; end; end.