unit U_OrderInPut; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, cxCurrencyEdit, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Common, RM_Preview, RM_System, RM_Class, RM_GridReport, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmOrderInPut = class(TForm) ToolBar1: TToolBar; TBSave: TToolButton; TBClose: TToolButton; ScrollBox1: TScrollBox; Label1: TLabel; OrderNo: TEdit; ToolBar2: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; v1PRTColor: TcxGridDBColumn; ADOTemp: TADOQuery; ADOCmd: TADOQuery; DataSource1: TDataSource; Order_Sub: TClientDataSet; ADOQuery1: TADOQuery; v1PRTOrderQty: TcxGridDBColumn; Label10: TLabel; v1OrderUnit: TcxGridDBColumn; v1SOrddefstr2: TcxGridDBColumn; ToolButton3: TToolButton; Label3: TLabel; Label14: TLabel; Label12: TLabel; Label13: TLabel; OrdDate: TDateTimePicker; CustomerNoName: TBtnEditC; MPRTMF: TBtnEditC; MPRTKZ: TBtnEditC; Label2: TLabel; MPRTCodeName: TBtnEditC; Label6: TLabel; MPRTSpec: TBtnEditC; Label5: TLabel; MPRTDuiSeGY: TBtnEditC; Label11: TLabel; MPRTSL: TBtnEditC; Label9: TLabel; MPRTNiuDu: TBtnEditC; Label8: TLabel; MPRTPH: TBtnEditC; Label15: TLabel; HZLFactory: TBtnEditC; Label16: TLabel; PBFactory: TBtnEditC; Label17: TLabel; YCLFactory: TBtnEditC; Label18: TLabel; MPRTZHName: TEdit; Label20: TLabel; Label21: TLabel; MPRTChuanY: TBtnEditC; Label22: TLabel; MPRTYaoFeng: TBtnEditC; MPRTJiBenNote: TBtnEditC; Label24: TLabel; MPRTTeBieNote: TBtnEditC; Label25: TLabel; DLYDate: TDateTimePicker; Label26: TLabel; MPRTCode: TBtnEditC; Label27: TLabel; MPRTQtyNote: TBtnEditC; Label28: TLabel; Label29: TLabel; Label30: TLabel; Label31: TLabel; MPRTColorLaoDu1: TBtnEditC; MPRTColorLaoDu2: TBtnEditC; MPRTColorLaoDu3: TBtnEditC; MPRTColorLaoDu4: TBtnEditC; Label32: TLabel; Label33: TLabel; Label34: TLabel; MPRTKQiQiu: TBtnEditC; MPRTDingPoLv: TBtnEditC; MPRTZuRanXing: TBtnEditC; Label35: TLabel; MPRTKuanNO: TBtnEditC; Label38: TLabel; MPRTTangJin: TBtnEditC; Label39: TLabel; OrdDefDate1: TDateTimePicker; Label40: TLabel; OrdDefDate2: TDateTimePicker; Label43: TLabel; OrdPerson2: TBtnEditC; Label44: TLabel; SYRName: TBtnEditC; CPCFBi: TEdit; Label45: TLabel; v1Column1: TcxGridDBColumn; orddefstr1: TBtnEditC; Label47: TLabel; orddefstr2: TEdit; orddefstr3: TEdit; Label48: TLabel; v1Column5: TcxGridDBColumn; Label50: TLabel; Label51: TLabel; OrdDefDate3: TDateTimePicker; OrdDefDate4: TDateTimePicker; cxGrid4: TcxGrid; TV4: TcxGridDBTableView; V4Column1: TcxGridDBColumn; cxGrid4Level1: TcxGridLevel; CDS_CON: TClientDataSet; DSCON: TDataSource; JGType: TBtnEditC; Label53: TLabel; v1Column8: TcxGridDBColumn; orddefstr4: TBtnEditC; Label54: TLabel; orddefstr5: TBtnEditC; Label55: TLabel; orddefstr6: TBtnEditC; Label56: TLabel; orddefstr7: TBtnEditC; Label57: TLabel; v1Column10: TcxGridDBColumn; v1Column3: TcxGridDBColumn; cxGridPopupMenu1: TcxGridPopupMenu; orddefstr8: TBtnEditC; Label59: TLabel; orddefstr9: TBtnEditC; Label58: TLabel; v1Column2: TcxGridDBColumn; MPRTCF: TBtnEditC; Label60: TLabel; Orddefnote4: TBtnEditC; Label61: TLabel; Orddefnote5: TBtnEditC; Label62: TLabel; Orddefnote6: TBtnEditC; Label63: TLabel; Orddefnote7: TBtnEditC; Label64: TLabel; Label65: TLabel; JXSL: TBtnEditC; Label66: TLabel; WXSL: TBtnEditC; v1Column4: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1Column9: TcxGridDBColumn; ToolButton4: TToolButton; Panel1: TPanel; GroupBox1: TGroupBox; Label23: TLabel; Label42: TLabel; Label46: TLabel; Label49: TLabel; PBSCNOTE: TMemo; PBNOTE: TMemo; PBGD: TBtnEditC; PBGC: TBtnEditC; GroupBox4: TGroupBox; Label71: TLabel; Label72: TLabel; Label73: TLabel; Label74: TLabel; Label70: TLabel; HGYSCNOTE1: TMemo; HGYNOTE1: TMemo; HGYGD1: TBtnEditC; HGYGC1: TBtnEditC; HGY1: TBtnEditC; GroupBox2: TGroupBox; Label4: TLabel; Label36: TLabel; Label37: TLabel; Label41: TLabel; Label7: TLabel; RSSCNOTE: TMemo; RSNOTE: TMemo; RSGD: TBtnEditC; RSGC: TBtnEditC; RSPW: TBtnEditC; GroupBox5: TGroupBox; Label76: TLabel; Label77: TLabel; Label78: TLabel; Label79: TLabel; Label80: TLabel; HGYSCNOTE2: TMemo; HGYNOTE2: TMemo; HGYGD2: TBtnEditC; HGYGC2: TBtnEditC; HGY2: TBtnEditC; GroupBox6: TGroupBox; Label81: TLabel; Label82: TLabel; Label85: TLabel; Label75: TLabel; Label83: TLabel; JYSCNOTE: TMemo; JYNOTE: TMemo; JYLD: TBtnEditC; JYBZNOTE: TMemo; JYGD: TBtnEditC; GroupBox3: TGroupBox; Label52: TLabel; Label67: TLabel; Label68: TLabel; Label69: TLabel; YHSCNOTE: TMemo; YHNOTE: TMemo; YHGD: TBtnEditC; YHGC: TBtnEditC; ToolButton5: TToolButton; PBLEVEL: TEdit; Label19: TLabel; RMPreview1: TRMPreview; ADOQueryLabel: TClientDataSet; RMGridReport1: TRMGridReport; LBName: TEdit; Label84: TLabel; NLBName: TEdit; Label86: TLabel; OpenDialog1: TOpenDialog; ADOQueryLabel10: TADOQuery; OrdPerson5: TBtnEditC; Label87: TLabel; ComboBox1: TComboBox; Label88: TLabel; JYFHNOTE: TMemo; Tv1Column1: TcxGridDBColumn; Label89: TLabel; PRTBNote: TMemo; Label90: TLabel; JGFactoryName: TBtnEditC; Label91: TLabel; PIbuType: TBtnEditC; Label92: TLabel; PIbuqty: TEdit; Label93: TLabel; PBsh: TEdit; ConNo: TBtnEditC; Label94: TLabel; JIxing: TEdit; Label95: TLabel; PIchang: TEdit; Label96: TLabel; CFbili: TEdit; ToolButton6: TToolButton; CDS_PB: TClientDataSet; DSPB: TDataSource; Panel2: TPanel; cxGrid2: TcxGrid; Tv6: TcxGridDBTableView; Tv6Column1: TcxGridDBColumn; Tv6Column2: TcxGridDBColumn; Tv6Column3: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; ToolBar3: TToolBar; ToolButton7: TToolButton; ToolButton8: TToolButton; ToolButton9: TToolButton; ToolButton10: TToolButton; Tv1Column2: TcxGridDBColumn; Tv1Column3: TcxGridDBColumn; TV4Column1: TcxGridDBColumn; Label97: TLabel; PIbuZl: TEdit; Tv1Column4: TcxGridDBColumn; Tv1Column5: TcxGridDBColumn; Label98: TLabel; CZZxs: TEdit; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBSaveClick(Sender: TObject); procedure v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure RanFactoryBtnUpClick(Sender: TObject); procedure CustomerNoNameBtnUpClick(Sender: TObject); procedure CustomerNoNameBtnDnClick(Sender: TObject); procedure MPRTCodeNameBtnUpClick(Sender: TObject); procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure OrdDefStr2BtnUpClick(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure YCLFactoryBtnUpClick(Sender: TObject); procedure MPRTSCTeBieNoteBtnUpClick(Sender: TObject); procedure SYRNameBtnUpClick(Sender: TObject); procedure MPRTBZNoteDblClick(Sender: TObject); procedure PBSCNOTEDblClick(Sender: TObject); procedure ConNoChange(Sender: TObject); procedure TV4DblClick(Sender: TObject); procedure v1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure MPRTCodeBtnUpClick(Sender: TObject); procedure RSGCBtnUpClick(Sender: TObject); procedure YHGCBtnUpClick(Sender: TObject); procedure HGYGC1BtnUpClick(Sender: TObject); procedure HGYGC2BtnUpClick(Sender: TObject); procedure RSSCNOTEDblClick(Sender: TObject); procedure YHSCNOTEDblClick(Sender: TObject); procedure HGYSCNOTE1DblClick(Sender: TObject); procedure HGYSCNOTE2DblClick(Sender: TObject); procedure JYSCNOTEDblClick(Sender: TObject); procedure JYBZNOTEDblClick(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure PBNOTEDblClick(Sender: TObject); procedure RSNOTEDblClick(Sender: TObject); procedure YHNOTEDblClick(Sender: TObject); procedure HGYNOTE1DblClick(Sender: TObject); procedure HGYNOTE2DblClick(Sender: TObject); procedure JYNOTEDblClick(Sender: TObject); procedure LBNameDblClick(Sender: TObject); procedure NLBNameDblClick(Sender: TObject); procedure LBNameClick(Sender: TObject); procedure NLBNameClick(Sender: TObject); procedure Label84MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure Label86MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure Label84MouseLeave(Sender: TObject); procedure Label86MouseLeave(Sender: TObject); procedure ScrollBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure NLBNameMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure LBNameMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure ComboBox1Change(Sender: TObject); procedure JYFHNOTEDblClick(Sender: TObject); procedure JGFactoryNameBtnUpClick(Sender: TObject); procedure ConNoBtnDnClick(Sender: TObject); procedure ConNoBtnUpClick(Sender: TObject); procedure ToolButton7Click(Sender: TObject); procedure ToolButton8Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure ToolButton10Click(Sender: TObject); procedure Tv1Column3PropertiesEditValueChanged(Sender: TObject); procedure ConNoKeyPress(Sender: TObject; var Key: Char); procedure CZZxsChange(Sender: TObject); private procedure CJEWM(); procedure InitData(); procedure ZDYHelp(FButn: TcxButtonEdit; LType: string); function SaveData(): Boolean; function getOrderNo(fconNo: string): string; function getOrderNoSO(fconNo: string): string; procedure OpenLabel(); { Private declarations } public PState, CopyInt, PriceFlag: Integer; FMainId, FFMainId, FOrderNo: string; FXS: Integer; canshu1: string; fFlileFlag: string; { Public declarations } end; var frmOrderInPut: TfrmOrderInPut; newh: hwnd; implementation uses U_DataLink, U_ZDYHelp, U_Fun, U_ZDYHelpSel, U_ZdyAttachment, U_ZdyAttachGYS, U_CPManageSel, getpic, U_LabelList; {$R *.dfm} function TfrmOrderInPut.getOrderNo(fconNo: string): string; var str1: string; i: integer; begin str1 := trim(fconNo); with ADOTemp do begin close; sql.Clear; sql.Add('select MainID from JYOrder_Main where orderNo=' + quotedstr(trim(str1))); open; end; if ADOTemp.IsEmpty then //not begin if GetLSNo(ADOCmd, str1, '', 'JYOrder_Main', 4, 22) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; // for i := 1 to 99 do // begin // str1 := trim(fconNo) + rightstr(inttostr(100 + i), 2); // with ADOCmd do // begin // close; // sql.Clear; // sql.Add('select MainID from JYOrder_Main where orderNo=' + quotedstr(trim(str1))); // open; // end; // if ADOCmd.IsEmpty then // break; // end; end; result := str1; end; function TfrmOrderInPut.getOrderNoSO(fconNo: string): string; var str1: string; i: integer; begin str1 := trim(fconNo); with ADOTemp do begin close; sql.Clear; sql.Add('select MainID from JYOrder_Main where orderNo=' + quotedstr(trim(str1))); open; end; if ADOTemp.IsEmpty then //not begin if GetLSNo(ADOCmd, str1, '', 'JYOrder_Main', 4, 11) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; end; result := str1; end; procedure TfrmOrderInPut.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('指示单录入AA', Tv1, '生产指示单管理'); end; procedure TfrmOrderInPut.InitData(); begin OrdDate.DateTime := SGetServerDateTime(ADOTemp); DlyDate.DateTime := OrdDate.DateTime; OrdDefDate1.DateTime := OrdDate.DateTime; OrdDefDate2.DateTime := OrdDate.DateTime; OrdDefDate3.DateTime := OrdDate.DateTime; OrdDefDate4.DateTime := OrdDate.DateTime; with ADOQuery1 do begin Close; SQL.Clear; sql.Add(' select * from JYOrder_Sub where 1=1 '); //sql.Add('exec P_View_OrderSub :begdate,:enddate,:WSQl'); //Parameters.ParamByName('begdate').Value:='2010-10-10'; // Parameters.ParamByName('enddate').Value:='2050-12-24'; if PState = 1 then begin sql.Add(' and MainId=''' + Trim(FMainId) + ''''); end; if PState = 0 then begin sql.Add(' and 1<>1'); end; //ShowMessage(SQL.Text); Open; end; SCreateCDS20(ADOQuery1, Order_Sub); SInitCDSData20(ADOQuery1, Order_Sub); with ADOQuery1 do begin Close; SQL.Clear; sql.Add(' select * from JYOrder_PB where 1=1 '); if PState = 1 then begin sql.Add(' and MainId=''' + Trim(FMainId) + ''''); end; if PState = 0 then begin sql.Add(' and 1<>1'); end; //ShowMessage(SQL.Text); Open; end; SCreateCDS20(ADOQuery1, CDS_PB); SInitCDSData20(ADOQuery1, CDS_PB); with ADOQuery1 do begin Close; sql.Clear; sql.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + ''''); Open; end; conno.OnChange := nil; SCSHDataNew(ADOQuery1, ScrollBox1, 2); SCSHDataNew(ADOQuery1, GroupBox1, 2); SCSHDataNew(ADOQuery1, GroupBox2, 2); SCSHDataNew(ADOQuery1, GroupBox3, 2); SCSHDataNew(ADOQuery1, GroupBox4, 2); SCSHDataNew(ADOQuery1, GroupBox5, 2); SCSHDataNew(ADOQuery1, GroupBox6, 2); conno.OnChange := ConNoChange; if trim(DdataBase) = '查询' then begin CustomerNoName.Text := ''; end; if PState = 0 then begin OrdDate.DateTime := SGetServerDateTime(ADOTemp); DlyDate.DateTime := OrdDate.DateTime; OrdDefDate1.DateTime := OrdDate.DateTime; OrdDefDate2.DateTime := OrdDate.DateTime; OrdDefDate3.DateTime := OrdDate.DateTime; OrdDefDate4.DateTime := OrdDate.DateTime; end else begin end; if CopyInt = 99 then begin PState := 0; FMainId := ''; OrderNo.Text := ''; with Order_Sub do begin First; while not Eof do begin Edit; FieldByName('MainId').Value := ''; FieldByName('SubId').Value := ''; FieldByName('hxFile').Value := ''; Post; Next; end; end; end; if LBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + lbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; RMPreview1.Visible := True; end; procedure TfrmOrderInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string); var FType, ZDYName, FText: string; begin end; procedure TfrmOrderInPut.FormShow(Sender: TObject); begin readCxGrid('指示单录入AA', Tv1, '生产指示单管理'); {if PriceFlag=99 then begin v1PRTPrice.Visible:=False; v1PRTPrice.Hidden:=True; end;} OrderNo.Text := ''; if PState = 1 then begin // Label46.Visible:=true; // orddefnote1.Visible:=true; // Label49.Visible:=true; // EditCnt.Visible:=true; end; fFlileFlag := UserDataFlag + 'HX'; ConNo.Enabled := True; InitData(); end; function TfrmOrderInPut.SaveData(): Boolean; var maxno, Smaxno, PBmaxno: string; begin try ADOCmd.Connection.BeginTrans; ///保存主表 if Trim(FMainId) = '' then begin if GetLSNo(ADOCmd, maxno, 'JM', 'JYOrder_Main', 3, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; if ComboBox1.ItemIndex = 0 then begin OrderNo.Text := 'OK' + getOrderNo(trim(OrderNo.Text)); end; if ComboBox1.ItemIndex = 1 then begin OrderNo.Text := 'OKP' + getOrderNo(trim(OrderNo.Text)); end; if ComboBox1.ItemIndex = 2 then begin OrderNo.Text := 'OKB' + getOrderNo(trim(OrderNo.Text)); end; if ComboBox1.ItemIndex = 3 then begin OrderNo.Text := 'SO' + getOrderNoSO(trim(OrderNo.Text)); end; end else begin maxno := Trim(FMainId); end; with ADOCmd do begin Close; sql.Clear; SQL.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + ''''); Open; end; with ADOCmd do begin if Trim(FMainId) = '' then begin Append; end else begin Edit; end; FieldByName('MainId').Value := Trim(maxno); FieldByName('ordertype').Value := Trim(ComboBox1.Text); SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', ScrollBox1, 2); FieldByName('conno').Value := Trim(ConNo.Text); FieldByName('PBLEVEL').Value := Trim(PBLEVEL.Text); FieldByName('PBSCNOTE').Value := Trim(PBSCNOTE.Text); FieldByName('PBNOTE').Value := Trim(PBNOTE.Text); FieldByName('PBGD').Value := Trim(PBGD.Text); FieldByName('PBGC').Value := Trim(PBGC.Text); FieldByName('PIbuqty').Value := StrToFloatDef(Trim(PIbuqty.Text), 0); FieldByName('PBsh').Value := StrToFloatDef(Trim(PBsh.Text), 0); FieldByName('Orddefstr15').Value := ''; SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', GroupBox2, 2); SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', GroupBox3, 2); SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', GroupBox4, 2); SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', GroupBox5, 2); SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', GroupBox6, 2); if Trim(FMainId) = '' then begin FieldByName('Filler').Value := Trim(DName); end else begin FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); end; Post; end; with ADOCmd do begin Close; sql.Clear; sql.Add('select * from JYOrder_Main where orderno=''' + Trim(OrderNo.Text) + ''''); Open; end; if ADOCmd.RecordCount > 1 then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('订单号重复!', '提示', 0); Exit; end; ///保存子表 with Order_Sub do begin First; while not Eof do begin if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then begin if GetLSNo(ADOCmd, Smaxno, 'JS', 'JYOrder_Sub', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取子流水号失败!', '提示', 0); Exit; end; end else begin Smaxno := Trim(Order_Sub.fieldbyname('SubId').AsString); end; with ADOCmd do begin Close; SQL.Clear; sql.Add('select * from JYOrder_Sub where MainId=''' + Trim(maxno) + ''''); sql.Add(' and SubId=''' + Trim(Smaxno) + ''''); Open; end; with ADOCmd do begin if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then Append else Edit; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(Smaxno); RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrder_Sub', 0); FieldByName('Sorddefstr10').Value := Order_Sub.FieldByName('Sorddefstr10').AsString; fieldbyname('PRTPrice').Value := Order_Sub.FieldByName('PRTPrice').AsFloat; fieldbyname('priceUnit').Value := Order_Sub.FieldByName('priceUnit').AsString; fieldbyname('PRTOrderQty').Value := Order_Sub.FieldByName('PRTOrderQty').AsFloat; fieldbyname('huilv').Value := Order_Sub.FieldByName('huilv').AsFloat; fieldbyname('SordQty1').Value := Order_Sub.FieldByName('SordQty1').AsFloat; fieldbyname('SordQty2').Value := Order_Sub.FieldByName('SordQty2').AsFloat; FieldByName('OrderNo').Value := Trim(orderNo.Text); Post; end; Order_Sub.Edit; Order_Sub.FieldByName('SubId').Value := Trim(Smaxno); Order_Sub.FieldByName('Mainid').Value := Trim(maxno); CJEWM(); CJEWM(); Next; end; //保存纱支 with CDS_PB do begin First; while not Eof do begin if Trim(CDS_PB.fieldbyname('PbId').AsString) = '' then begin if GetLSNo(ADOCmd, PBmaxno, 'PB', 'JYOrder_PB', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取子流水号失败!', '提示', 0); Exit; end; end else begin PBmaxno := Trim(CDS_PB.fieldbyname('PbId').AsString); end; with ADOCmd do begin Close; SQL.Clear; sql.Add('select * from JYOrder_PB where MainId=''' + Trim(maxno) + ''''); sql.Add(' and PbId=''' + Trim(PBmaxno) + ''''); Open; end; with ADOCmd do begin if Trim(CDS_PB.fieldbyname('PbId').AsString) = '' then Append else Edit; FieldByName('MainId').Value := Trim(maxno); FieldByName('PbId').Value := Trim(PBmaxno); RTSetSaveDataCDS(ADOCmd, Tv6, CDS_PB, 'JYOrder_PB', 0); // FieldByName('Sorddefstr10').Value := CDS_PB.FieldByName('Sorddefstr10').AsString; // FieldByName('OrderNo').Value := Trim(orderNo.Text); Post; end; CDS_PB.Edit; CDS_PB.FieldByName('PbId').Value := Trim(PBmaxno); CDS_PB.FieldByName('Mainid').Value := Trim(maxno); Next; end; end; with ADOCmd do begin Close; SQL.Clear; sql.Add('update JYOrder_main set PIbuqty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=''' + Trim(maxno) + ''' )+(pbsh*(select sum(PRTOrderQty) from JYOrder_Sub where MainId=''' + Trim(maxno) + ''')) where MainId=''' + Trim(maxno) + ''''); ExecSQL; end; end; ADOCmd.Connection.CommitTrans; Result := True; except Result := False; ADOCmd.Connection.RollbackTrans; Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmOrderInPut.TBSaveClick(Sender: TObject); begin OrdDate.SetFocus; // if Trim(OrderNo.Text) = '' then // begin // Application.MessageBox('指示单号不能为空!', '提示', 0); // Exit; // end; if ComboBox1.ItemIndex = 0 then begin if Trim(conNo.Text) = '' then begin Application.MessageBox('合同号不能为空!', '提示', 0); Exit; end; end; // if Trim(MPRTQtyNote.Text) = '' then // begin // Application.MessageBox('数量溢短不能为空!', '提示', 0); // Exit; // end; // if Trim(MPRTCode.Text) = '' then // begin // Application.MessageBox('产品编号不能为空!', '提示', 0); // Exit; // end; // if Trim(MPRTCodeName.Text) = '' then // begin // Application.MessageBox('产品名称不能为空!', '提示', 0); // Exit; // end; // if Trim(MPRTPH.Text) = '' then // begin // Application.MessageBox('PH值不能为空!', '提示', 0); // Exit; // end; // if Trim(MPRTDuiSeGY.Text) = '' then // begin // Application.MessageBox('对色光源不能为空!', '提示', 0); // Exit; // end; // if Trim(MPRTColorLaoDu1.Text) = '' then // begin // Application.MessageBox('色牢度不能为空!', '提示', 0); // Exit; // end; // if Trim(MPRTKQiQiu.Text) = '' then // begin // Application.MessageBox('起毛起球不能为空!', '提示', 0); // Exit; // end; // if Trim(PBLEVEL.Text) = '' then // begin // Application.MessageBox('订单品质等级不能为空!', '提示', 0); // Exit; // end; // if Trim(JYBZNOTE.Text) = '' then // begin // Application.MessageBox('包装要求不能为空!', '提示', 0); // Exit; // end; // if Trim(JYFHNOTE.Text) = '' then // begin // Application.MessageBox('发货方式不能为空!', '提示', 0); // Exit; // end; if Order_Sub.IsEmpty then begin Application.MessageBox('明细不能为空!', '提示', 0); Exit; end; // if Trim(OrdPerson1.Text)='' then // begin // Application.MessageBox('跟单员不能为空!','提示',0); // Exit; // end; // if Trim(conNo.Text) <> '' then // begin // with ADOTemp do // begin // close; // sql.Clear; // sql.Add('select mainID from JYOrdercon_main where conNo=''' + trim(conNo.text) + ''''); // open; // if IsEmpty then // begin // application.MessageBox('此合同号不存在!', '提示信息', MB_ICONERROR); // exit; // end; // end; // end; // if PState = 1 then // begin // if Trim(OrderNo.Text) <> Trim(FOrderNo) then // begin // with ADOTemp do // begin // Close; // sql.Clear; // sql.Add('select * from YF_Money_CR where MainId=''' + Trim(FMainId) + ''''); // Open; // end; // if ADOTemp.IsEmpty = False then // begin // Application.MessageBox('已产生数据,不能更改订单号!', '提示', 0); // Exit; // end; // end; // end; if SaveData() then begin Application.MessageBox('保存成功!', '提示', 0); ModalResult := 1; end; end; procedure TfrmOrderInPut.v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'OrdColor'; flagname := '颜色'; V1Name.Caption := '中文名称'; V1Note.Caption := '英文名称'; fnote := True; if ShowModal = 1 then begin Self.Order_Sub.Edit; Self.Order_Sub.FieldByName('PRTColor').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); Self.Order_Sub.FieldByName('SOrddefstr4').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmOrderInPut.ToolButton1Click(Sender: TObject); var i: Integer; begin // if Trim(OrderNo.Text) = '' then // begin // Application.MessageBox('订单号不能为空!', '提示', 0); // Exit; // end; CopyAddRow(Tv1, Order_Sub); with Order_Sub do begin Edit; FieldByName('PRTColor').Value := ''; FieldByName('PRTOrderQty').Value := null; FieldByName('SOrddefstr4').Value := null; FieldByName('SOrddefstr2').Value := null; FieldByName('SOrddefstr10').Value := null; FieldByName('hxFile').Value := ''; Post; end; end; procedure TfrmOrderInPut.ToolButton2Click(Sender: TObject); begin if Order_Sub.IsEmpty then Exit; with ADOTemp do begin Close; sql.Clear; sql.Add('select * from WFB_MJJY where SubId=''' + Trim(Order_Sub.fieldbyname('SubId').AsString) + ''''); Open; end; if ADOTemp.IsEmpty = False then begin Application.MessageBox('已检验不能删除数据!', '提示', 0); Exit; end; if Trim(Order_Sub.fieldbyname('SubId').AsString) <> '' then begin if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOCmd do begin Close; sql.Clear; sql.Add('delete JYOrder_Sub where SubId=''' + Trim(Order_Sub.fieldbyname('SubId').AsString) + ''''); ExecSQL; end; end; Order_Sub.Delete; end; procedure TfrmOrderInPut.RanFactoryBtnUpClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin ZdyType.ItemIndex := ZdyType.Items.IndexOf('加工厂'); ZdyType.Enabled := false; if ShowModal = 1 then begin PBGC.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmOrderInPut.CustomerNoNameBtnUpClick(Sender: TObject); begin try frmZdyAttachment := TfrmZdyAttachment.Create(Application); with frmZdyAttachment do begin fkhType := ''; if self.canshu1 <> '高权限' then canshu1 := '业务员'; if ShowModal = 1 then begin CustomerNoName.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); CustomerNoName.TxtCode := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); end; end; finally frmZdyAttachment.Free; end; end; procedure TfrmOrderInPut.CustomerNoNameBtnDnClick(Sender: TObject); begin TBtnEditC(Sender).Text := ''; TBtnEditC(Sender).TxtCode := ''; end; procedure TfrmOrderInPut.MPRTCodeNameBtnUpClick(Sender: TObject); begin frmCPManageSel := TfrmCPManageSel.Create(self); with frmCPManageSel do begin if showmodal = 1 then begin MPRTCode.Text := CDS_Main.fieldbyname('CYNo').asstring; MPRTCodeName.Text := CDS_Main.fieldbyname('CYName').asstring; MPRTSpec.Text := CDS_Main.fieldbyname('CYSpec').asstring; MPRTMF.Text := CDS_Main.fieldbyname('CYmf').asstring; MPRTKZ.Text := CDS_Main.fieldbyname('CYkz').asstring; end; free; end; tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmOrderInPut.v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var mvalues: string; begin mvalues := tv1.Columns[tv1.Controller.FocusedColumn.index].DataBinding.FieldName; try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'OrderUnit'; flagname := '数量单位'; if ShowModal = 1 then begin Self.Order_Sub.Edit; Self.Order_Sub.FieldByName(mvalues).Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmOrderInPut.v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'PriceUnit'; flagname := '价格单位'; if Trim(DParameters1) <> '高权限' then begin TBAdd.Visible := False; TBEdit.Visible := False; TBDel.Visible := False; end; if ShowModal = 1 then begin Self.Order_Sub.Edit; Self.Order_Sub.FieldByName('PriceUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmOrderInPut.OrdDefStr2BtnUpClick(Sender: TObject); var fsj: string; FWZ: Integer; begin fsj := Trim(TEdit(Sender).Hint); FWZ := Pos('/', fsj); try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if Trim(flag) = 'OrdDefStr2' then begin V1Name.Caption := '中文名称'; V1Note.Caption := '英文名称'; fnote := True; end; if ShowModal = 1 then begin TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); if Trim(flag) = 'MPRTCode' then begin with ADOTemp do begin Close; sql.Clear; sql.Add('select Top 1 * from JYOrder_Main where MPRTCode=''' + Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + ''''); sql.Add(' order by FillTime desc'); Open; end; MPRTCodeName.Text := ADOTemp.fieldbyname('MPRTCodeName').AsString; MPRTMF.Text := ADOTemp.fieldbyname('MPRTMF').AsString; MPRTKZ.Text := ADOTemp.fieldbyname('MPRTKZ').AsString; MPRTSpec.Text := ADOTemp.fieldbyname('MPRTSpec').AsString; end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmOrderInPut.ToolButton3Click(Sender: TObject); begin if Order_Sub.IsEmpty then Exit; OneKeyPost(Tv1, Order_Sub); end; procedure TfrmOrderInPut.YCLFactoryBtnUpClick(Sender: TObject); var fsj: string; FWZ: Integer; begin fsj := Trim(TEdit(Sender).Hint); FWZ := Pos('/', fsj); try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmOrderInPut.MPRTSCTeBieNoteBtnUpClick(Sender: TObject); var fsj: string; FWZ: Integer; begin fsj := Trim(TEdit(Sender).Hint); FWZ := Pos('/', fsj); try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin TEdit(Sender).Text := ReturnStr; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.SYRNameBtnUpClick(Sender: TObject); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'OrdDefStr2'; flagname := '公司抬头'; V1Name.Caption := '中文名称'; V1Note.Caption := '英文名称'; fnote := True; if Trim(DParameters1) <> '高权限' then begin TBAdd.Visible := False; TBEdit.Visible := false; TBDel.Visible := false; TBSave.Visible := false; end; if ShowModal = 1 then begin SYRName.Text := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmOrderInPut.MPRTBZNoteDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin // MPRTBZNote.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; // MPRTBZNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.PBSCNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin PBSCNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; PBSCNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.ConNoChange(Sender: TObject); var mvalue: string; begin mvalue := Trim(conNO.Text); if Length(Trim(mvalue)) > 1 then begin mvalue := '%' + Trim(mvalue) + '%'; with ADOQuery1 do begin Close; sql.Clear; SQL.Add('select distinct Fprtcodename=case when (select MPRTType from JYOrderCon_Main X where X.mainid=A.mainid)=''外销'' then prtcodeCname else prtcodename end'); sql.Add(',A.* from JYOrdercon_Main A inner join JYOrdercon_sub B on B.mainID=A.mainID '); sql.Add('where status=''1'' and not exists(select Conno from JYOrder_Main X where X.conno=A.conno and X.status=''2'' )'); if Trim(canshu1) = '低权限' then sql.Add('and A.ConPerson1=''' + Trim(DName) + ''' or A.Filler=''' + Trim(DName) + ''''); sql.Add('and A.conNO like ' + quotedstr('%' + trim(mvalue) + '%')); // ShowMessage(sql.text); Open; end; SCreateCDS20(ADOQuery1, CDS_Con); SInitCDSData20(ADOQuery1, CDS_CON); // with ADOQuery1 do // begin // Close; // sql.Clear; // sql.Add('select distinct A.conNO,A.khconNo,B.MainID,B.prtCode,B.PrtCodeName,B.Prtspec,CYName=(select top 1 CYName from CP_YDang X where X.CYName=B.PrtCodeName) '); // sql.Add('from JYOrdercon_Main A inner join JYOrdercon_sub B on B.mainID=A.mainID'); // sql.Add('where A.conNO like ' + quotedstr('%' + trim(mvalue) + '%')); // if Trim(canshu1) <> '高权限' then // sql.Add('and A.ConPerson1=''' + Trim(DName) + ''' or A.Filler=''' + Trim(DName) + ''' and A.conNO like ' + quotedstr('%' + trim(mvalue) + '%')); //// ShowMessage(sql.text); // Open; // end; // SCreateCDS20(ADOQuery1, CDS_Con); // SInitCDSData20(ADOQuery1, CDS_CON); if CDS_Con.IsEmpty then cxGrid4.Visible := False else cxGrid4.Visible := True; end; end; procedure TfrmOrderInPut.TV4DblClick(Sender: TObject); begin conno.OnChange := nil; Order_Sub.EmptyDataSet; cxGrid4.Visible := False; conNo.Text := CDS_CON.fieldbyname('conNO').AsString; cxGrid4.Visible := False; with ADOQuery1 do begin Close; sql.Clear; sql.Add('select * from JYOrderCon_Main where mainID=' + quotedstr(trim(CDS_CON.fieldbyname('mainID').AsString))); Open; end; if not ADOQuery1.IsEmpty then begin MPRTZHName.Text := Trim(ADOQuery1.fieldbyname('CPZHName').AsString); MPRTMF.Text := Trim(ADOQuery1.fieldbyname('MPRTMF').AsString); MPRTKZ.Text := Trim(ADOQuery1.fieldbyname('MPRTKZ').AsString); // MPRTChuanY.Text:=Trim(ADOQuery1.fieldbyname('ChuanYangNote').AsString); MPRTQtyNote.Text := Trim(ADOQuery1.fieldbyname('QtyNote').AsString); CustomerNoName.Text := Trim(ADOQuery1.fieldbyname('CustomerNoName').AsString); CustomerNoName.TxtCode := Trim(ADOQuery1.fieldbyname('CustomerNo').AsString); if trim(ADOQuery1.fieldbyname('DLYDate').AsString) = '' then DLYDate.Checked := false else DLYDate.DateTime := ADOQuery1.fieldbyname('DLYDate').Value; OrdPerson2.Text := Trim(ADOQuery1.fieldbyname('ConPerson1').AsString); OrdPerson5.Text := Trim(ADOQuery1.fieldbyname('ConPerson5').AsString); SYRName.Text := Trim(ADOQuery1.fieldbyname('SYRName').AsString); with ADOQuery1 do begin Close; sql.Clear; sql.Add('select A.*,Fprtcodename=case when (select MPRTType from JYOrderCon_Main X where X.mainid=A.mainid)=''外销'' then prtcodeCname else prtcodename end '); sql.Add(',ColorName=(select Top 1 ZdyName from KH_Zdy B where B.Note=A.PRTColor and B.Type=''OrdColor'' ) '); sql.Add(',CYName=(select CYName from CP_YDang X where X.CYNO=A.PrtCode) '); SQL.Add(' from JYOrderCon_Sub A where mainID=''' + (trim(CDS_CON.fieldbyname('mainID').AsString)) + ''' '); sql.Add(' and case when (select MPRTType from JYOrderCon_Main X where X.mainid=A.mainid)=''外销'' then prtcodeCname else prtcodename end=' + quotedstr(trim(CDS_CON.fieldbyname('Fprtcodename').AsString))); // SQL.Add(' mainID=' + quotedstr(trim(CDS_CON.fieldbyname('mainID').AsString))); prtCode=' + quotedstr(trim(CDS_CON.fieldbyname('prtCode').AsString)) // ShowMessage(SQL.text); Open; end; if not ADOQuery1.IsEmpty then begin MPRTCode.Text := Trim(ADOQuery1.fieldbyname('prtcode').AsString); MPRTCodeName.Text := Trim(ADOQuery1.fieldbyname('Fprtcodename').AsString); MPRTspec.Text := Trim(ADOQuery1.fieldbyname('PRTspec').AsString); MPRTMF.Text := Trim(ADOQuery1.fieldbyname('PRTMF').AsString); MPRTKZ.Text := Trim(ADOQuery1.fieldbyname('PRTKZ').AsString); MPRTCF.Text := Trim(ADOQuery1.fieldbyname('PRTCF').AsString); orddefstr8.Text := Trim(ADOQuery1.fieldbyname('SOrdDefStr8').AsString); end; with ADOQuery1 do begin First; while not Eof do begin with Order_Sub do begin Append; FieldByName('prtkuanNO').Value := Trim(ADOQuery1.fieldbyname('prtkuanNO').AsString); FieldByName('PRTColor').Value := Trim(ADOQuery1.fieldbyname('PRTColor').AsString); FieldByName('SOrdDefStr1').Value := Trim(ADOQuery1.fieldbyname('SOrdDefStr1').AsString); FieldByName('SOrdDefStr4').Value := Trim(ADOQuery1.fieldbyname('SOrdDefStr4').AsString); FieldByName('SOrdDefStr6').Value := Trim(ADOQuery1.fieldbyname('SOrdDefStr6').AsString); FieldByName('PRTOrderQty').Value := ADOQuery1.fieldbyname('PRTOrderQty').AsFloat; FieldByName('BYQTY').Value := ADOQuery1.fieldbyname('Prtzl').AsFloat; FieldByName('OrderUnit').Value := Trim(ADOQuery1.fieldbyname('OrderUnit').AsString); FieldByName('PRTPrice').Value := ADOQuery1.fieldbyname('PRTPrice').AsFloat; FieldByName('huilv').Value := ADOQuery1.fieldbyname('huilv').AsFloat; FieldByName('PriceUnit').Value := Trim(ADOQuery1.fieldbyname('PriceUnit').AsString); FieldByName('PRTHX').Value := Trim(ADOQuery1.fieldbyname('PRTHX').AsString); FieldByName('Sorddefstr10').Value := Trim(ADOQuery1.fieldbyname('SUBID').AsString); FieldByName('hxFile').Value := ''; FieldByName('PRTpo').Value := Trim(ADOQuery1.fieldbyname('PRTpo').AsString); Post; end; Next; end; end; end; conno.OnChange := ConNoChange; end; procedure TfrmOrderInPut.v1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin FormGetPic := TFormGetPic.create(self); with FormGetPic do begin fFlileFlag := self.fFlileFlag; fkeyNo := Order_Sub.fieldbyname('HXFile').asstring; pat1 := 'FileName'; pic1 := 'FilesOther'; FTFType := 'HX'; if showmodal = 1 then begin Order_Sub.edit; Order_Sub.fieldbyname('HXFile').Value := trim(fkeyNo); end; free; end; end; procedure TfrmOrderInPut.MPRTCodeBtnUpClick(Sender: TObject); begin frmCPManageSel := TfrmCPManageSel.Create(self); with frmCPManageSel do begin if showmodal = 1 then begin MPRTCode.Text := CDS_Main.fieldbyname('CYNo').asstring; MPRTCodeName.Text := CDS_Main.fieldbyname('CYName').asstring; MPRTSpec.Text := CDS_Main.fieldbyname('CYSpec').asstring; MPRTMF.Text := CDS_Main.fieldbyname('CYmf').asstring; MPRTKZ.Text := CDS_Main.fieldbyname('CYkz').asstring; end; free; end; tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmOrderInPut.RSGCBtnUpClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin ZdyType.ItemIndex := ZdyType.Items.IndexOf('加工厂'); ZdyType.Enabled := false; if ShowModal = 1 then begin RSGC.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmOrderInPut.YHGCBtnUpClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin ZdyType.ItemIndex := ZdyType.Items.IndexOf('加工厂'); ZdyType.Enabled := false; if ShowModal = 1 then begin YHGC.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmOrderInPut.HGYGC1BtnUpClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin ZdyType.ItemIndex := ZdyType.Items.IndexOf('加工厂'); ZdyType.Enabled := false; if ShowModal = 1 then begin HGYGC1.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmOrderInPut.HGYGC2BtnUpClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin ZdyType.ItemIndex := ZdyType.Items.IndexOf('加工厂'); ZdyType.Enabled := false; if ShowModal = 1 then begin HGYGC2.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmOrderInPut.RSSCNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin RSSCNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; RSSCNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.YHSCNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin YHSCNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; YHSCNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.HGYSCNOTE1DblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin HGYSCNOTE1.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; HGYSCNOTE1.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.HGYSCNOTE2DblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin HGYSCNOTE2.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; HGYSCNOTE2.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.JYSCNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin JYSCNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; JYSCNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.JYBZNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin JYBZNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; JYBZNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.ToolButton4Click(Sender: TObject); begin Panel1.Visible := True; ToolButton4.Visible := False; ToolButton5.Visible := True; end; procedure TfrmOrderInPut.ToolButton5Click(Sender: TObject); begin Panel1.Visible := False; ToolButton4.Visible := True; ToolButton5.Visible := False; end; procedure TfrmOrderInPut.PBNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin PBNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; PBNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.RSNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin RSNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; RSNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.YHNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin YHNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; YHNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.HGYNOTE1DblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin HGYNOTE1.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; HGYNOTE1.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.HGYNOTE2DblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin HGYNOTE2.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; HGYNOTE2.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.JYNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin JYNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; JYNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.OpenLabel(); begin if ADOQueryLabel.IsEmpty then exit; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; end; procedure TfrmOrderInPut.LBNameDblClick(Sender: TObject); var maxno: string; begin try frmLabelList := TfrmLabelList.Create(Application); with frmLabelList do begin if ShowModal = 1 then begin Self.LBName.Text := Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString); end; end; finally frmLabelList.Free; end; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + trim(lbname.Text) + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; end; procedure TfrmOrderInPut.NLBNameDblClick(Sender: TObject); var maxno: string; begin try frmLabelList := TfrmLabelList.Create(Application); with frmLabelList do begin if ShowModal = 1 then begin Self.NLBName.Text := Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString); end; end; finally frmLabelList.Free; end; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + trim(nlbname.Text) + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; end; procedure TfrmOrderInPut.LBNameClick(Sender: TObject); begin if LBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + lbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; end; procedure TfrmOrderInPut.NLBNameClick(Sender: TObject); begin if NLBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + nlbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; end; procedure TfrmOrderInPut.Label84MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if LBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + lbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; RMPreview1.Visible := True; end; procedure TfrmOrderInPut.Label86MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if NLBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + nlbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; RMPreview1.Visible := True; end; procedure TfrmOrderInPut.Label84MouseLeave(Sender: TObject); begin RMPreview1.Visible := False; end; procedure TfrmOrderInPut.Label86MouseLeave(Sender: TObject); begin RMPreview1.Visible := False; end; procedure TfrmOrderInPut.ScrollBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin RMPreview1.Visible := False; end; procedure TfrmOrderInPut.NLBNameMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if NLBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + nlbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; RMPreview1.Visible := True; end; procedure TfrmOrderInPut.LBNameMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if LBName.Text = '' then exit; with ADOQueryLabel10 do begin Close; SQL.Clear; sql.Add('select * from P_Label'); sql.Add('where valid=''Y'''); sql.Add(' and LabelCaption=''' + lbname.Text + ''''); Open; end; with RMGridReport1 do begin LoadFromBlobField(tblobfield(ADOQueryLabel10.fieldbyname('labelFile'))); //Preview :=RMPreview1; ShowReport; end; RMPreview1.Visible := True; end; procedure TfrmOrderInPut.ComboBox1Change(Sender: TObject); begin // if ComboBox1.ItemIndex = 0 then // begin // ConNo.Enabled := True; // end // else if ComboBox1.ItemIndex = 1 then // begin // ConNo.Enabled := False; // end; end; procedure TfrmOrderInPut.JYFHNOTEDblClick(Sender: TObject); var fsj: string; FWZ: Integer; i: integer; begin fsj := Trim(TMemo(Sender).Hint); FWZ := Pos('/', fsj); i := 0; try frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); with frmZDYHelpSel do begin flag := Copy(fsj, 1, FWZ - 1); flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if ShowModal = 1 then begin JYFHNOTE.Lines.Clear; with ClientDataSet1 do begin First; while not Eof do begin if FieldByName('SSel').AsBoolean = True then begin i := i + 1; JYFHNOTE.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) end; Next; end; end; end; end; finally frmZDYHelpSel.Free; end; end; procedure TfrmOrderInPut.CJEWM(); var Txt, fImagePath, maxNo: string; Moudle: THandle; Makebar: TMakebar; Mixtext: TMixtext; // i: Integer; begin // i := Order_Sub.RecordCount; // i := i + 1; try Moudle := LoadLibrary('MakeQRBarcode.dll'); @Makebar := GetProcAddress(Moudle, 'Make'); @Mixtext := GetProcAddress(Moudle, 'MixText'); Txt := Trim(order_Sub.fieldbyname('Subid').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); with ADOCmd do begin Close; SQL.Clear; SQL.Add('select * from TP_File '); sql.Add('where TFID=' + quotedstr(trim(Txt))); sql.Add('and TFType=''EWM'''); open; if isempty then begin append; fieldbyname('TFID').Value := trim(Txt); fieldbyname('WBID').Value := trim(order_Sub.fieldbyname('Mainid').AsString); fieldbyname('TFType').Value := 'EWM'; fieldbyname('FillTime').Value := SGetServerDateTime(ADOTemp); tblobfield(FieldByName('Filesother')).LoadFromFile(fImagePath); post; end; end; except application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); order_Sub.EnableControls; exit; end; end; procedure TfrmOrderInPut.JGFactoryNameBtnUpClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin // fkhType := ''; if self.canshu1 <> '高权限' then canshu1 := '业务员'; if ShowModal = 1 then begin JGFactoryName.Text := Trim(CDS_HZ.fieldbyname('Shortened').AsString); JGFactoryName.TxtCode := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmOrderInPut.ConNoBtnDnClick(Sender: TObject); begin TBtnEditC(Sender).Text := ''; TBtnEditC(Sender).TxtCode := ''; cxGrid4.Visible := False; end; procedure TfrmOrderInPut.ConNoBtnUpClick(Sender: TObject); var mvalue: string; begin mvalue := Trim(conNO.Text); // if Length(Trim(mvalue)) > 1 then // begin cxGrid4.Visible := True; mvalue := '%' + Trim(mvalue) + '%'; with ADOQuery1 do begin Close; sql.Clear; SQL.Add('select distinct Fprtcodename=case when (select MPRTType from JYOrderCon_Main X where X.mainid=A.mainid)=''外销'' then prtcodeCname else prtcodename end'); sql.Add(',A.* from JYOrdercon_Main A inner join JYOrdercon_sub B on B.mainID=A.mainID '); sql.Add('where status=''1'' and not exists(select Conno from JYOrder_Main X where X.conno=A.conno and X.status=''2'' )'); // sql.Add('select distinct A.conNO,A.khconNo,B.MainID,B.prtCode,B.PrtCodeName,B.Prtspec,CYName=(select top 1 CYName from CP_YDang X where X.CYName=B.PrtCodeName) '); // sql.Add('from JYOrdercon_Main A inner join JYOrdercon_sub B on B.mainID=A.mainID'); // sql.Add('where A.status=''1'' '); //A.conNO like ' + quotedstr('%' + trim(mvalue) + '%' ) if Trim(canshu1) = '低权限' then sql.Add('and A.ConPerson1=''' + Trim(DName) + ''' or A.Filler=''' + Trim(DName) + ''''); // and A.conNO like ' + quotedstr('%' + trim(mvalue) + '% // ShowMessage(sql.text); Open; end; SCreateCDS20(ADOQuery1, CDS_Con); SInitCDSData20(ADOQuery1, CDS_CON); // if CDS_Con.IsEmpty then // cxGrid4.Visible := False // else // cxGrid4.Visible := True; // end; end; procedure TfrmOrderInPut.ToolButton7Click(Sender: TObject); var i: Integer; begin CopyAddRow(Tv6, CDS_PB); with CDS_PB do begin Edit; FieldByName('SGge').Value := ''; FieldByName('Sbili').Value := ''; FieldByName('SGys').Value := ''; Post; end; end; procedure TfrmOrderInPut.ToolButton8Click(Sender: TObject); begin if CDS_PB.IsEmpty then Exit; // with ADOTemp do // begin // Close; // sql.Clear; // sql.Add('select * from WFB_MJJY where SubId=''' + Trim(Order_Sub.fieldbyname('SubId').AsString) + ''''); // Open; // end; // if ADOTemp.IsEmpty = False then // begin // Application.MessageBox('已检验不能删除数据!', '提示', 0); // Exit; // end; if Trim(CDS_PB.fieldbyname('PbId').AsString) <> '' then begin if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOCmd do begin Close; sql.Clear; sql.Add('delete JYOrder_PB where PbId=''' + Trim(CDS_PB.fieldbyname('PbId').AsString) + ''''); ExecSQL; end; end; CDS_PB.Delete; end; procedure TfrmOrderInPut.ToolButton6Click(Sender: TObject); begin Panel2.Visible := True; end; procedure TfrmOrderInPut.ToolButton10Click(Sender: TObject); begin Panel2.Visible := False; end; procedure TfrmOrderInPut.Tv1Column3PropertiesEditValueChanged(Sender: TObject); var mvalue, FFieldName: string; Fzb, FPRTOrderQty, FBYQTY, FPRTPIbuqty, FPRTPIbuZl, Fsh, Fczzxs: Double; i: Integer; begin mvalue := TcxTextEdit(Sender).EditingText; FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); FPRTPIbuqty := 0; FPRTPIbuZl := 0; if Trim(mvalue) = '' then begin mvalue := '0'; end; Fczzxs := StrToFloatDef(CZZxs.Text, 0); // if Trim(FFieldName) <> 'Prtzl' then // begin // FPrtzl := (FPRTOrderQty) * Fczzxs; // end; with Order_Sub do begin Edit; FieldByName(FFieldName).Value := mvalue; Post; FPRTOrderQty := StrToFloatDef(Order_Sub.fieldbyname('PRTOrderQty').AsString, 0); // FPrtzl := (FPRTOrderQty) * Fczzxs; if Trim(FFieldName) <> 'Prtzl' then begin if Fczzxs = 0 then begin end else FBYQTY := (FPRTOrderQty) / Fczzxs; end else begin FBYQTY := StrToFloatDef(Order_Sub.fieldbyname('BYQTY').AsString, 0); end; Fsh := StrToFloatDef(Order_Sub.fieldbyname('PRTPBsh').AsString, 0) / 100; FPRTPIbuqty := StrToFloatDef(Order_Sub.fieldbyname('PRTPIbuqty').AsString, 0); FPRTPIbuZl := StrToFloatDef(Order_Sub.fieldbyname('PRTPIbuZl').AsString, 0); end; if Trim(FFieldName) <> 'PRTPIbuqty' then begin FPRTPIbuqty := (FPRTOrderQty) / (1 - Fsh); end; if Trim(FFieldName) <> 'PRTPIbuZL' then begin FPRTPIbuZl := (FBYQTY) / (1 - Fsh); end; with Order_Sub do begin Edit; FieldByName('PRTPIbuqty').Value := FPRTPIbuqty; FieldByName('PRTPIbuzl').Value := FPRTPIbuZl; Post; end; PIbuqty.Text := FloatToStr(TV1.DataController.Summary.FooterSummaryValues[TV1.DataController.Summary.FooterSummaryItems.IndexOfItemLink(Tv1.GetColumnByFieldName('PRTPIbuqty'))]); PIbuZl.Text := FloatToStr(TV1.DataController.Summary.FooterSummaryValues[TV1.DataController.Summary.FooterSummaryItems.IndexOfItemLink(Tv1.GetColumnByFieldName('PRTPIbuzl'))]); tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmOrderInPut.ConNoKeyPress(Sender: TObject; var Key: Char); var mvalue: string; begin mvalue := Trim(conNO.Text); if Key = #13 then begin mvalue := '%' + Trim(mvalue) + '%'; with ADOQuery1 do begin Close; sql.Clear; SQL.Add('select distinct Fprtcodename=case when (select MPRTType from JYOrderCon_Main X where X.mainid=A.mainid)=''外销'' then prtcodeCname else prtcodename end'); sql.Add(',A.* from JYOrdercon_Main A inner join JYOrdercon_sub B on B.mainID=A.mainID '); sql.Add('where status=''1'' and not exists(select Conno from JYOrder_Main X where X.conno=A.conno and X.status=''2'' ) '); if Trim(canshu1) = '低权限' then sql.Add('and A.ConPerson1=''' + Trim(DName) + ''' or A.Filler=''' + Trim(DName) + ''''); sql.Add('and A.conNO like ' + quotedstr('%' + trim(mvalue) + '%')); // ShowMessage(sql.text); Open; end; SCreateCDS20(ADOQuery1, CDS_Con); SInitCDSData20(ADOQuery1, CDS_CON); if CDS_Con.IsEmpty then cxGrid4.Visible := False else cxGrid4.Visible := True; end; end; procedure TfrmOrderInPut.CZZxsChange(Sender: TObject); var mvalue, FFieldName: string; Fczzxs, FPRTOrderQty, FBYQTY: Double; i: Integer; begin mvalue := TcxTextEdit(Sender).EditingText; FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); FBYQTY := 0; with Order_Sub do begin First; while not Eof do begin with Order_Sub do begin Edit; Post; FPRTOrderQty := StrToFloatDef(Order_Sub.fieldbyname('PRTOrderQty').AsString, 0); FBYQTY := StrToFloatDef(Order_Sub.fieldbyname('BYQTY').AsString, 0); end; Fczzxs := StrToFloatDef(CZZxs.Text, 0); if Trim(FFieldName) <> 'Prtzl' then begin if Fczzxs = 0 then begin end else FBYQTY := (FPRTOrderQty) / Fczzxs; end; with Order_Sub do begin Edit; FieldByName('BYQTY').Value := FBYQTY; Post; end; Next; end; end; tv1.Controller.EditingController.ShowEdit(); end; end.