unit U_JYOrderCDOne_GDYJCX; 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, MovePanel, cxTextEdit, cxContainer, cxCurrencyEdit,U_SMLB, BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv, RM_E_llPDF, cxPC; type TfrmJYOrderCDOne_GDYJCX = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBClose: TToolButton; Panel1: TPanel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; ConNoHZ: TEdit; Label9: TLabel; Panel4: TPanel; Label11: TLabel; Panel10: TPanel; Image2: TImage; RichEdit1: TRichEdit; v1GenDan: TcxGridDBColumn; v1ZPJZ: TcxGridDBColumn; v1JYQtyUnit: TcxGridDBColumn; v1MPRTCodeName: TcxGridDBColumn; Label5: TLabel; MPRTCodeName: TEdit; v1FactoryName: TcxGridDBColumn; Label12: TLabel; Label13: TLabel; RanChang: TEdit; OrderNo: TEdit; v1ZPPS: TcxGridDBColumn; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; RM2: TRMGridReport; RMDBMain: TRMDBDataSet; ADOQueryPrint: TADOQuery; RadioGroup1: TRadioGroup; CDS_CD: TClientDataSet; RMCD: TRMGridReport; RMDBCD: TRMDBDataSet; CDS_LS: TClientDataSet; CheckBox2: TCheckBox; GenDan: TEdit; Label18: TLabel; ComboBox1: TComboBox; RM3: TRMGridReport; v1ConNoHZ: TcxGridDBColumn; RMXLSExport1: TRMXLSExport; CDS_HZ: TClientDataSet; RMDBHZ: TRMDBDataSet; RMDBPRT: TRMDBDataSet; CDS_PRT: TClientDataSet; CDS_COL: TClientDataSet; RMDBDataSet1: TRMDBDataSet; v1CPPS: TcxGridDBColumn; v1CPJZ: TcxGridDBColumn; CheckBox3: TCheckBox; ADOQuery1: TADOQuery; v1OrderNo: TcxGridDBColumn; v1DJRKPS: TcxGridDBColumn; v1DJRKQty: TcxGridDBColumn; v1ZPlen: TcxGridDBColumn; v1CPlen: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1DJCKQty: TcxGridDBColumn; v1DJCKPS: TcxGridDBColumn; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; cxStyle2: TcxStyle; cxStyle3: TcxStyle; cxStyle4: TcxStyle; 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 OrderNoChange(Sender: TObject); procedure FormShow(Sender: TObject); procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure Image2Click(Sender: TObject); procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure Aorddefstr1Change(Sender: TObject); procedure PRTColorChange(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure v1Column15PropertiesEditValueChanged(Sender: TObject); procedure Button1Click(Sender: TObject); procedure CheckBox2Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure ToolButton7Click(Sender: TObject); procedure ToolButton9Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure ISbaoChange(Sender: TObject); procedure ConNoHZKeyPress(Sender: TObject; var Key: Char); procedure ADateChange(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure CheckBox3Click(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); private DQdate:TDateTime; FLeft,FTop:Integer; procedure InitGrid(); procedure InitGrid10(); procedure InitForm(); function Savedata():Boolean; procedure GetCDSData(); procedure GetBGData(); { Private declarations } public FFInt:Integer; { Public declarations } end; var frmJYOrderCDOne_GDYJCX: TfrmJYOrderCDOne_GDYJCX; implementation uses U_DataLink,U_OrderInPut,U_Fun,U_MJEdit, U_CPDBAO, U_CPGangNo, U_JYOrderCDOne, U_ZDYHelp, U_ProductOrderListSel; {$R *.dfm} procedure TfrmJYOrderCDOne_GDYJCX.FormDestroy(Sender: TObject); begin frmJYOrderCDOne_GDYJCX:=nil; end; procedure TfrmJYOrderCDOne_GDYJCX.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmJYOrderCDOne_GDYJCX.FormCreate(Sender: TObject); begin cxgrid1.Align:=alClient; DQdate:=SGetServerDate(ADOQueryTemp); end; procedure TfrmJYOrderCDOne_GDYJCX.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('检验报告JF',Tv1,'检验管理'); end; procedure TfrmJYOrderCDOne_GDYJCX.InitGrid(); var i:integer; j:Integer; begin checkBox3.Checked:=true; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; sql.Clear; sql.add('select AA.OrderNo,AA.MPRTCodeName,AA.FactoryName,AA.QtyUnit,AA.GenDan,JYQtyUnit,ConNoHZ=[dbo].[F_Get_Order_SubStr](AA.MainId,''ConNoHZ''),Sum(DJRKPS) DJRKPS'); sql.add(',Sum(DJRKQty) DJRKQty,Sum(DJCKPS) DJCKPS,Sum(DJCKQty) DJCKQty,Sum(ZPPS) ZPPS,Sum(ZPJZ) ZPJZ,Sum(ZPlen) ZPlen,Sum(CPPS) CPPS '); //Sum(ZPMZ) ZPMZ, sql.add(',Sum(CPJZ) CPJZ,Sum(CPlen) CPlen from '); //Sum(CPMZ) CPMZ, sql.add('(select A.OrderNo,A.Mainid,A.MPRTCodeName,C.FactoryName,C.QtyUnit,DJRKPS=C.PiQty,DJRKQty=C.Qty'); sql.Add(',DJCKPS=(select Sum(W.PiQty) from CK_SXPB_CR W where W.FZSPID=C.SPID and W.CRFlag=''出库'')'); sql.Add(',DJCKQty=(select Sum(W.Qty) from CK_SXPB_CR W where W.FZSPID=C.SPID and W.CRFlag=''出库'')'); sql.add(',ZPPS=(select Count(W.MJID) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); sql.add(',ZPJZ=(select Sum(W.MJQty4) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); {sql.add(',ZPMZ=(select Sum(W.MJMaoZ) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); }sql.add(',ZPlen=(select Sum(W.MJLen) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); sql.add(',CPPS=(select Count(W.MJID) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); sql.add(',CPJZ=(select Sum(W.MJQty4) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); {sql.add(',CPMZ=(select Sum(W.MJMaoZ) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); }sql.add(',CPlen=(select Sum(W.MJLen) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); sql.add(',JYQtyUnit=(select Top 1 W.MJTypeOther from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID)'); sql.add(',GenDan=(select Top 1 C.PFGenDanPerson from JYOrder_Process B inner join JYOrder_PCS_Sub C on C.PSID=B.PSID '); sql.add(' where B.MainId=A.MainId and B.PSName=''染色'') '); sql.add('from CK_SXPB_CR C '); sql.add(' inner join JYOrder_Main A on C.OrdMainidRK=A.Mainid'); sql.add(' where isnull(C.CKName,'''')=''待检布'' and C.CRFlag=''入库'' and C.CRType=''加工完成'' '); if checkBox3.Checked=true then begin sql.add(' and A.filltime>='''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''' '); sql.add(' and A.Filltime<'''+trim(formatdatetime('yyyy-MM-dd',Enddate.DateTime+1))+''' '); end; sql.add(') AA '); sql.add('group by AA.OrderNo,AA.MPRTCodeName,AA.FactoryName,AA.QtyUnit,AA.MainId,AA.GenDan,AA.JYQtyUnit'); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; //TBFind.Click; end; end; procedure TfrmJYOrderCDOne_GDYJCX.InitGrid10(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('exec P_JYOrder_HZFX :begdate,:enddate,:PState '); Parameters.ParamByName('begdate').Value:='2012-01-01'; Parameters.ParamByName('enddate').Value:='2011-01-01'; Parameters.ParamByName('PState').Value:=3; Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmJYOrderCDOne_GDYJCX.InitForm(); var fsj:String; begin ReadCxGrid('检验报告JF',Tv1,'检验管理'); fsj:='select distinct(Filler) name from WFB_MJJY '; BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-1; EndDate.DateTime:=SGetServerDate10(ADOQueryTemp)-1; //InitGrid(); end; procedure TfrmJYOrderCDOne_GDYJCX.TBFindClick(Sender: TObject); var fsj,fwhere:String; begin if ADOQueryMain.Active=False then Exit; fwhere:=SGetFilters(Panel1,1,2); SDofilter(ADOQueryMain,fwhere); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; procedure TfrmJYOrderCDOne_GDYJCX.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; SelExportData(Tv1,ADOQueryMain,'检验报告'); end; procedure TfrmJYOrderCDOne_GDYJCX.TBRafreshClick(Sender: TObject); begin ConnOHZ.SetFocus; {MovePanel2.Left:=(self.Width-MovePanel2.Width) div 2; MovePanel2.Visible:=True; MovePanel2.Refresh;} InitGrid(); //MovePanel2.Visible:=False; end; procedure TfrmJYOrderCDOne_GDYJCX.OrderNoChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJYOrderCDOne_GDYJCX.FormShow(Sender: TObject); begin InitForm(); if Trim(DParameters2)='管理' then begin //TBManage.Visible:=True; //TBZF.Visible:=True; //ToolButton3.Visible:=true; //TBBN.Visible:=true; //ToolButton12.Visible:=true; //ToolButton1.Visible:=true; //ToolButton9.Visible:=true; //ToolButton4.Visible:=true; //ToolButton6.Visible:=true; //ToolButton5.Visible:=true; //ToolButton7.Visible:=true; //ToolButton11.Visible:=true; //TBAftChkHX.Visible:=True; end; end; procedure TfrmJYOrderCDOne_GDYJCX.Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin ReleaseCapture; TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); end; procedure TfrmJYOrderCDOne_GDYJCX.Image2Click(Sender: TObject); begin Panel4.Visible:=False; end; procedure TfrmJYOrderCDOne_GDYJCX.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin FLeft:=X; FTop:=Y; end; procedure TfrmJYOrderCDOne_GDYJCX.N1Click(Sender: TObject); begin SelOKNo(Order_Main,True); end; procedure TfrmJYOrderCDOne_GDYJCX.N2Click(Sender: TObject); begin SelOKNo(Order_Main,False); end; procedure TfrmJYOrderCDOne_GDYJCX.ToolButton1Click(Sender: TObject); var fPrintFile:string; Txt,fImagePath:string; Moudle: THandle; Makebar:TMakebar; Mixtext:TMixtext; begin if Order_Main.IsEmpty then Exit; if Order_Main.Locate('SSel',True,[])=False then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; Order_Main.DisableControls; with Order_Main do begin First; while not Eof do begin if Order_Main.FieldByName('SSel').AsBoolean=True then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update WFB_MJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); sql.Add(' where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); ExecSQL; end; with ADOQueryPrint do begin Close; SQL.Clear; sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,GangNo=D.RCgangNO,PRTColorEng=E.Note,EE.ConLBName,EE.ConNLBName '); sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTCode,B.MaiTouNote,EE.ConPerson2,EE.conDefstr2,EE.conDefstr3,EE.ConNo,EE.KHConNO,DD.StyleNo,B.LengUnit,C.*,A.* '); sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); sql.add(' ,substring(EE.ConNo,LEN(EE.ConNO)-3,LEN(EE.ConNO)) HS,DD.XHNo,D.PiQty'); sql.Add(' from WFB_MJJY A') ; sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); sql.Add(' inner join CK_SXPB_CR D on D.SPId=A.APId '); sql.add(' left join JYOrderCon_Sub DD on DD.Subid=D.ConCKID '); sql.add(' left join JYOrderCon_Main EE on EE.Mainid=DD.Mainid '); SQL.Add(' where A.MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); Open; end; try Moudle:=LoadLibrary('MakeQRBarcode.dll'); @Makebar:=GetProcAddress(Moudle,'Make'); @Mixtext:=GetProcAddress(Moudle,'MixText'); Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').AsString); fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp' ; if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); if FileExists(fImagePath) then DeleteFile(fImagePath); Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); except application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); exit; end; if Trim(ADOQueryPrint.fieldbyname('ConLBName').AsString)<>'' then fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('ConLBName').AsString)+'.rmf' else fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\通用英文标签.rmf' ; // fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\15029外唛.rmf' ; if FileExists(fPrintFile) then begin RMVariables['QRBARCODE']:=fImagePath; RMVariables['ID']:=trim(ADOQueryPrint.fieldbyname('HS').AsString)+Trim(ADOQueryPrint.fieldbyname('XHNo').AsString); RM2.LoadFromFile(fPrintFile); Rm2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1); // RM2.ShowReport; RM2.PrintReport; { IF Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then begin fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)+'.rmf'; if FileExists(fPrintFile) then begin RMVariables['QRBARCODE']:=fImagePath; RM3.LoadFromFile(fPrintFile); RM3.DefaultCopies:=1; // RM3.ShowReport; RM3.PrintReport; end; end; } end else begin Order_Main.EnableControls; Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\卷标签.rmf'),'提示',0); Exit; end; end; Next; end; end; Order_Main.EnableControls; end; procedure TfrmJYOrderCDOne_GDYJCX.RadioGroup1Click(Sender: TObject); begin TBFind.Click; end; function TfrmJYOrderCDOne_GDYJCX.Savedata():Boolean; var maxno,LLID:string; HXPS:Integer; HXQty,HXMQty:Double; begin HXPS:=0; HXQty:=0; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select Top 1 * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); sql.Add(' and FirstName='''+Trim(Order_Main.fieldbyname('AOrddefstr4').AsString)+''''); Open; end; LLID:=Trim(ADOQueryTemp.fieldbyname('LLID').AsString); if Trim(LLID)='' then begin Result:=False; Application.MessageBox('没有相对应的加工厂!','提示',0); Exit; end; try ADOQueryCmd.Connection.BeginTrans; if GetLSNo(ADOQueryCmd,maxno,'HX','Contract_Cloth_BefChkHX',2,1)=False then begin Result:=False; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取回修最大号失败!','提示',0); Exit; end; with Order_Main do begin First; while not Eof do begin if Order_Main.FieldByName('SSel').AsBoolean=True then begin HXPS:=HXPS+1; HXQty:=HXQty+Order_Main.FieldByName('MJLen').Value; end; Next; end; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add(''); Open; end; except end; end; procedure TfrmJYOrderCDOne_GDYJCX.Aorddefstr1Change(Sender: TObject); begin TBFind.Click; end; procedure TfrmJYOrderCDOne_GDYJCX.PRTColorChange(Sender: TObject); begin TBFind.Click; if Order_Main.IsEmpty=False then begin //InitOrderColor(Trim(Order_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); // InitBCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); end; end; procedure TfrmJYOrderCDOne_GDYJCX.GetCDSData(); begin CDS_CD.FieldByName('MJXH').Value:=CDS_LS.fieldbyname('MJXH').Value; CDS_CD.FieldByName('GangNo').Value:=CDS_LS.fieldbyname('Aorddefstr1').Value; CDS_CD.FieldByName('PRTColor').Value:=CDS_LS.fieldbyname('PRTColor').Value; CDS_CD.FieldByName('PRTEColor').Value:=CDS_LS.fieldbyname('SOrddefstr4').Value; CDS_CD.FieldByName('MJLen').Value:=CDS_LS.fieldbyname('MJLen').Value; CDS_CD.FieldByName('MJJZ').Value:=CDS_LS.fieldbyname('MJQty4').Value; CDS_CD.FieldByName('MJMZ').Value:=CDS_LS.fieldbyname('MJMaoZ').Value; CDS_CD.FieldByName('MJFK').Value:=CDS_LS.fieldbyname('MJFK').Value; CDS_CD.FieldByName('KFQtyHZ').Value:=CDS_LS.fieldbyname('KFQtyHZ').Value; CDS_CD.FieldByName('DengJi').Value:=CDS_LS.fieldbyname('DengJi').Value; CDS_CD.FieldByName('PanDing').Value:=CDS_LS.fieldbyname('PanDing').Value; CDS_CD.FieldByName('MJID').Value:=CDS_LS.fieldbyname('MJID').Value; end; procedure TfrmJYOrderCDOne_GDYJCX.ToolButton2Click(Sender: TObject); var fPrintFile,fZMFile:string; begin if Order_Main.IsEmpty then Exit; with ADOQueryTemp do begin Close; sql.Clear; sql.add('exec P_Print_JYMD1 '); sql.add('@mainID='+quotedstr(Trim(Order_Main.FieldByName('ConNO').AsString))); sql.add(',@begtime='''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''' '); sql.add(',@Endtime='''+trim(formatdatetime('yyyy-MM-dd',Enddate.DateTime+1))+''' '); Open; end; SCreateCDS20(ADOQueryTemp,CDS_HZ); SInitCDSData20(ADOQueryTemp,CDS_HZ); with ADOQuery1 do begin Close; sql.Clear; sql.add('exec P_Print_JYMD1 '); sql.add('@mainID='+quotedstr(Trim(Order_Main.FieldByName('ConNO').AsString))); sql.add(',@begtime='''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''''); sql.add(',@Endtime='''+trim(formatdatetime('yyyy-MM-dd',Enddate.DateTime+1))+''''); sql.add(',@flag=''2'' '); Open; end; SCreateCDS20(ADOQuery1,CDS_COL); SInitCDSData20(ADOQuery1,CDS_COL); if FileExists(fPrintFile) then begin if RMCD.CanExport=true then begin fZMFile:='C:\Users\Administrator\Desktop'; if not DirectoryExists(fZMFile) then begin fZMFile:='C:\Documents and Settings\Administrator\桌面\'+trim(Order_Main.fieldbyname('ConNO').AsString)+'.xls'; end else begin fZMFile:='C:\Users\Administrator\Desktop\'+trim(Order_Main.fieldbyname('ConNO').AsString)+'.XLS'; end; RMCD.ExportTo(RMXLSExport1,fZMFile); end; RMCD.CanExport:=true; RMCD.LoadFromFile(fPrintFile); RMCD.ShowReport; RMCD.CanExport:=False; end else begin Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\检验报告.rmf'),'提示',0); end; end; procedure TfrmJYOrderCDOne_GDYJCX.GetBGData(); var FMJId:string; i,j,z:Integer; begin end; procedure TfrmJYOrderCDOne_GDYJCX.v1Column15PropertiesEditValueChanged( Sender: TObject); var mvalue:string; begin mvalue:=TcxTextEdit(Sender).EditingText; with Order_Main do begin Edit; FieldByName('PanDing').Value:=Trim(mvalue); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPdate WFB_MJJY Set PanDing='''+Trim(mvalue)+''''); SQL.Add(' where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); ExecSQL; end; end; procedure TfrmJYOrderCDOne_GDYJCX.Button1Click(Sender: TObject); var i,J:string; begin end; procedure TfrmJYOrderCDOne_GDYJCX.CheckBox2Click(Sender: TObject); begin SelOKNo(Order_Main,CheckBox2.Checked); end; procedure TfrmJYOrderCDOne_GDYJCX.ToolButton4Click(Sender: TObject); begin frmCPDBao:=TfrmCPDBao.Create(self); with frmCPDBao do begin show; end; // frmCPDBao.Release; end; procedure TfrmJYOrderCDOne_GDYJCX.ToolButton6Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; if Order_Main.Locate('SSel',True,[])=False then begin Application.MessageBox('没有选择数据!','提示',0); Exit; end; try Order_Main.DisableControls; ADOQueryCmd.Connection.BeginTrans; with Order_Main do begin First; while not Eof do begin if Order_Main.FieldByName('SSel').AsBoolean=True then begin IF trim(fieldbyname('mjstr2').AsString)<>'未入库' then begin ADOQueryCmd.Connection.RollbackTrans; Order_Main.EnableControls; application.MessageBox('此条码已入库不能撤销打包!','提示信息',MB_ICONERROR); exit; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update WFB_MJJY Set baoID='''',baoNo='''' '); sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); ExecSQL; end; end; Next; end; end; ADOQueryCmd.Connection.CommitTrans; Order_Main.EnableControls; application.MessageBox('数据撤销成功!','提示信息'); TBRafresh.Click; exit; except ADOQueryCmd.Connection.RollbackTrans; Order_Main.EnableControls; application.MessageBox('数据撤销失败!','提示信息',0); end; end; procedure TfrmJYOrderCDOne_GDYJCX.ToolButton7Click(Sender: TObject); begin frmCPGangNo:=TfrmCPGangNo.Create(self); with frmCPGangNo do begin if showmodal=1 then begin // InitGrid(); end; end; frmCPGangNo.Free; end; procedure TfrmJYOrderCDOne_GDYJCX.ToolButton9Click(Sender: TObject); begin frmSMLB:=TfrmSMLB.create(self); with frmSMLB do begin show; end; end; procedure TfrmJYOrderCDOne_GDYJCX.Button3Click(Sender: TObject); var fPrintFile: string; Txt,fImagePath:string; Moudle: THandle; Makebar:TMakebar; Mixtext:TMixtext; FBaoID:string; begin if Order_Main.IsEmpty then Exit; if trim(Order_Main.FieldByName('BaoID').AsString)='' then begin application.MessageBox('未打包不能打印','提示'); exit; end; with ADOQueryPrint do begin Close; SQL.Clear; sql.Add('select A.Baoid,A.BaoNo,G.ConNO,G.KHConNO,F.StyleNo,A.MJTypeOther as QtyUnit,D.OrderNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,D.LBName,D.NLBName,'); SQL.ADD('C.SOrddefstr4,G.MPrtCode,G.MPRTSpec,G.ConPerson2,G.conDefstr2,G.conDefstr3,D.MaiTouNote,D.LengUnit,'); sql.Add('MprtCodeNameEng=(select top 1 Note from KH_Zdy X where X.zdyName=D.MprtCodeName), '); SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); sql.add(' ,substring(G.ConNo,LEN(G.ConNO)-3,LEN(G.ConNO)) HS,F.XHNo'); sql.Add('from WFB_MJJY A'); sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); sql.add(' left join CK_SXPB_CR E on E.SPID=A.APID'); sql.add(' inner join JYOrderCon_Sub F on F.Subid=E.ConCKID '); sql.add(' inner join JYOrderCon_Main G on G.Mainid=F.Mainid '); SQL.Add('where A.BaoID='''+Trim(Order_Main.fieldbyname('BaoID').AsString)+''''); SQL.ADD('group by A.Baoid,A.BaoNo,G.ConNO,G.KHConNO,F.StyleNo,A.MJTypeOther,D.OrderNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,D.LBName,D.NLBName,'); sql.add('C.SOrddefstr4,G.MPrtCode,G.MPRTSpec,G.ConPerson2,G.conDefstr2,G.conDefstr3,D.MaiTouNote,D.LengUnit,F.XHNo'); Open; end; if ADOQueryPrint.RecordCount>1 then begin Application.MessageBox('打包错误,请重新打包!','提示',0); Exit; end; try Moudle:=LoadLibrary('MakeQRBarcode.dll'); @Makebar:=GetProcAddress(Moudle,'Make'); @Mixtext:=GetProcAddress(Moudle,'MixText'); Txt:=trim(ADOQueryPrint.fieldbyname('baoID').AsString); fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp'; if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); if FileExists(fImagePath) then DeleteFile(fImagePath); Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); except application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); exit; end; end; procedure TfrmJYOrderCDOne_GDYJCX.ISbaoChange(Sender: TObject); begin Tbfind.Click; end; procedure TfrmJYOrderCDOne_GDYJCX.ConNoHZKeyPress(Sender: TObject; var Key: Char); begin if Key=#13 then begin if Length(ConnoHZ.Text)<4 then Exit; {MovePanel2.Visible:=True; MovePanel2.Refresh;} try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; sql.Clear; sql.add('select AA.OrderNo,AA.MPRTCodeName,AA.FactoryName,AA.QtyUnit,AA.GenDan,JYQtyUnit,ConNoHZ=[dbo].[F_Get_Order_SubStr](AA.MainId,''ConNoHZ''),Sum(DJRKPS) DJRKPS'); sql.add(',Sum(DJRKQty) DJRKQty,Sum(DJCKPS) DJCKPS,Sum(DJCKQty) DJCKQty,Sum(ZPPS) ZPPS,Sum(ZPJZ) ZPJZ,Sum(ZPlen) ZPlen,Sum(CPPS) CPPS '); //Sum(ZPMZ) ZPMZ, sql.add(',Sum(CPJZ) CPJZ,Sum(CPlen) CPlen from '); //Sum(CPMZ) CPMZ, sql.add('(select A.OrderNo,A.Mainid,A.MPRTCodeName,C.FactoryName,C.QtyUnit,DJRKPS=C.PiQty,DJRKQty=C.Qty'); sql.Add(',DJCKPS=(select Sum(W.PiQty) from CK_SXPB_CR W where W.FZSPID=C.SPID and W.CRFlag=''出库'')'); sql.Add(',DJCKQty=(select Sum(W.Qty) from CK_SXPB_CR W where W.FZSPID=C.SPID and W.CRFlag=''出库'')'); sql.add(',ZPPS=(select Count(W.MJID) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); sql.add(',ZPJZ=(select Sum(W.MJQty4) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); {sql.add(',ZPMZ=(select Sum(W.MJMaoZ) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); }sql.add(',ZPlen=(select Sum(W.MJLen) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); sql.add(',CPPS=(select Count(W.MJID) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); sql.add(',CPJZ=(select Sum(W.MJQty4) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); {sql.add(',CPMZ=(select Sum(W.MJMaoZ) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); }sql.add(',CPlen=(select Sum(W.MJLen) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); sql.add(',JYQtyUnit=(select Top 1 W.MJTypeOther from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID)'); sql.add(',GenDan=(select Top 1 C.PFGenDanPerson from JYOrder_Process B inner join JYOrder_PCS_Sub C on C.PSID=B.PSID '); sql.add(' where B.MainId=A.MainId and B.PSName=''染色'') '); sql.add('from CK_SXPB_CR C '); sql.add(' inner join JYOrder_Main A on C.OrdMainidRK=A.Mainid'); sql.add(' where isnull(C.CKName,'''')=''待检布'' and C.CRFlag=''入库'' and C.CRType=''加工完成'' '); sql.add(') AA '); sql.add(' where [dbo].[F_Get_Order_SubStr](AA.MainId,''ConNoHZ'') like '''+'%'+trim(ConNOHZ.Text)+'%'+''' '); sql.add('group by AA.OrderNo,AA.MPRTCodeName,AA.FactoryName,AA.QtyUnit,AA.MainId,AA.GenDan,AA.JYQtyUnit'); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally; ADOQueryMain.EnableControls; end; //MovePanel2.Visible:=False; end; end; procedure TfrmJYOrderCDOne_GDYJCX.ADateChange(Sender: TObject); begin initGrid(); end; procedure TfrmJYOrderCDOne_GDYJCX.cxTabControl1Change(Sender: TObject); begin initgrid(); end; procedure TfrmJYOrderCDOne_GDYJCX.CheckBox3Click(Sender: TObject); begin initgrid(); end; procedure TfrmJYOrderCDOne_GDYJCX.OrderNoKeyPress(Sender: TObject; var Key: Char); begin if key=#13 then begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; sql.Clear; sql.add('select AA.OrderNo,AA.MPRTCodeName,AA.FactoryName,AA.QtyUnit,AA.GenDan,JYQtyUnit,ConNoHZ=[dbo].[F_Get_Order_SubStr](AA.MainId,''ConNoHZ''),Sum(DJRKPS) DJRKPS'); sql.add(',Sum(DJRKQty) DJRKQty,Sum(DJCKPS) DJCKPS,Sum(DJCKQty) DJCKQty,Sum(ZPPS) ZPPS,Sum(ZPJZ) ZPJZ,Sum(ZPlen) ZPlen,Sum(CPPS) CPPS '); //Sum(ZPMZ) ZPMZ, sql.add(',Sum(CPJZ) CPJZ,Sum(CPlen) CPlen from '); //Sum(CPMZ) CPMZ, sql.add('(select A.OrderNo,A.Mainid,A.MPRTCodeName,C.FactoryName,C.QtyUnit,DJRKPS=C.PiQty,DJRKQty=C.Qty'); sql.Add(',DJCKPS=(select Sum(W.PiQty) from CK_SXPB_CR W where W.FZSPID=C.SPID and W.CRFlag=''出库'')'); sql.Add(',DJCKQty=(select Sum(W.Qty) from CK_SXPB_CR W where W.FZSPID=C.SPID and W.CRFlag=''出库'')'); sql.add(',ZPPS=(select Count(W.MJID) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); sql.add(',ZPJZ=(select Sum(W.MJQty4) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); {sql.add(',ZPMZ=(select Sum(W.MJMaoZ) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); }sql.add(',ZPlen=(select Sum(W.MJLen) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''正品'')'); sql.add(',CPPS=(select Count(W.MJID) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); sql.add(',CPJZ=(select Sum(W.MJQty4) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); {sql.add(',CPMZ=(select Sum(W.MJMaoZ) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); }sql.add(',CPlen=(select Sum(W.MJLen) from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID and W.MJType=''次品'')'); sql.add(',JYQtyUnit=(select Top 1 W.MJTypeOther from WFB_MJJY W inner join CK_SXPB_CR R on R.SPID=W.APID '); sql.add('and isnull(R.CKName,'''')=''待检布'' and R.CRFlag=''出库'' where R.FZSPID=C.SPID)'); sql.add(',GenDan=(select Top 1 C.PFGenDanPerson from JYOrder_Process B inner join JYOrder_PCS_Sub C on C.PSID=B.PSID '); sql.add(' where B.MainId=A.MainId and B.PSName=''染色'') '); sql.add('from CK_SXPB_CR C '); sql.add(' inner join JYOrder_Main A on C.OrdMainidRK=A.Mainid'); sql.add(' where isnull(C.CKName,'''')=''待检布'' and C.CRFlag=''入库'' and C.CRType=''加工完成'' '); sql.add(') AA '); sql.add(' where AA.OrderNO like '''+'%'+trim(OrderNo.Text)+'%'+''' '); sql.add('group by AA.OrderNo,AA.MPRTCodeName,AA.FactoryName,AA.QtyUnit,AA.MainId,AA.GenDan,AA.JYQtyUnit'); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally; ADOQueryMain.EnableControls; end; end; end; end.