unit U_MPDCKListNew; 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, dxSkinsCore, dxSkinDarkRoom, dxSkinOffice2013White, dxSkinSharpPlus, dxSkinSpringTime, dxSkinsDefaultPainters, dxSkinscxPCPainter; type TfrmMPDCKListNew = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; Panel1: TPanel; v1Column1: TcxGridDBColumn; Label34: TLabel; v1Column7: TcxGridDBColumn; v1Column9: TcxGridDBColumn; KHNameJC: TEdit; BegDate: TDateTimePicker; EndDate: TDateTimePicker; ToolButton4: TToolButton; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport2: TRMXLSExport; CDS_PRT: TClientDataSet; v1Column17: TcxGridDBColumn; v1Column3: TcxGridDBColumn; labMYType: TLabel; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; CheckBox1: TCheckBox; Button2: TButton; v1MYMDMoney: TcxGridDBColumn; v1JCDanWeiJC: TcxGridDBColumn; Label3: TLabel; JCDanWeiJC: TEdit; Button1: TButton; Label4: TLabel; filler: TEdit; v1filler: TcxGridDBColumn; ODPat: TOpenDialog; IdFTP1: TIdFTP; PopupMenu2: TPopupMenu; MenuItem1: TMenuItem; N3: TMenuItem; MenuItem2: TMenuItem; N4: TMenuItem; Label2: TLabel; Label1: TLabel; MYName: TEdit; Note: TEdit; Button3: TButton; ImageList1: TImageList; v1RKNo: TcxGridDBColumn; v1editer: TcxGridDBColumn; KHNo: TEdit; JCKHNo: TEdit; Label5: TLabel; CGName: TEdit; v1MYName: TcxGridDBColumn; v1MYMF: TcxGridDBColumn; v1MYKZ: TcxGridDBColumn; N5: TMenuItem; N6: TMenuItem; Label6: TLabel; Label7: TLabel; MYMF: TEdit; MYKZ: TEdit; v1MYMDPrice: TcxGridDBColumn; ToolButton3: 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 TBExportClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure CustomerNoNameChange(Sender: TObject); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure ZJStatusChange(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); private canshu1: string; DQdate: TDateTime; procedure InitGrid(); procedure InitForm(); function DelData(): Boolean; { Private declarations } public FFInt, FCloth: Integer; { Public declarations } end; var frmMPDCKListNew: TfrmMPDCKListNew; 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_LLCKInPutMH_MPDNew; {$R *.dfm} procedure TfrmMPDCKListNew.FormDestroy(Sender: TObject); begin frmMPDCKListNew := nil; end; procedure TfrmMPDCKListNew.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmMPDCKListNew.FormCreate(Sender: TObject); begin cxgrid1.Align := alClient; canshu1 := Trim(DParameters1); end; procedure TfrmMPDCKListNew.TBCloseClick(Sender: TObject); begin WriteCxGrid('棉盘点出库', Tv1, '贸易生产管理'); Close; end; procedure TfrmMPDCKListNew.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add('select A.*'); sql.add(',IFFZ=(select Count(B.WBID) from TP_File B where B.WBID=A.RKNo and B.TFType=''采购棉'')'); sql.Add(',KHNameJC=(select Top 1 B.KHNameJC from KH_Main B '); sql.Add(' where isnull(B.KHFlag,'''')=''GYS'' and isnull(B.Valid,'''')=''Y'' and B.KHName=A.KHName)'); sql.Add(',JCDanWeiJC=(select Top 1 B.KHNameJC from KH_Main B '); sql.Add(' where isnull(B.KHFlag,'''')=''GS'' and isnull(B.Valid,'''')=''Y'' and B.KHName=A.JCDanWei)'); sql.Add(',KHNo=(select Top 1 B.KHNo from KH_Main B '); sql.Add(' where isnull(B.KHFlag,'''')=''GYS'' and isnull(B.Valid,'''')=''Y'' and B.KHName=A.KHName)'); sql.Add(',JCKHNo=(select Top 1 B.KHNo from KH_Main B '); sql.Add(' where isnull(B.KHFlag,'''')=''GYS'' and isnull(B.Valid,'''')=''Y'' and B.KHName=A.JCDanWei)'); sql.Add(' from CK_MYSC_CR A '); sql.Add(' where 1=1 '); if CheckBox1.Checked = False then begin sql.Add(' and A.CRTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', now)) + ''''); sql.Add(' and A.CRTime<''' + Trim(FormatDateTime('yyyy-MM-dd', now + 1)) + ''''); BegDate.Visible := false; EndDate.Visible := false; end else begin sql.Add(' and A.CRTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + ''''); sql.Add(' and A.CRTime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + ''''); BegDate.Visible := true; EndDate.Visible := true; end; sql.Add(' and isnull(CRType,'''')=''盘点出库'' and isnull(MYType,'''')=''盘点棉'' '); sql.Add(' and isnull(SJLX,''旧'') =''新'' '); Open; end; SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmMPDCKListNew.InitForm(); begin BegDate.Date := SGetServerDateMBeg(ADOQueryTemp); EndDate.Date := SGetServerDate(ADOQueryTemp); ReadCxGrid('棉盘点出库', Tv1, '贸易生产管理'); v1MYMDPrice.Visible := false; if canshu1 = '高权限' then begin v1MYMDPrice.Visible := true; end; InitGrid(); end; procedure TfrmMPDCKListNew.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 TfrmMPDCKListNew.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 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 TfrmMPDCKListNew.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; TcxGridToExcel(Self.Caption, cxGrid1); end; procedure TfrmMPDCKListNew.TBRafreshClick(Sender: TObject); begin InitGrid(); TBFind.Click; end; procedure TfrmMPDCKListNew.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmMPDCKListNew.CheckBox1Click(Sender: TObject); begin InitGrid(); end; procedure TfrmMPDCKListNew.CheckBox2Click(Sender: TObject); begin TBRafresh.Click; end; procedure TfrmMPDCKListNew.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 TfrmMPDCKListNew.N2Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; if Trim(DParameters1) <> '高权限' then begin if Order_Main.FieldByName('filltime').AsDateTime + 1 < Now then begin application.MessageBox('超过一天不能删除', '提示'); Exit; end; end; if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; if DelData() then begin //Order_Main.Delete; end; end; procedure TfrmMPDCKListNew.N1Click(Sender: TObject); var FFMYType: string; begin if Order_Main.IsEmpty then Exit; if Trim(canshu1) <> '高权限' then begin if Order_Main.FieldByName('filltime').AsDateTime + 1 < Now then begin application.MessageBox('超过一天不能修改', '提示'); Exit; end; end; if Trim(Order_Main.fieldbyname('CRType').AsString) = '盘点出库' then begin try frmLLCKInPutMH_MPDNew := TfrmLLCKInPutMH_MPDNew.Create(Application); with frmLLCKInPutMH_MPDNew 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); labMYType.Caption := '(棉)盘点'; //Panel5.Visible:=false; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLCKInPutMH_MPDNew.Free; end; end; end; procedure TfrmMPDCKListNew.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; procedure TfrmMPDCKListNew.ZJStatusChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmMPDCKListNew.Button2Click(Sender: TObject); begin try frmGYSList := TfrmGYSList.Create(Application); with frmGYSList do begin KHType.Text := '棉厂'; KHType.TxtCode := '棉厂'; if ShowModal = 1 then begin Self.KHNameJC.Text := Trim(frmGYSList.Order_Main.fieldbyname('KHNameJC').AsString); TBFind.Click; end; end; finally frmGYSList.Free; end; end; procedure TfrmMPDCKListNew.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 TfrmMPDCKListNew.Button3Click(Sender: TObject); begin frmBPZDY_LRM := TfrmBPZDY_LRM.create(self); with frmBPZDY_LRM do begin flag := 'MName'; flagName := '棉'; ViewFlag := true; Panel4.Align := alClient; ToolBar3.Visible := false; Button1.Visible := False; if ShowModal = 1 then begin MYName.text := Trim(ClientDataSet1.fieldbyname('BPName').AsString); end; free; end; end; procedure TfrmMPDCKListNew.N5Click(Sender: TObject); begin try frmLLCKInPutMH_MPDNew := TfrmLLCKInPutMH_MPDNew.Create(Application); with frmLLCKInPutMH_MPDNew do begin PState := 0; FMainId := ''; FSubid := ''; FMYType := '盘点棉'; FMYTypeFlag := 'CGH'; labMYType.Caption := '(棉)盘点'; FML := '棉'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLCKInPutMH_MPDNew.Free; end; end; procedure TfrmMPDCKListNew.N6Click(Sender: TObject); var FFMYType: string; begin if Order_Main.IsEmpty then Exit; if Trim(Order_Main.fieldbyname('CRType').AsString) = '盘点出库' then begin try frmLLCKInPutMH_MPDNew := TfrmLLCKInPutMH_MPDNew.Create(Application); with frmLLCKInPutMH_MPDNew 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 frmLLCKInPutMH_MPDNew.Free; end; end; end; procedure TfrmMPDCKListNew.ToolButton3Click(Sender: TObject); begin try frmLLCKInPutMH_MPDNew := TfrmLLCKInPutMH_MPDNew.Create(Application); with frmLLCKInPutMH_MPDNew do begin PState := 0; FMainId := ''; FSubid := ''; FMYType := '盘点棉'; FMYTypeFlag := 'CGH'; labMYType.Caption := '(棉)盘点'; FML := '棉'; if ShowModal = 1 then begin InitGrid(); end; end; finally frmLLCKInPutMH_MPDNew.Free; end; end; end.