unit U_JYOrderCDList; 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, BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv, RM_E_llPDF, Math, Clipbrd, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter, StrUtils; type TfrmJYOrderCDList = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; TBManage: TToolButton; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; TBZF: TToolButton; ToolButton1: TToolButton; RM2: TRMGridReport; RMDB_Main: TRMDBDataSet; ADOQueryPrint: TADOQuery; MovePanel2: TMovePanel; CDS_CD: TClientDataSet; RMCD: TRMGridReport; RMDBCD: TRMDBDataSet; CDS_LS: TClientDataSet; Panel2: TPanel; Label15: TLabel; cxCurrencyEdit1: TcxCurrencyEdit; Button1: TButton; Button2: TButton; RM3: TRMGridReport; ToolButton8: TToolButton; RMXLSExport1: TRMXLSExport; CDS_HZ: TClientDataSet; RMDBHZ: TRMDBDataSet; cxCurrencyEdit2: TcxCurrencyEdit; Label24: TLabel; Label25: TLabel; ComboBox4: TComboBox; RMDBPRT: TRMDBDataSet; CDS_PRT: TClientDataSet; Panel5: TPanel; Label28: TLabel; ComboBox5: TComboBox; Button5: TButton; Button6: TButton; N3: TMenuItem; ToolButton4: TToolButton; X1: TMenuItem; B1: TToolButton; cxPageControl1: TcxPageControl; cxTabSheet1: TcxTabSheet; cxTabSheet2: TcxTabSheet; Panel6: TPanel; Label31: TLabel; LBCPAP: TLabel; BTLP: TButton; BTNP: TButton; TCBNOR: TComboBox; cxTabControl1: TcxTabControl; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1Column22: TcxGridDBColumn; v1Column43: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1Column16: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1Column13: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column20: TcxGridDBColumn; v1Column21: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column32: TcxGridDBColumn; v1Column30: TcxGridDBColumn; v1Column23: TcxGridDBColumn; v1Column12: TcxGridDBColumn; v1Column18: TcxGridDBColumn; v1Column34: TcxGridDBColumn; v1Column27: TcxGridDBColumn; v1Column28: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column10: TcxGridDBColumn; v1Column9: TcxGridDBColumn; Tv1Column3: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column24: TcxGridDBColumn; v1Column14: TcxGridDBColumn; v1Column15: TcxGridDBColumn; v1MKXS: TcxGridDBColumn; v1Column39: TcxGridDBColumn; v1Column29: TcxGridDBColumn; v1Column36: TcxGridDBColumn; v1Column33: TcxGridDBColumn; v1Column31: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; cxTabControl2: TcxTabControl; cxGrid2: TcxGrid; TV2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; cxGridDBColumn4: TcxGridDBColumn; cxGridDBColumn5: TcxGridDBColumn; cxGridDBColumn7: TcxGridDBColumn; cxGridDBColumn8: TcxGridDBColumn; cxGridDBColumn9: TcxGridDBColumn; cxGridDBColumn10: TcxGridDBColumn; cxGridDBColumn14: TcxGridDBColumn; cxGridDBColumn16: TcxGridDBColumn; cxGridDBColumn18: TcxGridDBColumn; cxGridDBColumn19: TcxGridDBColumn; cxGridDBColumn20: TcxGridDBColumn; cxGridDBColumn21: TcxGridDBColumn; cxGridDBColumn22: TcxGridDBColumn; cxGridDBColumn23: TcxGridDBColumn; cxGridDBColumn24: TcxGridDBColumn; cxGridDBColumn30: TcxGridDBColumn; cxGridDBColumn31: TcxGridDBColumn; cxGridDBColumn32: TcxGridDBColumn; cxGridDBColumn38: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; DataSource2: TDataSource; Panel1: TPanel; Label3: TLabel; Label7: TLabel; Label8: TLabel; Label10: TLabel; Label5: TLabel; Label6: TLabel; Label12: TLabel; Label18: TLabel; Label1: TLabel; lbl1: TLabel; Label2: TLabel; Label11: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; OrderNo: TEdit; conNO: TEdit; MJID: TEdit; MPRTCodeName: TEdit; MJStr2: TComboBox; factoryName: TEdit; Filler: TComboBox; PrtColor: TEdit; ComboBox1: TComboBox; IsJYTime: TCheckBox; RKOrdID: TEdit; APID: TEdit; JYXH: TEdit; CustomerNoName: TEdit; Panel7: TPanel; Label9: TLabel; Label13: TLabel; Label17: TLabel; Label19: TLabel; Label26: TLabel; Label27: TLabel; Label29: TLabel; DateTimePicker1: TDateTimePicker; DateTimePicker2: TDateTimePicker; Edit3: TEdit; ComboBox3: TComboBox; Edit6: TEdit; Edit8: TEdit; CheckBox1: TCheckBox; Edit10: TEdit; Edit11: TEdit; Edit12: TEdit; cxGridPopupMenu2: TcxGridPopupMenu; Label4: TLabel; TV2Column1: TcxGridDBColumn; TV2Column2: TcxGridDBColumn; TV2Column3: TcxGridDBColumn; TV2Column4: TcxGridDBColumn; TV2Column5: TcxGridDBColumn; TV2Column6: TcxGridDBColumn; TV2Column7: TcxGridDBColumn; TV2Column8: TcxGridDBColumn; Panel3: TPanel; ComboBox2: TComboBox; TV2Column9: TcxGridDBColumn; Label14: TLabel; Edit1: TEdit; Tv1Column4: TcxGridDBColumn; Tv1Column5: TcxGridDBColumn; mjtype: TComboBox; ToolButton2: TToolButton; 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 Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure TBManageClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure TBZFClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure v1Column15PropertiesEditValueChanged(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure ToolButton12Click(Sender: TObject); procedure BTNPClick(Sender: TObject); procedure TCBNORChange(Sender: TObject); procedure ToolButton8Click(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure conNOKeyPress(Sender: TObject; var Key: Char); procedure MJStr2Change(Sender: TObject); procedure MJTypeChange(Sender: TObject); procedure KHConNOKeyPress(Sender: TObject; var Key: Char); procedure RKOrdIDKeyPress(Sender: TObject; var Key: Char); procedure N3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure X1Click(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure B1Click(Sender: TObject); procedure BTLPClick(Sender: TObject); procedure cxPageControl1Change(Sender: TObject); procedure cxTabControl2Change(Sender: TObject); procedure TV2DblClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure ComboBox3Change(Sender: TObject); procedure Edit12KeyPress(Sender: TObject; var Key: Char); procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); private DQdate: TDateTime; FLeft, FTop: Integer; CurrentPage, RecordsNumber: Integer; procedure InitGrid(WSql: string); procedure InitPAGE(); procedure InitForm(); function Savedata(): Boolean; procedure GetCDSData(); procedure SetStatus(); procedure PrintCKMDG(MRKOrdID: string); { Private declarations } public FFInt: Integer; canshu1: string; { Public declarations } end; implementation uses U_DataLink, U_OrderInPut, U_Fun, U_MJEdit, U_ZDYHelp, U_ProductOrderListSel, U_SysLogHelp2; {$R *.dfm} procedure TfrmJYOrderCDList.InitPage(); begin CurrentPage := 1; case cxPageControl1.ActivePageIndex of 0: begin InitGrid(SGetHintFilters(Panel1, 1, 2)); end; 1: begin InitGrid(SGetHintFilters(Panel7, 1, 2)); end; end; end; procedure TfrmJYOrderCDList.SetStatus(); begin TBManage.Visible := False; TBZF.Visible := False; v1Column15.Options.Focusing := False; ToolButton1.Visible := False; if cxPageControl1.ActivePageIndex = 0 then begin if Trim(canshu1) = '管理' then begin TBManage.Visible := True; TBZF.Visible := True; v1Column15.Options.Focusing := True; ToolButton1.Visible := true; end; case cxTabControl1.TabIndex of 0: begin ToolButton8.Visible := true; ToolButton4.Visible := false; end; 1: begin ToolButton8.Visible := false; ToolButton4.Visible := true; end; 2: begin ToolButton8.Visible := false; ToolButton4.Visible := true; end; end; case cxPageControl1.ActivePageIndex of 0: begin TBManage.Visible := TRUE; TBZF.Visible := TRUE; ToolButton1.Visible := TRUE; ToolButton8.Visible := TRUE; ToolButton4.Visible := TRUE; end; 1: begin TBManage.Visible := False; TBZF.Visible := False; ToolButton1.Visible := False; ToolButton8.Visible := False; ToolButton4.Visible := False; end; end; end else begin case cxTabControl2.TabIndex of 0: begin ToolButton8.Visible := true; ToolButton4.Visible := false; end; 1: begin ToolButton8.Visible := false; ToolButton4.Visible := true; end; 2: begin ToolButton8.Visible := false; ToolButton4.Visible := true; end; end; end; end; procedure TfrmJYOrderCDList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmJYOrderCDList.FormCreate(Sender: TObject); begin cxgrid1.Align := alClient; DQdate := SGetServerDate(ADOQueryTemp); end; procedure TfrmJYOrderCDList.TBCloseClick(Sender: TObject); begin if (cxPageControl1.ActivePageIndex = 0) then begin WriteCxGrid('检验报告JFTV111', Tv1, '检验管理'); end; if (cxPageControl1.ActivePageIndex = 1) then begin WriteCxGrid('检验报告JFTV222', Tv2, '检验管理'); end; Close; end; procedure TfrmJYOrderCDList.PrintCKMDG(MRKOrdID: string); var fPrintFile: string; Txt, fImagePath: string; Moudle: THandle; Makebar: TMakebar; Mixtext: TMixtext; begin // if Order_Main.IsEmpty then // Exit; ExportFtErpFile(COMBOBOX2.TEXT + '.rmf', ADOQueryTemp); with Order_Main do begin with ADOQueryPrint do begin Close; SQL.Clear; sql.Add(' exec P_Print_rKMD_RK '); SQL.Add(' @DCODE=''' + Trim(Trim(MRKOrdID)) + ''''); // ShowMessage(SQL.text); Open; end; // with ADOQueryPrint do // begin // Close; // SQL.Clear; // sql.Add(' exec P_Print_rKMD_hz '); // SQL.Add(' @DCODE=''' + Trim(Trim(DCODE)) + ''''); // // Open; // end; // with ADOQueryPrint do // begin // Close; // SQL.Clear; // sql.Add(' exec P_Print_RKMDGangNo '); // SQL.Add(' @RKOrdID=''' + Trim(MRKOrdID) + ''''); // // SQL.Add(' ,@kj=0'); // // SQL.Add(' ,@kjw=0'); // // Open; // end; try Moudle := LoadLibrary('MakeQRBarcode.dll'); @Makebar := GetProcAddress(Moudle, 'Make'); @Mixtext := GetProcAddress(Moudle, 'MixText'); Txt := Trim(ADOQueryPrint.fieldbyname('RKOrdID').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; fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + COMBOBOX2.Text + '.rmf'; if FileExists(fPrintFile) then begin RMVariables['QRBARCODE'] := fImagePath; RMVariables['DMR'] := Trim(DName); RM2.LoadFromFile(fPrintFile); Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1); // RM2.PrintReport; RM2.ShowReport; end else begin Application.MessageBox(PChar('没有找' + fPrintFile), '提示', 0); Exit; end; end; end; procedure TfrmJYOrderCDList.InitGrid(WSql: string); var fwhere, Pwhere: string; begin case cxPageControl1.ActivePageIndex of 0: begin MovePanel2.Left := (self.Width - MovePanel2.Width) div 2; MovePanel2.Visible := True; MovePanel2.Refresh; WSql := ''; WSql := SGetFilters(Panel1, 1, 2); if trim(WSql) <> '' then begin WSql := ' and ' + trim(WSql); end; if IsJYTime.Checked then begin WSql := WSql + ' AND Filltime>' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)); WSql := WSql + ' and Filltime<=' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)); end; case cxTabControl1.TabIndex of 0: begin WSql := WSql + ' and MJStr2=''未入库'' '; end; 1: begin WSql := WSql + ' and MJStr2<>''未入库'' '; end; end; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add('exec P_Page_ClothInfo '); sql.Add('@pageIndex=' + inttostr(CurrentPage)); sql.Add(',@pageSize=' + inttostr(RecordsNumber)); sql.Add(',@criteria= ' + quotedstr(WSql)); // ShowMessage(SQL.Text); Open; end; SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(Order_Main.FieldByName('TotalCount').AsInteger / RecordsNumber)); MovePanel2.Visible := false; finally ADOQueryMain.EnableControls; MovePanel2.Visible := false; end; end; 1: begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; //-ISNULL((SELECT SUM(koufenqty) FROM WFB_MJJY_CD E INNER JOIN WFB_MJJY F ON E.MJID=F.MJID WHERE F.APID=A.APID),0) end ) sql.Clear; SQL.Add('select ISPRINT,gongyi,A.FILLER,conno,APID,OrderNo,RKOrdID,MPRTCodeName,JYCOLOR,KKMF,KKKZ,CustomerNoName,MJType,JYXH,MJTypeOther,mjstr2'); SQL.Add(',SUM(MJQty3)MJQty3, COUNT(*)JS,SUM(MJQty4)MJQty4,SUM(MJMaoZ)MJMaoZ,SUM(MJLen)MJLen,round(SUM(( MJLEN+ISNULL(A.ZKOUMI,0))/0.9144),2)yardage'); SQL.Add(',KMCD= (CASE WHEN MJType=''次品'' then 0 else SUM(MJLen) END ) '); SQL.ADD(',MJLEN1=SUM( MJLEN+ISNULL(A.ZKOUMI,0))'); SQL.Add(',koufenqty=(case when MJType=''次品'' then 0 else SUM(ZKOUMI) end ) '); SQL.Add(',koufenyardage=round(SUM(ZKOUMI)/0.9144,2)'); sql.Add(',crtime=(select top 1 crtime from CK_BanCP_CR E WHERE E.APID=A.APID AND A.RKOrdID=E.RKOrdID AND CRFLAG=''入库'' ORDER BY CRTIME DESC)'); SQL.Add('from WFB_MJJY A INNER JOIN JYOrder_Main B ON A.MAINID=B.MAINID INNER JOIN JYOrder_SUB C ON A.SUBID=C.SUBID '); SQL.Add('INNER JOIN JYOrder_CAR D ON A.APID=D.CARNO WHERE 1=1 '); if Edit12.Text <> '' then begin sql.Add('and CustomerNoName like ' + QuotedStr('%' + Edit12.Text + '%')); end; if Edit3.Text <> '' then begin sql.Add('and OrderNo like ' + QuotedStr('%' + Edit3.Text + '%')); end; if Edit6.Text <> '' then begin sql.Add('and MPRTCodeName like ' + QuotedStr('%' + Edit6.Text + '%')); end; if Edit8.Text <> '' then begin sql.Add('and JYCOLOR like ' + QuotedStr('%' + Edit8.Text + '%')); end; if Edit11.Text <> '' then begin sql.Add('and JYXH like ' + QuotedStr('%' + Edit11.Text + '%')); end; if Edit10.Text <> '' then begin sql.Add('and APID like ' + QuotedStr('%' + Edit10.Text + '%')); end; if ComboBox3.Text <> '' then begin sql.Add('and MJType=' + QuotedStr(ComboBox3.Text)); end; if edit1.Text <> '' then begin sql.Add('and A.FILLER like ' + QuotedStr('%' + Edit1.Text + '%')); end; if IsJYTime.Checked then begin sql.Add('and A.Filltime>' + quotedstr(FormatDateTime('yyyy-MM-dd', DateTimePicker1.DateTime))); sql.Add('and A.Filltime<=' + quotedstr(FormatDateTime('yyyy-MM-dd', DateTimePicker2.DateTime + 1))); end; case cxTabControl2.TabIndex of 0: begin sql.Add('and MJStr2=''未入库'''); end; 1: begin sql.Add('and MJStr2<>''未入库'''); end; end; SQL.Add(' GROUP BY ISPRINT,gongyi,A.FILLER,conno,APID,OrderNo,RKOrdID,MPRTCodeName,JYCOLOR,KKMF,KKKZ,CustomerNoName,MJType,JYXH,MJTypeOther,mjstr2'); sql.add('order by crtime'); // sql.Add('select * from V_JYHZLIST A WHERE 1=1' + WSql); // ShowMessage(sql.Text); Open; end; SCreateCDS20(ADOQueryMain, CDS_HZ); SInitCDSData20(ADOQueryMain, CDS_HZ); finally ADOQueryMain.EnableControls; end; end; end; end; procedure TfrmJYOrderCDList.InitForm(); var fsj: string; begin ReadCxGrid('检验报告JFTV111', Tv1, '检验管理'); ReadCxGrid('检验报告JFTV222', Tv2, '检验管理'); fsj := 'select distinct(Filler) name from WFB_MJJY '; SInitComBoxBySql(ADOQueryCmd, Filler, False, fsj); // Filler.ItemIndex := Filler.Items.IndexOf(trim(DName)); EndDate.DateTime := SGetServerDate10(ADOQueryTemp); BegDate.DateTime := EndDate.DateTime; DateTimePicker2.DateTime := SGetServerDate10(ADOQueryTemp); DateTimePicker1.DateTime := EndDate.DateTime; //InitGrid(); end; procedure TfrmJYOrderCDList.TBFindClick(Sender: TObject); var fsj, fwhere: string; begin end; procedure TfrmJYOrderCDList.TBExportClick(Sender: TObject); begin case cxPageControl1.ActivePageIndex of 0: begin TcxGridToExcel('打卷明细', CXGRID1); end; 1: begin TcxGridToExcel('打卷汇总', CXGRID2); end; end; end; procedure TfrmJYOrderCDList.TBRafreshClick(Sender: TObject); begin // OrderNo.SetFocus; // CurrentPage := 1; // InitGrid(); CurrentPage := 1; InitPage(); end; procedure TfrmJYOrderCDList.FormShow(Sender: TObject); begin CurrentPage := 1; RecordsNumber := 500; InitForm(); SetStatus(); end; procedure TfrmJYOrderCDList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin FLeft := X; FTop := Y; end; procedure TfrmJYOrderCDList.TBManageClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from CK_BanCP_CR where CRFlag=''出库'' and MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); Open; end; if ADOQueryTemp.IsEmpty = False then begin Order_Main.EnableControls; Application.MessageBox('已产生出库数据不能编辑!', '提示', 0); Exit; end; try frmMJEdit := TfrmMJEdit.Create(Application); with frmMJEdit do begin MJID.Text := Trim(Self.Order_Main.fieldbyname('MJID').AsString); if ShowModal = 1 then begin end; end; finally frmMJEdit.Free; end; end; procedure TfrmJYOrderCDList.N1Click(Sender: TObject); begin SelOKNo(Order_Main, True); end; procedure TfrmJYOrderCDList.N2Click(Sender: TObject); begin SelOKNo(Order_Main, False); end; procedure TfrmJYOrderCDList.TBZFClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; if Order_Main.Locate('ssel', True, []) = False then begin Application.MessageBox('没有选择数据!', '提示', 0); Exit; end; if Application.MessageBox('确定要作废数据吗?作废后数据不能恢复。', '提示', 32 + 4) <> IDYES then Exit; Order_Main.DisableControls; with Order_Main do begin First; while not Eof do begin if Order_Main.FieldByName('SSel').AsBoolean = True then begin with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from CK_BanCP_CR where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''' and CRFlag=''入库'''); Open; end; if ADOQueryTemp.IsEmpty = False then begin Order_Main.EnableControls; Application.MessageBox('已产生入库数据不能删除!', '提示', 0); Exit; end else begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete WFB_MJJY where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('delete CK_BanCP_CR where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('delete CK_BanCP_KC where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('delete WFB_MJJY_CD where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); sql.Add(',' + quotedstr(trim('作废检验数据'))); sql.Add(',' + quotedstr('卷条码:' + trim(Order_Main.fieldbyname('MJID').AsString) + ' 卷号:' + trim(Order_Main.fieldbyname('MJXH').AsString) + ' 卡号:' + trim(Order_Main.fieldbyname('apid').AsString))); sql.Add(',' + quotedstr(trim('成功'))); sql.Add(')'); ExecSQL; end; //更新开卡 with ADOQueryCmd do begin Close; sql.Clear; sql.Add('exec P_UPdate_LCKJY @CarNo=''' + trim(Order_Main.fieldbyname('APID').AsString) + ''''); execsql; end; end; Order_Main.Delete; end else Next; end; end; Order_Main.EnableControls; end; procedure TfrmJYOrderCDList.ToolButton1Click(Sender: TObject); var fPrintFile: string; Txt, fImagePath: string; Txt2, fImagePath2: 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(' EXEC P_Print_JYLab '); SQL.Add(' @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; try Moudle := LoadLibrary('MakeQRBarcode.dll'); @Makebar := GetProcAddress(Moudle, 'Make'); @Mixtext := GetProcAddress(Moudle, 'MixText'); Txt2 := Trim(ADOQueryPrint.fieldbyname('TSEWM').AsString); fImagePath2 := ExtractFilePath(Application.ExeName) + 'image\temp2.bmp'; if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil); if FileExists(fImagePath2) then DeleteFile(fImagePath2); Makebar(pchar(Txt2), Length(Txt2), 3, 3, 0, PChar(fImagePath2), 3); except application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); exit; end; if Trim(ADOQueryPrint.fieldbyname('LbName').AsString) <> '' then begin ExportFtErpFile(Trim(ADOQueryPrint.fieldbyname('LbName').AsString) + '.rmf', ADOQueryTemp); fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ADOQueryPrint.fieldbyname('LbName').AsString) + '.rmf' end else begin ExportFtErpFile('通用英文标签.rmf', ADOQueryTemp); fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\通用英文标签.rmf'; end; if Trim(Order_Main.fieldbyname('MJType').AsString) = '次品' then begin ExportFtErpFile('次品标签.rmf', ADOQueryTemp); fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\次品标签.rmf'; end; if FileExists(fPrintFile) then begin RMVariables['QRBARCODE'] := fImagePath; RMVariables['QRBARCODE2'] := fImagePath2; RM2.LoadFromFile(fPrintFile); Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1); RM2.PrintReport; end else begin Order_Main.EnableControls; Application.MessageBox(PChar('没有找' + fPrintFile), '提示', 0); Exit; end; end; Next; end; end; Order_Main.EnableControls; end; function TfrmJYOrderCDList.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 TfrmJYOrderCDList.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 TfrmJYOrderCDList.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 TfrmJYOrderCDList.Button2Click(Sender: TObject); begin Panel2.Visible := false; end; procedure TfrmJYOrderCDList.Button1Click(Sender: TObject); var i, J: string; begin if Order_Main.IsEmpty then Exit; if Order_Main.Locate('SSel', True, []) = False then begin Application.MessageBox('没有选择数据!', '提示', 0); Exit; end; if trim(ComboBox4.Text) = '' then begin Application.MessageBox('换算类型不能为空!', '提示', 0); Exit; end; i := floattostr(strtofloatdef(trim(cxCurrencyEdit1.Text), 0)); J := floattostr(strtofloatdef(trim(cxCurrencyEdit2.Text), 0)); 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 with ADOQueryCmd do begin Close; sql.Clear; // sql.Add('Update WFB_MJJY Set MKXs='''+trim(i)+''',MJLen=cast(1.00000* MJQty4 *'''+trim(i)+''' as decimal(18,1)) '); if trim(ComboBox4.Text) = '长度换算净重' then begin sql.Add('Update WFB_MJJY Set MKXs=''' + trim(i) + ''',MJQty3=''' + trim(J) + ''',MJQty4=cast(1.00000* MJlen *''' + trim(i) + ''' as decimal(18,1)) '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('Update WFB_MJJY Set MJMaoZ=MJQty4+MJQty3 '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); SQL.Add('Update CK_BanCP_CR set KGQty=B.MJMaoZ from CK_BanCP_CR A'); SQL.Add('INNER JOIN WFB_MJJY B ON B.MJID=A.MJID '); SQL.Add('WHERE A.MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); SQL.Add('Update CK_BanCP_KC set KGQty=B.MJMaoZ from CK_BanCP_KC A'); SQL.Add('INNER JOIN WFB_MJJY B ON B.MJID=A.MJID '); SQL.Add('WHERE A.MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); end; if trim(ComboBox4.Text) = '净重换算长度' then begin sql.Add('Update WFB_MJJY Set MKXs=''' + trim(i) + ''',MJQty3=''' + trim(J) + ''',MJlen=cast(1.00000* MJQty4 *''' + trim(i) + ''' as decimal(18,0)) '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('Update WFB_MJJY Set MJMaoZ=MJQty4+MJQty3 '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); SQL.Add('Update CK_BanCP_CR set KGQty=B.MJMaoZ,Qty=B.MJLen from CK_BanCP_CR A'); SQL.Add('INNER JOIN WFB_MJJY B ON B.MJID=A.MJID '); SQL.Add('WHERE A.MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); SQL.Add('Update CK_BanCP_KC set KGQty=B.MJMaoZ,Qty=B.MJLen from CK_BanCP_KC A'); SQL.Add('INNER JOIN WFB_MJJY B ON B.MJID=A.MJID '); SQL.Add('WHERE A.MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); end; ExecSQL; end; end; Next; end; end; ADOQueryCmd.Connection.CommitTrans; Order_Main.EnableControls; application.MessageBox('数据保存成功!', '提示信息'); Panel2.Visible := false; TBRafresh.Click; exit; except ADOQueryCmd.Connection.RollbackTrans; Order_Main.EnableControls; application.MessageBox('数据保存失败!', '提示信息', 0); end; end; procedure TfrmJYOrderCDList.ToolButton3Click(Sender: TObject); begin Panel2.Left := (self.Width - Panel2.Width) div 2; Panel2.Visible := true; end; procedure TfrmJYOrderCDList.Button6Click(Sender: TObject); begin Panel5.Visible := false; end; procedure TfrmJYOrderCDList.Button5Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; if Order_Main.Locate('SSel', True, []) = False then begin Application.MessageBox('没有选择数据!', '提示', 0); Exit; end; if trim(ComboBox5.Text) = '' 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 with ADOQueryCmd do begin Close; sql.Clear; sql.Add('Update WFB_MJJY Set MJTypeOther=''' + trim(ComboBox5.Text) + ''' '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('Update CK_BanCP_CR Set QtyUnit=''' + trim(ComboBox5.Text) + ''' '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); sql.Add('Update CK_BanCP_KC Set kcQtyUnit=''' + trim(ComboBox5.Text) + ''' '); sql.Add('where MJID=''' + Trim(Order_Main.fieldbyname('MJID').AsString) + ''''); ExecSQL; end; end; Next; end; end; ADOQueryCmd.Connection.CommitTrans; Order_Main.EnableControls; application.MessageBox('数据保存成功!', '提示信息'); Panel2.Visible := false; TBRafresh.Click; exit; except ADOQueryCmd.Connection.RollbackTrans; Order_Main.EnableControls; application.MessageBox('数据保存失败!', '提示信息', 0); end; end; procedure TfrmJYOrderCDList.ToolButton12Click(Sender: TObject); begin Panel5.Visible := true; end; procedure TfrmJYOrderCDList.BTNPClick(Sender: TObject); begin if CurrentPage < Order_Main.FieldByName('TotalCount').AsInteger / RecordsNumber then CurrentPage := CurrentPage + 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; procedure TfrmJYOrderCDList.TCBNORChange(Sender: TObject); begin RecordsNumber := StrToInt(TCBNOR.Text); CurrentPage := 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; procedure TfrmJYOrderCDList.ToolButton8Click(Sender: TObject); var SRKOrdID, WSql: string; begin if cxTabControl1.TabIndex <> 0 then exit; ToolButton8.Enabled := false; ExportFtErpFile('仓库码单.rmf', ADOQueryTemp); if Order_Main.IsEmpty then begin ToolButton8.Enabled := True; Exit; end; if Order_Main.Locate('SSel', True, []) = False then begin ToolButton8.Enabled := True; Exit; end; WSql := ''; Order_Main.DisableControls; with Order_Main do begin First; while not Eof do begin if Order_Main.fieldbyname('SSel').AsBoolean then begin if WSql <> '' then begin WSql := WSql + ',' + (Trim(Order_Main.fieldbyname('MJID').AsString)); end else begin WSql := (Trim(Order_Main.fieldbyname('MJID').AsString)); end; end; Next; end; end; Order_Main.Locate('SSel', True, []); Order_Main.EnableControls; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select distinct MJType from wfb_mjjy A '); SQL.ADD('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]( ' + QUOTEDSTR(WSql)); SQL.ADD(','','') X where X.RTValue=A.mjid )'); open; end; if ADOQueryTemp.RECORDCOUNT > 1 then begin Application.MessageBox('正品次品不能一起入库,请重新操作!', '提示', 0); ToolButton8.Enabled := True; Exit; end; if Application.MessageBox('确定要打印仓库码单么。', '提示', 32 + 4) <> IDYES then begin ToolButton8.Enabled := True; Exit; end; if GetLSNo(ADOQueryTemp, SRKOrdID, 'RK', 'CK_BanCP_CR', 4, 1) = False then begin Application.MessageBox('生成流水号异常!', '提示', 0); ToolButton8.Enabled := True; Exit; end; try Order_Main.DisableControls; ADOQueryCmd.Connection.BeginTrans; with Self.ADOQueryCmd do begin Close; sql.Clear; sql.Add('UPDATE CK_BanCP_CR Set '); sql.add('RKOrdID=' + quotedstr(SRKOrdID)); SQL.ADD('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]( ' + QUOTEDSTR(WSql)); SQL.ADD(','','') X where X.RTValue=CK_BanCP_CR.mjid )'); sql.Add('and CK_BanCP_CR.CRFlag in (''待入库'',''待出库'') '); sql.Add('UPDATE CK_BanCP_CR Set '); sql.add(' CRTime=getdate(),CRType=''检验入库'',CRFlag=''入库'' '); SQL.ADD('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]( ' + QUOTEDSTR(WSql)); SQL.ADD(','','') X where X.RTValue=CK_BanCP_CR.mjid )'); sql.Add('and CK_BanCP_CR.CRFlag=''待入库'' '); sql.Add('UPDATE WFB_MJJY Set MJStr2=''已入库'' '); sql.add(',RKOrdID=' + quotedstr(SRKOrdID)); SQL.ADD('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]( ' + QUOTEDSTR(WSql)); SQL.ADD(','','') X where X.RTValue=WFB_MJJY.MJID )'); SQL.Add('and WFB_MJJY.MJStr2=''未入库'' '); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; Order_Main.EnableControls; if Application.MessageBox('入库完成是否打印码单!!', '提示', 32 + 4) = IDYES then begin PrintCKMDG(Trim(SRKOrdID)); end; TBRafresh.Click; except ADOQueryCmd.Connection.RollbackTrans; Order_Main.EnableControls; ToolButton8.Enabled := true; application.MessageBox('数据撤销失败!', '提示信息', 0); end; ToolButton8.Enabled := true; end; procedure TfrmJYOrderCDList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); end; procedure TfrmJYOrderCDList.conNOKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin CurrentPage := 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; end; procedure TfrmJYOrderCDList.MJStr2Change(Sender: TObject); begin CurrentPage := 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; procedure TfrmJYOrderCDList.MJTypeChange(Sender: TObject); begin // CurrentPage := 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; procedure TfrmJYOrderCDList.KHConNOKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin CurrentPage := 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; end; procedure TfrmJYOrderCDList.RKOrdIDKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin CurrentPage := 1; InitGrid(SGetHintFilters(panel1, 1, 2)); end; end; procedure TfrmJYOrderCDList.N3Click(Sender: TObject); var SSubId, SGangNo: string; begin with Order_Main do begin SSubId := trim(FieldByName('SubId').AsString); SGangNo := trim(FieldByName('JYXH').AsString); Order_Main.DisableControls; first; while not eof do begin if ((SSubId = trim(FieldByName('SubId').AsString)) and (SGangNo = trim(FieldByName('JYXH').AsString))) then begin edit; FieldByName('SSel').value := true; Post; end else begin edit; FieldByName('SSel').value := false; Post; end; Next; end; Order_Main.Locate('SubId;JYXH', VarArrayOf([SSubId, SGangNo]), []); Order_Main.EnableControls; end; end; procedure TfrmJYOrderCDList.ToolButton4Click(Sender: TObject); begin if (cxPageControl1.ActivePageIndex = 0) then begin if Trim(Order_Main.fieldbyname('RKOrdID').AsString) = '' then exit; PrintCKMDG(Trim(Order_Main.fieldbyname('RKOrdID').AsString)); end; if (cxPageControl1.ActivePageIndex = 1) then begin if Trim(CDS_HZ.fieldbyname('RKOrdID').AsString) = '' then exit; PrintCKMDG(Trim(CDS_HZ.fieldbyname('RKOrdID').AsString)); end; end; procedure TfrmJYOrderCDList.X1Click(Sender: TObject); var str, SSubId, SGangNo: string; ZChiShu, DQChiShu: integer; ISSel: boolean; begin ISSel := true; SSubId := trim(Order_Main.FieldByName('SubId').AsString); SGangNo := trim(Order_Main.FieldByName('JYXH').AsString); str := ''; if InputQuery('选择', '请输入数字', str) then begin ZChiShu := strtointdef(str, 0); if ZChiShu <= 0 then exit; with Order_Main do begin Order_Main.DisableControls; first; DQChiShu := 0; while not eof do begin if ((SSubId = trim(FieldByName('SubId').AsString)) and (SGangNo = trim(FieldByName('JYXH').AsString))) then begin edit; FieldByName('SSel').value := ISSel; DQChiShu := DQChiShu + 1; Post; end else begin edit; FieldByName('SSel').value := false; Post; end; if DQChiShu = ZChiShu then ISSel := false; Next; end; Order_Main.Locate('SubId;JYXH', VarArrayOf([SSubId, SGangNo]), []); Order_Main.EnableControls; end; end; end; procedure TfrmJYOrderCDList.cxTabControl1Change(Sender: TObject); begin CurrentPage := 1; // InitGrid(SGetHintFilters(panel1, 1, 2)); SetStatus(); InitGrid(SGetHintFilters(Panel1, 1, 2)); end; procedure TfrmJYOrderCDList.B1Click(Sender: TObject); begin frmSysLogHelp2 := TfrmSysLogHelp2.create(self); with frmSysLogHelp2 do begin fModel := self.caption; // facction:='生产指示单删除'; showmodal; free; end; end; procedure TfrmJYOrderCDList.BTLPClick(Sender: TObject); begin if CurrentPage > 1 then CurrentPage := CurrentPage - 1; InitGrid(SGetHintFilters(Panel1, 1, 2)); end; procedure TfrmJYOrderCDList.cxPageControl1Change(Sender: TObject); begin CurrentPage := 1; case cxPageControl1.ActivePageIndex of 0: begin TBManage.Visible := TRUE; TBZF.Visible := TRUE; ToolButton1.Visible := TRUE; ToolButton8.Visible := TRUE; // ToolButton4.Visible := TRUE; end; 1: begin TBManage.Visible := False; TBZF.Visible := False; ToolButton1.Visible := False; ToolButton8.Visible := False; // ToolButton4.Visible := TRUE; end; end; // InitPage(); end; procedure TfrmJYOrderCDList.cxTabControl2Change(Sender: TObject); begin SetStatus(); InitGrid(SGetHintFilters(panel7, 1, 2)); end; procedure TfrmJYOrderCDList.TV2DblClick(Sender: TObject); var F11: Integer; begin BegDate.DateTime := DateTimePicker1.DateTime; EndDate.DateTime := DateTimePicker2.DateTime; IsJYTime.Checked := CheckBox1.Checked; F11 := cxTabControl2.TabIndex; APID.Text := CDS_HZ.fieldbyname('APID').AsString; jyxh.Text := CDS_HZ.fieldbyname('jyxh').AsString; // MJType.OnChange := nil; MJType.Text := CDS_HZ.fieldbyname('MJType').AsString; cxPageControl1.ActivePageIndex := 0; cxTabControl1.TabIndex := F11; SetStatus(); InitPage(); // InitGrid(SGetHintFilters(panel1, 1, 2)); // AssignmentControls(Panel1, CDS_hz, '1'); end; procedure TfrmJYOrderCDList.ToolButton2Click(Sender: TObject); var fPrintFile: string; Txt, fImagePath: string; Moudle: THandle; Makebar: TMakebar; Mixtext: TMixtext; FAPID: string; begin // if Order_Main.IsEmpty then // Exit; if (cxPageControl1.ActivePageIndex = 0) then begin FAPID := (Trim(Order_Main.fieldbyname('APID').AsString)); end; if (cxPageControl1.ActivePageIndex = 1) then begin FAPID := (Trim(CDS_HZ.fieldbyname('APID').AsString)); end; ExportFtErpFile('疵点报告.rmf', ADOQueryTemp); with Order_Main do begin with ADOQueryPrint do begin Close; SQL.Clear; sql.Add(' exec P_Do_Print_JYBB '); SQL.Add(' @APID=''' + Trim(Trim(FAPID)) + ''''); // ShowMessage(SQL.text); Open; end; // with ADOQueryPrint do // begin // Close; // SQL.Clear; // sql.Add(' exec P_Print_rKMD_hz '); // SQL.Add(' @DCODE=''' + Trim(Trim(DCODE)) + ''''); // // Open; // end; // with ADOQueryPrint do // begin // Close; // SQL.Clear; // sql.Add(' exec P_Print_RKMDGangNo '); // SQL.Add(' @RKOrdID=''' + Trim(MRKOrdID) + ''''); // // SQL.Add(' ,@kj=0'); // // SQL.Add(' ,@kjw=0'); // // Open; // end; try Moudle := LoadLibrary('MakeQRBarcode.dll'); @Makebar := GetProcAddress(Moudle, 'Make'); @Mixtext := GetProcAddress(Moudle, 'MixText'); Txt := Trim(FAPID); 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; fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\疵点报告.rmf'; if FileExists(fPrintFile) then begin RMVariables['QRBARCODE'] := fImagePath; RMVariables['DMR'] := Trim(DName); RM2.LoadFromFile(fPrintFile); Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1); // RM2.PrintReport; RM2.ShowReport; end else begin Application.MessageBox(PChar('没有找' + fPrintFile), '提示', 0); Exit; end; end; end; procedure TfrmJYOrderCDList.ComboBox3Change(Sender: TObject); begin InitGrid(SGetHintFilters(panel7, 1, 2)); end; procedure TfrmJYOrderCDList.Edit12KeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin InitGrid(SGetHintFilters(panel7, 1, 2)); end; end; procedure TfrmJYOrderCDList.TV2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); begin if (AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('ISPRINT').Index]) = '已打印' then ACanvas.Brush.Color := CLYELLOW; end; end.