unit U_CKProductBCPinListHZFS; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, cxDropDownEdit, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxCheckBox, Menus, MovePanel, RM_E_llPDF, cxCalendar, Math, Clipbrd, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmCKProductBCPinListHZFS = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBExport: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Label3: TLabel; Label4: TLabel; MPRTCodeName: TEdit; CDS_Main: TClientDataSet; Tv1: TcxGridDBTableView; cxGrid2Level1: TcxGridLevel; cxGrid2: TcxGrid; v2Column1: TcxGridDBColumn; v2Column3: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1Column2: TcxGridDBColumn; Label5: TLabel; orderNo: TEdit; v1Column7: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column9: TcxGridDBColumn; RMXLSExport1: TRMXLSExport; v1Column4: TcxGridDBColumn; v1Column10: TcxGridDBColumn; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; MovePanel2: TMovePanel; DS_JuanPRT: TDataSource; cxGridPopupMenu2: TcxGridPopupMenu; Label11: TLabel; v1Column15: TcxGridDBColumn; v1Column19: TcxGridDBColumn; conNo: TEdit; Label15: TLabel; Label17: TLabel; apid: TEdit; v1Column21: TcxGridDBColumn; begtime: TDateTimePicker; endTime: TDateTimePicker; ADOQueryPrint: TADOQuery; RMDB_Main: TRMDBDataSet; RM3: TRMGridReport; v1Column24: TcxGridDBColumn; Label22: TLabel; KHName: TEdit; PRTColor: TEdit; ganghao: TEdit; Label6: TLabel; Edit1: TEdit; Label7: TLabel; ywy: TEdit; v1Column3: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column11: TcxGridDBColumn; Label8: TLabel; KuanHao: TEdit; v1Column12: TcxGridDBColumn; ToolButton1: TToolButton; ComboBox1: TComboBox; CDS_Label: TClientDataSet; v1Column14: TcxGridDBColumn; v1Column16: TcxGridDBColumn; Label9: TLabel; Label12: TLabel; MPRTCode: TEdit; PRTHX: TEdit; CDS_PRT: TClientDataSet; RMDBDataSet1: TRMDBDataSet; CDS_HZ: TClientDataSet; RMDBHZ: TRMDBDataSet; Tv1Column1: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBRafreshClick(Sender: TObject); procedure ConNoMChange(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure orderNoKeyPress(Sender: TObject; var Key: Char); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure CPTypeChange(Sender: TObject); procedure CRTypeChange(Sender: TObject); procedure edtSMNOKeyPress(Sender: TObject; var Key: Char); procedure FormDestroy(Sender: TObject); procedure ToolButton1Click(Sender: TObject); private FLeft, FTop: Integer; CurrentPage, RecordsNumber: Integer; procedure InitGrid(); { Private declarations } public FCKOrdNo: string; { Public declarations } end; var frmCKProductBCPinListHZFS: TfrmCKProductBCPinListHZFS; implementation uses U_DataLink, U_Fun, U_SysLogHelp; {$R *.dfm} procedure TfrmCKProductBCPinListHZFS.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmCKProductBCPinListHZFS.InitGrid(); var fwhere, Pwhere: string; begin MovePanel2.Left := (self.Width - MovePanel2.Width) div 2; MovePanel2.Visible := True; MovePanel2.Refresh; Pwhere := SGetFilters(Panel1, 1, 2); if trim(Pwhere) <> '' then fwhere := fwhere + ' where ' + trim(Pwhere); try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; sql.Clear; sql.Add(' select AAA.* from ( '); sql.Add(' select AA.* '); sql.Add(' ,B.orderNo,B.MPRTCode,B.MPRTCodeName,B.MPRTMF,B.MPRTKZ,B.conNo,B.KHconNo,B.lidan,B.ywy '); sql.Add(' ,C.PRTColor,C.PRTEColor,C.PRTHX'); sql.Add(' from ( '); sql.Add(' select mjid,NETKGQty,KGQty, Qty, KuangHao, MJYLen,A.RKOrdID,A.MainId,A.SubId,A.QtyUnit,A.APID ,A.ganghao,A.kuanhao '); sql.Add(' ,convert(varchar(10),A.CRTime,120) CRTime,A.CRType'); sql.Add(' from CK_BanCP_CR A '); sql.Add(' where A.CRFlag=''入库'' '); sql.Add(' and A.RKOrdID =' + quotedstr(FCKOrdNo)); sql.Add(')aa'); // sql.Add(' GROUP BY A.RKOrdID,A.MainId,A.SubId,A.QtyUnit,A.kuanhao ,A.ganghao ,A.APID,convert(varchar(10),A.CRTime,120),A.CRType ) AA '); sql.Add(' inner join JYOrder_Main B on AA.MainId=B.MainId inner join JYOrder_Sub C on AA.SubId=C.SubId '); sql.Add(' ) AAA '); sql.Add(fwhere); // ShowMessage(sql.Text); Open; end; SCreateCDS20(ADOQueryMain, CDS_Main); SInitCDSData20(ADOQueryMain, CDS_Main); MovePanel2.Visible := false; finally ADOQueryMain.EnableControls; MovePanel2.Visible := false; end; end; procedure TfrmCKProductBCPinListHZFS.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmCKProductBCPinListHZFS.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmCKProductBCPinListHZFS.TBCloseClick(Sender: TObject); begin WriteCxGrid(trim(self.Caption), Tv1, '成品入库仓库77'); Close; end; procedure TfrmCKProductBCPinListHZFS.FormShow(Sender: TObject); var fsj: string; begin ReadCxGrid(trim(self.Caption), Tv1, '成品入库仓库77'); fsj := 'select distinct(LMName) name from Lbael_Map where LMType=''入库码单'' '; SInitComBoxBySql(ADOQueryCmd, ComboBox1, true, fsj); with ADOQueryTemp do begin Filtered := False; Close; sql.Clear; Sql.Add('select * from Lbael_Map where LMType=''入库码单'''); Open; end; SCreateCDS20(ADOQueryTemp, CDS_Label); SInitCDSData20(ADOQueryTemp, CDS_Label); InitGrid(); end; procedure TfrmCKProductBCPinListHZFS.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; SelExportData(Tv1, ADOQueryMain, ''); end; procedure TfrmCKProductBCPinListHZFS.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, True); end; procedure TfrmCKProductBCPinListHZFS.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmCKProductBCPinListHZFS.orderNoKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin CurrentPage := 1; InitGrid(); end; end; procedure TfrmCKProductBCPinListHZFS.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin Clipboard.SetTextBuf(PChar(Trim(CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); end; procedure TfrmCKProductBCPinListHZFS.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin FLeft := X; FTop := Y; end; procedure TfrmCKProductBCPinListHZFS.CPTypeChange(Sender: TObject); begin CurrentPage := 1; InitGrid(); end; procedure TfrmCKProductBCPinListHZFS.CRTypeChange(Sender: TObject); begin CurrentPage := 1; InitGrid(); end; procedure TfrmCKProductBCPinListHZFS.edtSMNOKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin end; end; procedure TfrmCKProductBCPinListHZFS.FormDestroy(Sender: TObject); begin frmCKProductBCPinListHZFS := nil; end; procedure TfrmCKProductBCPinListHZFS.ToolButton1Click(Sender: TObject); var fPrintFile, fPrintFile10, FMainID, FKHName, FFPNo: string; begin if CDS_Main.IsEmpty then Exit; if CDS_Main.Locate('SSel', True, []) = False then begin Application.MessageBox('没有选择数据', '提示', 0); Exit; end; ExportFtErpFile(trim(ComboBox1.Text) + '.rmf', ADOQueryTemp); with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('SELECT * FROM TBSubID where 1=2 '); open; end; FMainID := ''; CDS_Main.DisableControls; try ADOQueryCmd.Connection.BeginTrans; with CDS_Main do begin First; while not Eof do begin if Fieldbyname('Ssel').AsBoolean then begin ADOQueryCmd.append; ADOQueryCmd.fieldbyname('SubId').Value := Trim(CDS_Main.fieldbyname('MJID').AsString); ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); ADOQueryCmd.post; end; Next; end; end; ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; end; CDS_Main.EnableControls; if CDS_Label.Locate('LMName', trim(ComboBox1.Text), []) then begin with ADOQueryPrint do begin Close; sql.Clear; sql.add('exec ' + trim(CDS_Label.fieldbyname('LMSql').AsString) + ' @Code=' + quotedstr(Trim(DCode))); Open; end; SCreateCDS20(ADOQueryPrint, CDS_PRT); SInitCDSData20(ADOQueryPrint, CDS_PRT); with ADOQueryPrint do begin Close; sql.Clear; sql.add('exec P_Print_CKMD_DXHZ @code=' + quotedstr(Trim(DCode))); Open; end; SCreateCDS20(ADOQueryPrint, CDS_HZ); SInitCDSData20(ADOQueryPrint, CDS_HZ); end; fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ComboBox1.Text) + '.rmf'; if FileExists(fPrintFile) then begin RM3.LoadFromFile(fPrintFile); RM3.ShowReport; end else begin Application.MessageBox(PChar('没有找' + fPrintFile), '提示', 0); end; end; end.