unit U_KnitPlanInPut; 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, cxDropDownEdit, StrUtils, cxPC, ShellAPI, cxCalendar, Math, cxLookAndFeels, cxLookAndFeelPainters, dxBarBuiltInMenu, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, U_BaseInput, System.ImageList, Vcl.ImgList, Vcl.Menus, dxSkinBasic, 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, dxSkinOffice2016Colorful, dxSkinOffice2016Dark, dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray, dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine, dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark, dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI, dxSkinXmas2008Blue, dxScrollbarAnnotations; type TfrmKnitPlanInPut = class(TfrmBaseInput) ToolBar1: TToolBar; TBSave: TToolButton; TBClose: TToolButton; ScrollBox1: TScrollBox; Label1: TLabel; ADOQuery1: TADOQuery; Label2: TLabel; OrdDate: TDateTimePicker; Label3: TLabel; Label14: TLabel; ADOQueryTemp: TADOQuery; Label18: TLabel; Panel2: TPanel; DataSource2: TDataSource; CDS_YuanLiao: TClientDataSet; Label22: TLabel; ADOQueryCmd: TADOQuery; Label5: TLabel; DlyDate: TDateTimePicker; Label8: TLabel; Label12: TLabel; OrdPieceWeight: TEdit; OrdPiece: TEdit; Label13: TLabel; OrdQty: TEdit; Label16: TLabel; cxPageControl1: TcxPageControl; cxTabSheet1: TcxTabSheet; cxTabSheet2: TcxTabSheet; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; v2Column2: TcxGridDBColumn; cxGridDBColumn2: TcxGridDBColumn; v2Column4: TcxGridDBColumn; cxGridDBColumn6: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; Panel1: TPanel; Panel3: TPanel; ClientDataSet5: TClientDataSet; DataSource3: TDataSource; ClientDataSet3: TClientDataSet; DataSource5: TDataSource; Label26: TLabel; Label27: TLabel; Label28: TLabel; OrdTare: TEdit; v2Column1: TcxGridDBColumn; v2Column3: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v2Column6: TcxGridDBColumn; Label31: TLabel; v2Column7: TcxGridDBColumn; v2Column8: TcxGridDBColumn; v2Column9: TcxGridDBColumn; v2Column10: TcxGridDBColumn; Label47: TLabel; Label54: TLabel; C_GramWeight: TEdit; C_Width: TEdit; C_Name: TEdit; Label43: TLabel; cxGrid5: TcxGrid; TV5: TcxGridDBTableView; cxGridDBColumn32: TcxGridDBColumn; cxGridDBColumn34: TcxGridDBColumn; cxGridDBColumn35: TcxGridDBColumn; cxGridDBColumn36: TcxGridDBColumn; cxGridDBColumn37: TcxGridDBColumn; cxGridDBColumn38: TcxGridDBColumn; cxGridDBColumn39: TcxGridDBColumn; cxGridDBColumn40: TcxGridDBColumn; cxGridDBColumn43: TcxGridDBColumn; cxGridDBColumn44: TcxGridDBColumn; cxGridDBColumn45: TcxGridDBColumn; cxGridDBColumn46: TcxGridDBColumn; cxGridDBColumn47: TcxGridDBColumn; cxGridDBColumn48: TcxGridDBColumn; cxGridDBColumn49: TcxGridDBColumn; cxGridDBColumn50: TcxGridDBColumn; cxGridDBColumn51: TcxGridDBColumn; cxGridDBColumn52: TcxGridDBColumn; cxGridDBColumn53: TcxGridDBColumn; cxGridDBColumn54: TcxGridDBColumn; cxGridDBColumn55: TcxGridDBColumn; cxGridDBColumn56: TcxGridDBColumn; cxGridDBColumn57: TcxGridDBColumn; cxGridDBColumn58: TcxGridDBColumn; cxGridDBColumn59: TcxGridDBColumn; cxGridDBColumn60: TcxGridDBColumn; cxGridDBColumn61: TcxGridDBColumn; cxGridDBColumn62: TcxGridDBColumn; cxGridDBColumn63: TcxGridDBColumn; cxGridDBColumn64: TcxGridDBColumn; cxGridDBColumn65: TcxGridDBColumn; cxGridDBColumn66: TcxGridDBColumn; cxGridDBColumn67: TcxGridDBColumn; cxGridDBColumn68: TcxGridDBColumn; cxGridDBColumn69: TcxGridDBColumn; cxGridDBColumn70: TcxGridDBColumn; cxGridDBColumn71: TcxGridDBColumn; cxGridDBColumn72: TcxGridDBColumn; cxGridDBColumn73: TcxGridDBColumn; cxGridDBColumn74: TcxGridDBColumn; cxGridDBColumn75: TcxGridDBColumn; cxGridDBColumn76: TcxGridDBColumn; cxGridDBColumn77: TcxGridDBColumn; cxGridDBColumn78: TcxGridDBColumn; cxGridDBColumn79: TcxGridDBColumn; cxGridDBColumn80: TcxGridDBColumn; cxGridDBColumn81: TcxGridDBColumn; cxGridDBColumn82: TcxGridDBColumn; cxGridDBColumn83: TcxGridDBColumn; cxGridDBColumn84: TcxGridDBColumn; cxGridDBColumn85: TcxGridDBColumn; cxGridDBColumn86: TcxGridDBColumn; cxGridDBColumn87: TcxGridDBColumn; cxGridDBColumn88: TcxGridDBColumn; cxGridDBColumn89: TcxGridDBColumn; cxGridDBColumn90: TcxGridDBColumn; cxGridDBColumn91: TcxGridDBColumn; cxGridDBColumn92: TcxGridDBColumn; cxGridDBColumn93: TcxGridDBColumn; cxGridDBColumn94: TcxGridDBColumn; cxGridDBColumn95: TcxGridDBColumn; cxGridDBColumn96: TcxGridDBColumn; cxGridDBColumn97: TcxGridDBColumn; cxGridDBColumn98: TcxGridDBColumn; cxGridDBColumn99: TcxGridDBColumn; cxGridDBColumn100: TcxGridDBColumn; cxGridDBColumn101: TcxGridDBColumn; cxGridDBColumn102: TcxGridDBColumn; cxGridDBColumn103: TcxGridDBColumn; cxGridDBColumn104: TcxGridDBColumn; cxGridDBColumn105: TcxGridDBColumn; cxGridDBColumn106: TcxGridDBColumn; cxGridDBColumn107: TcxGridDBColumn; cxGridDBColumn108: TcxGridDBColumn; cxGridDBColumn109: TcxGridDBColumn; cxGridDBColumn110: TcxGridDBColumn; cxGridDBColumn111: TcxGridDBColumn; cxGridDBColumn112: TcxGridDBColumn; cxGridDBColumn113: TcxGridDBColumn; cxGridDBColumn114: TcxGridDBColumn; cxGridDBColumn115: TcxGridDBColumn; cxGridDBColumn116: TcxGridDBColumn; cxGridDBColumn117: TcxGridDBColumn; cxGridDBColumn118: TcxGridDBColumn; cxGridDBColumn119: TcxGridDBColumn; cxGridLevel6: TcxGridLevel; cxGrid3: TcxGrid; Tv3: TcxGridDBTableView; v3Column37: TcxGridDBColumn; v3Column38: TcxGridDBColumn; v3Column1: TcxGridDBColumn; v3Column2: TcxGridDBColumn; v3Column3: TcxGridDBColumn; v3Column4: TcxGridDBColumn; v3Column5: TcxGridDBColumn; v3Column6: TcxGridDBColumn; v3Column7: TcxGridDBColumn; v3Column8: TcxGridDBColumn; v3Column9: TcxGridDBColumn; v3Column10: TcxGridDBColumn; v3Column11: TcxGridDBColumn; v3Column12: TcxGridDBColumn; v3Column13: TcxGridDBColumn; v3Column14: TcxGridDBColumn; v3Column15: TcxGridDBColumn; v3Column16: TcxGridDBColumn; v3Column17: TcxGridDBColumn; v3Column18: TcxGridDBColumn; v3Column19: TcxGridDBColumn; v3Column20: TcxGridDBColumn; v3Column21: TcxGridDBColumn; v3Column22: TcxGridDBColumn; v3Column23: TcxGridDBColumn; v3Column24: TcxGridDBColumn; v3Column25: TcxGridDBColumn; v3Column26: TcxGridDBColumn; v3Column27: TcxGridDBColumn; v3Column28: TcxGridDBColumn; v3Column29: TcxGridDBColumn; v3Column30: TcxGridDBColumn; v3Column31: TcxGridDBColumn; v3Column32: TcxGridDBColumn; v3Column33: TcxGridDBColumn; v3Column34: TcxGridDBColumn; v3Column35: TcxGridDBColumn; v3Column36: TcxGridDBColumn; v3Column39: TcxGridDBColumn; v3Column40: TcxGridDBColumn; v3Column41: TcxGridDBColumn; v3Column42: TcxGridDBColumn; v3Column43: TcxGridDBColumn; v3Column44: TcxGridDBColumn; v3Column45: TcxGridDBColumn; v3Column46: TcxGridDBColumn; v3Column47: TcxGridDBColumn; v3Column48: TcxGridDBColumn; v3Column49: TcxGridDBColumn; v3Column50: TcxGridDBColumn; v3Column51: TcxGridDBColumn; v3Column52: TcxGridDBColumn; v3Column53: TcxGridDBColumn; v3Column54: TcxGridDBColumn; v3Column55: TcxGridDBColumn; v3Column56: TcxGridDBColumn; v3Column57: TcxGridDBColumn; v3Column58: TcxGridDBColumn; v3Column59: TcxGridDBColumn; v3Column60: TcxGridDBColumn; v3Column61: TcxGridDBColumn; v3Column62: TcxGridDBColumn; v3Column63: TcxGridDBColumn; v3Column64: TcxGridDBColumn; v3Column65: TcxGridDBColumn; v3Column66: TcxGridDBColumn; v3Column67: TcxGridDBColumn; v3Column68: TcxGridDBColumn; v3Column69: TcxGridDBColumn; v3Column70: TcxGridDBColumn; v3Column71: TcxGridDBColumn; v3Column72: TcxGridDBColumn; v3Column73: TcxGridDBColumn; v3Column74: TcxGridDBColumn; v3Column75: TcxGridDBColumn; v3Column76: TcxGridDBColumn; v3Column77: TcxGridDBColumn; v3Column78: TcxGridDBColumn; v3Column79: TcxGridDBColumn; v3Column80: TcxGridDBColumn; v3Column81: TcxGridDBColumn; v3Column82: TcxGridDBColumn; v3Column83: TcxGridDBColumn; v3Column84: TcxGridDBColumn; v3Column85: TcxGridDBColumn; v3Column86: TcxGridDBColumn; v3Column87: TcxGridDBColumn; v3Column88: TcxGridDBColumn; v3Column89: TcxGridDBColumn; v3Column90: TcxGridDBColumn; v3Column91: TcxGridDBColumn; v3Column92: TcxGridDBColumn; v3Column93: TcxGridDBColumn; v3Column94: TcxGridDBColumn; v3Column95: TcxGridDBColumn; v3Column96: TcxGridDBColumn; v3Column97: TcxGridDBColumn; v3Column98: TcxGridDBColumn; v3Column99: TcxGridDBColumn; v3Column100: TcxGridDBColumn; v3Column101: TcxGridDBColumn; v3Column102: TcxGridDBColumn; v3Column103: TcxGridDBColumn; v3Column104: TcxGridDBColumn; v3Column105: TcxGridDBColumn; v3Column106: TcxGridDBColumn; v3Column107: TcxGridDBColumn; v3Column108: TcxGridDBColumn; v3Column109: TcxGridDBColumn; v3Column110: TcxGridDBColumn; cxGridLevel2: TcxGridLevel; v3Column111: TcxGridDBColumn; v3Column112: TcxGridDBColumn; v3Column113: TcxGridDBColumn; v3Column114: TcxGridDBColumn; v3Column115: TcxGridDBColumn; v3Column116: TcxGridDBColumn; v3Column117: TcxGridDBColumn; v3Column118: TcxGridDBColumn; v3Column119: TcxGridDBColumn; v3Column120: TcxGridDBColumn; v3Column121: TcxGridDBColumn; v3Column122: TcxGridDBColumn; v3Column123: TcxGridDBColumn; v3Column124: TcxGridDBColumn; v3Column125: TcxGridDBColumn; v3Column126: TcxGridDBColumn; v3Column127: TcxGridDBColumn; v3Column128: TcxGridDBColumn; v3Column129: TcxGridDBColumn; v3Column130: TcxGridDBColumn; v3Column131: TcxGridDBColumn; v3Column132: TcxGridDBColumn; v3Column133: TcxGridDBColumn; v3Column134: TcxGridDBColumn; v3Column135: TcxGridDBColumn; v3Column136: TcxGridDBColumn; v3Column137: TcxGridDBColumn; v3Column138: TcxGridDBColumn; v3Column139: TcxGridDBColumn; v3Column140: TcxGridDBColumn; v3Column141: TcxGridDBColumn; v3Column142: TcxGridDBColumn; v3Column143: TcxGridDBColumn; v3Column144: TcxGridDBColumn; v3Column145: TcxGridDBColumn; v3Column146: TcxGridDBColumn; v2Column12: TcxGridDBColumn; lbl2: TLabel; CustName: TBtnEditC; C_Code: TBtnEditC; ConNo: TBtnEditC; Saleser: TEdit; OurCoName: TBtnEditC; C_Deal: TBtnEditC; Label7: TLabel; OrderNo: TEdit; ToolBar3: TToolBar; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton5: TToolButton; OrdType: TComboBox; Label4: TLabel; FtyCoName: TBtnEditC; ToolButton8: TToolButton; PM_3: TPopupMenu; N1: TMenuItem; N2: TMenuItem; PM_5: TPopupMenu; MenuItem1: TMenuItem; MenuItem2: TMenuItem; Label6: TLabel; C_revolution: TEdit; Label9: TLabel; C_Color: TBtnEditC; Label10: TLabel; C_KnitNote: TBtnEditC; Label11: TLabel; C_Composition: TBtnEditC; Label15: TLabel; C_KnitGramWeight: TEdit; Label17: TLabel; Label19: TLabel; C_Figure: TBtnEditC; C_Yarn: TBtnEditC; Label20: TLabel; KGQty: TEdit; lbl1: TLabel; C_I_Name: TEdit; C_Spec: TEdit; OrdSNote: TRichEdit; btn1: TToolButton; lbl3: TLabel; SSBL: TBtnEditC; OrdUnit: TComboBox; Label21: TLabel; Label23: TLabel; C_DYARN: TBtnEditC; C_jiaceng: TBtnEditC; Label24: TLabel; khconno: TEdit; lbl4: TLabel; lbl5: TLabel; C_Material_Name: TBtnEditC; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBSaveClick(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure cxGridDBColumn1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v2Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Tv5MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure v2Column11PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure OrdPieceWeightChange(Sender: TObject); procedure OrdPieceChange(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure C_CodeKeyPress(Sender: TObject; var Key: Char); procedure ConNoKeyPress(Sender: TObject; var Key: Char); procedure MCTypeBtnUpClick(Sender: TObject); procedure CustNameBtnUpClick(Sender: TObject); procedure C_CodeBtnUpClick(Sender: TObject); procedure ConNoBtnUpClick(Sender: TObject); procedure CustNameBtnDnClick(Sender: TObject); procedure OurCoNameBtnUpClick(Sender: TObject); procedure FtyCoNameBtnUpClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure MenuItem1Click(Sender: TObject); procedure MenuItem2Click(Sender: TObject); procedure btn1Click(Sender: TObject); private FXS, FGridFlag: Integer; procedure InitData(); procedure ZDYHelp(FButn: TcxButtonEdit; LType: string); function SaveData(): Boolean; function SaveData2(): Boolean; { Private declarations } public PState, FCopyInt: Integer; FMainId, FConNo, PType, FSubId, FConMId, FConSId: string; { Public declarations } end; var frmKnitPlanInPut: TfrmKnitPlanInPut; newh: hwnd; implementation uses U_DataLink, U_ZDYHelp, U_RTFun, U_ClothInfoSel, U_CompanySel, U_YarnInfoSel, U_TradeSalesContractSel; {$R *.dfm} procedure TfrmKnitPlanInPut.TBCloseClick(Sender: TObject); begin ModalResult := 1; end; procedure TfrmKnitPlanInPut.InitData(); var PBNO, PBFlag: string; begin if PState = 1 then begin ConNo.enabled := false; with ADOQuery1 do begin Close; sql.Clear; SQL.Add('select A.*'); sql.Add('from Knit_Plan_Card A'); sql.Add(' where A.SubId=''' + Trim(FSubId) + ''''); sql.Add(' and A.MainId=''' + Trim(FMainId) + ''''); sql.Add(' and Status <> ''-1'' '); Open; end; if ADOQuery1.IsEmpty = False then begin OrderNo.Enabled := false; OrdType.Enabled := false; DlyDate.Enabled := false; OrdDate.Enabled := false; OurCoName.Enabled := false; CustName.Enabled := false; FtyCoName.Enabled := false; Saleser.Enabled := false; C_KnitGramWeight.Enabled := false; C_Code.Enabled := false; C_Name.Enabled := false; C_Width.Enabled := false; C_GramWeight.Enabled := false; C_Spec.Enabled := false; OrdPieceWeight.Enabled := false; C_Color.Enabled := false; C_Composition.Enabled := false; C_Deal.Enabled := false; C_KnitNote.Enabled := false; C_Figure.Enabled := false; C_Yarn.Enabled := false; KGQty.Enabled := false; SSBL.Enabled := false; OrdSNote.Enabled := false; end; end; with ADOQuery1 do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Main A where A.MainId=''' + Trim(FMainId) + ''''); Open; end; SCSHData(ADOQuery1, ScrollBox1, 0); CustName.TxtCode := ADOQuery1.FieldByName('CustNo').AsString; with ADOQuery1 do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Sub A where A.MainId=''' + Trim(FMainId) + ''''); Open; end; SCSHData(ADOQuery1, ScrollBox1, 2); FConMId := ADOQuery1.fieldbyname('ConMID').AsString; FConSId := ADOQuery1.fieldbyname('ConSId').AsString; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select A.* '); sql.Add(',YLQty=Cast(OrdQty*PBQty*0.01*(1+isnull(ZPSH,0)*0.01) as decimal(18,1))'); // if FCopyInt <> 1 then // begin // sql.Add(',CKQty=(select sum(Qty) from CK_SXPB_CR SQ where SQ.PBNO=C.ConNo and SQ.SPName=A.YCLName '); // sql.Add(' and isnull(SQ.PBNO,'''')<>'''' and ZFFlag=0 and CKName=''纱线'' and CRFlag=''出库'' and CRType=''织造加工出库'' )'); // end; sql.Add('from knit_Plan_Yarn A '); sql.Add('inner join knit_Plan_Sub B on A.SubId=B.SubId'); SQL.Add(' inner join knit_Plan_Main C on B.Mainid=C.MainId'); sql.Add(' where A.MainId=''' + Trim(FMainId) + ''''); Open; end; SCreateCDS(ADOQueryTemp, CDS_YuanLiao); SInitCDSData(ADOQueryTemp, CDS_YuanLiao); with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from knit_Plan_Arrange where MainId=''' + Trim(FMainId) + ''''); sql.Add(' and PZType=''排针'' '); Open; end; SCreateCDS(ADOQueryTemp, ClientDataSet3); SInitCDSData(ADOQueryTemp, ClientDataSet3); if ClientDataSet3.IsEmpty then begin with ClientDataSet3 do begin Append; Post; Append; Post; end; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from knit_Plan_Arrange where MainId=''' + Trim(FMainId) + ''''); sql.Add(' and PZType=''三角'' '); Open; end; SCreateCDS(ADOQueryTemp, ClientDataSet5); SInitCDSData(ADOQueryTemp, ClientDataSet5); if PState = 0 then begin with ADOQueryTemp do begin Close; SQL.Clear; sql.Add('select Top 1* from knit_Plan_Main order by FillTime desc '); Open; end; OrdDate.DateTime := SGetServerDate(ADOQueryTemp); OrdDate.Checked := True; DlyDate.Date := OrdDate.DateTime; end; if FCopyInt = 1 then begin FMainId := ''; ConNo.Text := ''; ConNo.enabled := true; CDS_YuanLiao.DisableControls; with CDS_YuanLiao do begin First; while not Eof do begin Edit; FieldByName('MainId').Value := ''; FieldByName('SubId').Value := ''; FieldByName('PBId').Value := ''; FieldByName('BegPBQty').Value := Null; Post; Next; end; end; CDS_YuanLiao.EnableControls; ClientDataSet3.DisableControls; with ClientDataSet3 do begin First; while not Eof do begin Edit; FieldByName('MainId').Value := ''; FieldByName('SubId').Value := ''; FieldByName('PZId').Value := ''; Post; Next; end; end; ClientDataSet3.EnableControls; ClientDataSet5.DisableControls; with ClientDataSet5 do begin First; while not Eof do begin Edit; FieldByName('MainId').Value := ''; FieldByName('SubId').Value := ''; FieldByName('PZId').Value := ''; Post; Next; end; end; ClientDataSet5.EnableControls; end; end; procedure TfrmKnitPlanInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string); begin end; procedure TfrmKnitPlanInPut.FormShow(Sender: TObject); begin InitData(); end; function TfrmKnitPlanInPut.SaveData(): Boolean; var maxno, maxsubno, maxpbno, maxpzno, maxsjno: string; begin try ADOQueryCmd.Connection.BeginTrans; if Trim(FMainId) = '' then begin if OrdType.Text = '大货单' then begin if GetLSNo(ADOQueryCmd, maxno, 'DH', 'knit_Plan_Main', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('生成流水号异常!', '提示', 0); exit; end; end; if OrdType.Text = '试样单' then begin if GetLSNo(ADOQueryCmd, maxno, 'SY', 'knit_Plan_Main', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('生成流水号异常!', '提示', 0); exit; end; end; if OrdType.Text = '外发单' then begin if GetLSNo(ADOQueryCmd, maxno, 'KM', 'knit_Plan_Main', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('生成流水号异常!', '提示', 0); exit; end; end; OrderNo.Text := maxno; end else begin maxno := Trim(FMainId); end; ////////////////////////// 保存主表 ////////////////////////// with ADOQueryCmd do begin Close; sql.Clear; SQL.Add('select * from knit_Plan_Main where MainId=''' + Trim(FMainId) + ''''); Open; end; with ADOQueryCmd do begin if Trim(FMainId) = '' then begin Append; end else begin Edit; end; FieldByName('MainId').Value := Trim(maxno); FieldByName('CustNo').Value := Trim(CustName.TxtCode); RTSetsavedata(ADOQueryCmd, 'knit_Plan_Main', ScrollBox1, 0); if Trim(FMainId) = '' then begin FieldByName('Filler').Value := Trim(DName); end else begin FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; Post; end; ////////////////////////// 保存主表 ////////////////////////// /// ////////////////////////// 保存子表 ////////////////////////// if Trim(FSubId) = '' then begin if GetLSNo(ADOQueryTemp, maxsubno, 'KS', 'knit_Plan_Sub', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取子流水号失败!', '提示', 0); Exit; end; end else begin maxsubno := Trim(FSubId); end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Sub where '); sql.Add(' SubId=''' + Trim(maxsubno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(FSubId) = '' then Append else Edit; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(maxsubno); FieldByName('ConMId').Value := Trim(FConMId); FieldByName('ConSId').Value := Trim(FConSId); RTSetsavedata(ADOQueryCmd, 'knit_Plan_Sub', ScrollBox1, 2); Post; end; ////////////////////////// 保存子表 ////////////////////////// /// ////////////////////////// 保存标签表 ////////////////////////// with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from Trade_Cloth_Inspect_Rule where '); sql.Add(' RuleID=''' + Trim(maxno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(ADOQueryCmd.FieldByName('RuleID').ToString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('Edittime').Value := SGetServerDateTime(ADOQueryTemp); end; FieldByName('RuleID').Value := Trim(maxno); FieldByName('RuleBeforeTare').value := '1'; Post; end; ////////////////////////// 保存标签表 ////////////////////////// /// ////////////////////////// 保存配比表 ////////////////////////// with CDS_YuanLiao do begin First; while not Eof do begin if Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) = '' then begin if GetLSNo(ADOQueryTemp, maxpbno, 'PB', 'knit_Plan_Yarn', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取配比子流水号失败!', '提示', 0); Exit; end; end else begin maxpbno := Trim(CDS_YuanLiao.fieldbyname('PBId').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Yarn where '); sql.Add(' PBId=''' + Trim(maxpbno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOQueryTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(maxsubno); FieldByName('PBId').Value := Trim(maxpbno); FieldByName('SPId').Value := Trim(CDS_YuanLiao.fieldbyname('SPId').AsString); RTSetSaveDataCDS(ADOQueryCmd, Tv2, CDS_YuanLiao, 'knit_Plan_Yarn', 0); Post; end; CDS_YuanLiao.Edit; CDS_YuanLiao.FieldByName('SubId').Value := Trim(maxsubno); CDS_YuanLiao.FieldByName('MainId').Value := Trim(maxno); CDS_YuanLiao.FieldByName('PBId').Value := Trim(maxpbno); Next; end; end; ////////////////////////// 保存配比表 ////////////////////////// /// ////////////////////////// 保存排针表 ////////////////////////// ClientDataSet3.DisableControls; with ClientDataSet3 do begin First; while not Eof do begin if Trim(ClientDataSet3.fieldbyname('PZId').AsString) = '' then begin if GetLSNo(ADOQueryCmd, maxpzno, 'PZ', 'knit_Plan_Arrange', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取排针流水号失败!', '提示', 0); Exit; end; end else begin maxpzno := Trim(ClientDataSet3.fieldbyname('PZId').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Arrange where '); sql.Add(' PZId=''' + Trim(maxpzno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(ClientDataSet3.fieldbyname('PZId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOQueryTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(maxsubno); FieldByName('PZId').Value := Trim(maxpzno); RTSetSaveDataCDS(ADOQueryCmd, Tv3, ClientDataSet3, 'knit_Plan_Arrange', 0); FieldByName('PZType').Value := '排针'; FieldByName('PZName').Value := ClientDataSet3.fieldbyname('PZName').AsString; Post; end; ClientDataSet3.Edit; ClientDataSet3.FieldByName('PZId').Value := Trim(maxpzno); Next; end; end; ClientDataSet3.EnableControls; ////////////////////////// 保存排针表 ////////////////////////// /// ////////////////////////// 保存三角表 ////////////////////////// ClientDataSet5.DisableControls; with ClientDataSet5 do begin First; while not Eof do begin if Trim(ClientDataSet5.fieldbyname('PZId').AsString) = '' then begin if GetLSNo(ADOQueryCmd, maxsjno, 'PZ', 'knit_Plan_Arrange', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取三角流水号失败!', '提示', 0); Exit; end; end else begin maxsjno := Trim(ClientDataSet5.fieldbyname('PZId').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Arrange where '); sql.Add(' PZId=''' + Trim(maxsjno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(ClientDataSet5.fieldbyname('PZId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOQueryTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(maxsubno); FieldByName('PZId').Value := Trim(maxsjno); RTSetSaveDataCDS(ADOQueryCmd, Tv5, ClientDataSet5, 'knit_Plan_Arrange', 0); FieldByName('PZType').Value := '三角'; Post; end; ClientDataSet5.Edit; ClientDataSet5.FieldByName('PZId').Value := Trim(maxsjno); Next; end; end; ClientDataSet5.EnableControls; ////////////////////////// 保存三角表 ////////////////////////// ADOQueryCmd.Connection.CommitTrans; FMainId := Trim(maxno); FSubId := Trim(maxsubno); Result := True; except Result := False; ClientDataSet3.EnableControls; ClientDataSet5.EnableControls; CDS_YuanLiao.EnableControls; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmKnitPlanInPut.TBSaveClick(Sender: TObject); var FReal: Double; maxConNo: string; begin //OrdDate.SetFocus; if Trim(ConNo.Text) = '' then begin if GetLSNo(ADOQueryCmd, maxConNo, 'MS', 'knit_Plan_Main', 3, 1) = False then begin Application.MessageBox('生成流水号异常!', '提示', 0); exit; end; ConNo.Text := maxConNo; end; if Trim(ConNo.Text) = '' then begin Application.MessageBox('订单号不能为空!', '提示', 0); Exit; end; if Trim(OrdType.Text) = '' then begin Application.MessageBox('计划单类型不能为空!', '提示', 0); Exit; end; if Trim(CustName.Text) = '' then begin Application.MessageBox('客户不能为空!', '提示', 0); Exit; end; if Trim(C_Name.Text) = '' then begin Application.MessageBox('产品名称不能为空!', '提示', 0); Exit; end; if Trim(C_Code.Text) = '' then begin Application.MessageBox('产品编号不能为空!', '提示', 0); Exit; end; if Trim(OrdQty.Text) = '' then begin Application.MessageBox('总数量不能为空!', '提示', 0); Exit; end; // if Trim(OrdPieceWeight.Text) = '' then // begin // Application.MessageBox('匹重不能为空!', '提示', 0); // Exit; // end; if Trim(OrdPiece.Text) = '' then begin Application.MessageBox('匹数不能为空!', '提示', 0); Exit; end; if Trim(OrdTare.Text) = '' then begin OrdTare.Text := '0'; end; if Trim(OrdTare.Text) = '' then begin Application.MessageBox('空加不能为空!', '提示', 0); Exit; end; if TryStrToFloat(OrdQty.Text, FReal) = False then begin Application.MessageBox('总数量非法数字!', '提示', 0); Exit; end; // if TryStrToFloat(OrdPieceWeight.Text, FReal) = False then // begin // Application.MessageBox('匹重非法数字!', '提示', 0); // Exit; // end; if TryStrToFloat(OrdPiece.Text, FReal) = False then begin Application.MessageBox('匹数非法数字!', '提示', 0); Exit; end; if TryStrToFloat(OrdTare.Text, FReal) = False then begin Application.MessageBox('空加非法数字!', '提示', 0); Exit; end; // if Trim(C_Spec.Text) = '' then // begin // Application.MessageBox('规格不能为空!', '提示', 0); // Exit; // end; // if CDS_YuanLiao.Locate('YCLName', Null, []) = True then // begin // Application.MessageBox('原料名称不能为空!', '提示', 0); // Exit; // end; if SaveData() then begin Application.MessageBox('保存成功!', '提示', 0); FMainId := ''; FSubId := ''; // ModalResult := 1; end; end; procedure TfrmKnitPlanInPut.ToolButton3Click(Sender: TObject); begin if cxPageControl1.ActivePageIndex <> 0 then Exit; try frmYarnInfoSel := TfrmYarnInfoSel.Create(Application); with frmYarnInfoSel do begin if ShowModal = 1 then begin with CDS_YuanLiao do begin Append; FieldByName('PinPai').Value := frmYarnInfoSel.CDS_1.fieldbyname('Brand').Value; FieldByName('Denier').Value := frmYarnInfoSel.CDS_1.fieldbyname('Denier').Value; FieldByName('Y_Name').Value := frmYarnInfoSel.CDS_1.fieldbyname('Y_Name').Value; FieldByName('Y_Spec').Value := frmYarnInfoSel.CDS_1.fieldbyname('Y_Spec').Value; FieldByName('PBQty').Value := 0; Post; end; end; end; finally frmYarnInfoSel.Free; end; end; procedure TfrmKnitPlanInPut.ToolButton4Click(Sender: TObject); begin if CDS_YuanLiao.IsEmpty then Exit; if Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) <> '' then begin if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete knit_Plan_Yarn where PBId=''' + Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) + ''''); ExecSQL; end; end; CDS_YuanLiao.Delete; end; procedure TfrmKnitPlanInPut.cxGridDBColumn1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'SXYCLName'; flagname := '原材料名称'; if ShowModal = 1 then begin Self.CDS_YuanLiao.Edit; Self.CDS_YuanLiao.FieldByName('YCLName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmKnitPlanInPut.v2Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'PinPai'; flagname := '品牌'; if ShowModal = 1 then begin Self.CDS_YuanLiao.Edit; Self.CDS_YuanLiao.FieldByName('PinPai').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmKnitPlanInPut.Tv3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin FGridFlag := 1; end; procedure TfrmKnitPlanInPut.Tv5MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin FGridFlag := 2; end; procedure TfrmKnitPlanInPut.v2Column11PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmCompanySel := TfrmCompanySel.Create(Application); with frmCompanySel do begin if ShowModal = 1 then begin with Self.CDS_YuanLiao do begin Edit; FieldByName('GYSName').Value := Trim(CDS_1.fieldbyname('CoName').AsString); end; end; end; finally frmCompanySel.Free; end; end; procedure TfrmKnitPlanInPut.OrdPieceWeightChange(Sender: TObject); var FOrdQty, FOrdPieceWeight: Double; begin // FOrdQty := StrToFloatDef(OrdQty.Text, 0); // FOrdPieceWeight := StrToFloatDef(OrdPieceWeight.Text, 0); // if FOrdPieceWeight > 0 then // OrdPiece.Text := IntToStr(Ceil(FOrdQty / FOrdPieceWeight)); end; procedure TfrmKnitPlanInPut.OurCoNameBtnUpClick(Sender: TObject); begin try frmCompanySel := TfrmCompanySel.Create(Application); with frmCompanySel do begin FCoType := '我司'; if ShowModal = 1 then begin OurCoName.TxtCode := Trim(CDS_1.fieldbyname('CoCode').AsString); OurCoName.Text := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); FtyCoName.TxtCode := Trim(CDS_1.fieldbyname('CoCode').AsString); FtyCoName.Text := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); end; end; finally frmCompanySel.Free; end; end; procedure TfrmKnitPlanInPut.OrdPieceChange(Sender: TObject); var FOrdQty, FOrdPieceWeight, FOrdPiece: Double; begin FOrdPieceWeight := StrToFloatDef(OrdPieceWeight.Text, 0); FOrdPiece := StrToFloatDef(OrdPiece.Text, 0); // if FOrdPiece > 0 then // OrdQty.Text := FloatToStr(FOrdPieceWeight * FOrdPiece) // else // OrdQty.Text := '0'; end; procedure TfrmKnitPlanInPut.ToolButton5Click(Sender: TObject); var FSZ, FSC, FLS, ZZL: Double; begin ZZL := 0; with CDS_YuanLiao do begin First; while not eof do begin FSZ := StrToFloatDef(FieldByName('YCLSpec').AsString, 1); FSC := StrToFloatDef(FieldByName('ShaChang').AsString, 1); FLS := StrToFloatDef(FieldByName('YongShaLuShu').AsString, 1); ZZL := ZZL + FSZ * FSC * FLS; Next; end; end; with CDS_YuanLiao do begin First; while not eof do begin FSZ := StrToFloatDef(FieldByName('YCLSpec').AsString, 1); FSC := StrToFloatDef(FieldByName('ShaChang').AsString, 1); FLS := StrToFloatDef(FieldByName('YongShaLuShu').AsString, 1); Edit; FieldByName('PBQty').Value := FSZ * FSC * FLS / ZZL * 100; FieldByName('PBQty2').Value := FSZ * FSC * FLS / ZZL * 100; Next; end; end; end; procedure TfrmKnitPlanInPut.C_CodeKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin Key := #0; SelectNext(ActiveControl as TWinControl, True, True); end; end; procedure TfrmKnitPlanInPut.MCTypeBtnUpClick(Sender: TObject); var fsj: string; FWZ: Integer; begin fsj := Trim(TBtnEditC(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 TBtnEditC(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmKnitPlanInPut.MenuItem1Click(Sender: TObject); begin with ClientDataSet5 do begin Append; Post; end; end; procedure TfrmKnitPlanInPut.MenuItem2Click(Sender: TObject); begin if ClientDataSet5.IsEmpty then Exit; if Application.MessageBox('确定要删除三角数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete knit_Plan_Arrange where PZID=''' + Trim(ClientDataSet5.fieldbyname('PZID').AsString) + ''''); ExecSQL; end; ClientDataSet5.Delete; end; procedure TfrmKnitPlanInPut.N1Click(Sender: TObject); begin with ClientDataSet3 do begin Append; Post; end; end; procedure TfrmKnitPlanInPut.N2Click(Sender: TObject); begin if ClientDataSet3.IsEmpty then Exit; if Application.MessageBox('确定要删除排针数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete knit_Plan_Arrange where PZID=''' + Trim(ClientDataSet3.fieldbyname('PZID').AsString) + ''''); ExecSQL; end; ClientDataSet3.Delete; end; procedure TfrmKnitPlanInPut.ConNoKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin Key := #0; SelectNext(ActiveControl as TWinControl, True, True); end; end; function TfrmKnitPlanInPut.SaveData2(): Boolean; var maxpzno, maxno, maxsubno, maxsjno, Fpbnname: string; begin try ADOQueryCmd.Connection.BeginTrans; ClientDataSet3.DisableControls; with ClientDataSet3 do begin First; while not Eof do begin if Trim(ClientDataSet3.fieldbyname('PZId').AsString) = '' then begin if GetLSNo(ADOQueryCmd, maxpzno, 'PZB', 'knit_Plan_Arrange', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取排针流水号失败!', '提示', 0); Exit; end; end else begin maxpzno := Trim(ClientDataSet3.fieldbyname('PZId').AsString); end; // with ADOQueryCmd do // begin // Close; // SQL.Clear; // sql.Add('select * from knit_Plan_Arrange where '); // sql.Add(' PZname=''' + Trim(edt1.Text) + ''''); // Open; // end; // if ADOQueryCmd.IsEmpty = false then // Application.MessageBox('名称重复!', '提示', 0); // Exit; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Arrange where '); sql.Add(' PZId=''' + Trim(maxpzno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(ClientDataSet3.fieldbyname('PZId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOQueryTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(maxsubno); FieldByName('PZId').Value := Trim(maxpzno); RTSetSaveDataCDS(ADOQueryCmd, Tv3, ClientDataSet3, 'knit_Plan_Arrange', 0); FieldByName('PZType').Value := '排针'; Post; end; ClientDataSet3.Edit; ClientDataSet3.FieldByName('PZId').Value := Trim(maxpzno); //Order_Sub.Post; Next; end; end; ClientDataSet3.EnableControls; ///保存排针表 ///保存三角表 ClientDataSet5.DisableControls; with ClientDataSet5 do begin First; while not Eof do begin if Trim(ClientDataSet5.fieldbyname('PZId').AsString) = '' then begin if GetLSNo(ADOQueryCmd, maxsjno, 'PZB', 'knit_Plan_Arrange', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('取三角流水号失败!', '提示', 0); Exit; end; end else begin maxsjno := Trim(ClientDataSet5.fieldbyname('PZId').AsString); end; // with ADOQueryCmd do // begin // Close; // SQL.Clear; // sql.Add('select * from knit_Plan_Arrange where '); // sql.Add(' PZname=''' + Trim(edt1.Text) + ''''); // Open; // end; // if ADOQueryCmd.IsEmpty = false then // Application.MessageBox('名称重复!', '提示', 0); // Exit; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from knit_Plan_Arrange where '); sql.Add(' PZId=''' + Trim(maxsjno) + ''''); Open; end; with ADOQueryCmd do begin if Trim(ClientDataSet5.fieldbyname('PZId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOQueryTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; FieldByName('MainId').Value := Trim(maxno); FieldByName('SubId').Value := Trim(maxsubno); FieldByName('PZId').Value := Trim(maxsjno); RTSetSaveDataCDS(ADOQueryCmd, Tv5, ClientDataSet5, 'knit_Plan_Arrange', 0); FieldByName('PZType').Value := '三角'; FieldByName('PBName').Value := C_Name.Text; Post; end; ClientDataSet5.Edit; ClientDataSet5.FieldByName('PZId').Value := Trim(maxsjno); //Order_Sub.Post; Next; end; end; ClientDataSet5.EnableControls; ///保存三角表 ADOQueryCmd.Connection.CommitTrans; Result := True; except Result := False; ClientDataSet3.EnableControls; ClientDataSet5.EnableControls; ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmKnitPlanInPut.FtyCoNameBtnUpClick(Sender: TObject); begin try frmCompanySel := TfrmCompanySel.Create(Application); with frmCompanySel do begin FCoType := '供应商'; if ShowModal = 1 then begin OurCoName.TxtCode := Trim(CDS_1.fieldbyname('CoCode').AsString); OurCoName.Text := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); end; end; finally frmCompanySel.Free; end; end; procedure TfrmKnitPlanInPut.btn1Click(Sender: TObject); begin // if trim(ConNo.Text) = '' then // begin // Application.MessageBox('合同号为空!', '提示', 0); // Exit; // end; if C_I_Name.Text = '' then begin Application.MessageBox('内部型号不能为空!', '提示', 0); Exit; end; with ADOQuery1 do begin Close; SQL.Clear; sql.Add('select top 1 * from knit_Plan_Main A inner join knit_Plan_Sub B on A.MainId=B.MainId '); sql.Add('where C_I_Name=' + QuotedStr(C_I_Name.Text)); // sql.Add(' and A.Saleser=''' + Trim(Saleser.Text) + ''')'); Open; end; if ADOQuery1.IsEmpty then Exit; C_Width.Text := ADOQuery1.fieldbyname('C_Width').AsString; //门幅 OrdPieceWeight.Text := ADOQuery1.fieldbyname('OrdPieceWeight').AsString; //匹长 C_revolution.Text := ADOQuery1.fieldbyname('C_revolution').AsString; //落布转数 C_KnitGramWeight.Text := ADOQuery1.fieldbyname('C_KnitGramWeight').AsString; //坯布克重 C_GramWeight.Text := ADOQuery1.fieldbyname('C_GramWeight').AsString; //成品克重 C_Color.Text := ADOQuery1.fieldbyname('C_Color').AsString; //颜色 C_name.Text := ADOQuery1.fieldbyname('C_name').AsString; // C_I_Name.Text := ADOQuery1.fieldbyname('C_I_Name').AsString; //内部型号 C_Spec.Text := ADOQuery1.fieldbyname('C_Spec').AsString; //纱线 C_Deal.Text := ADOQuery1.fieldbyname('C_Deal').AsString; //后处理 C_Composition.Text := ADOQuery1.fieldbyname('C_Composition').AsString; //成分 C_Yarn.Text := ADOQuery1.fieldbyname('C_Yarn').AsString; //面纱 C_Figure.Text := ADOQuery1.fieldbyname('C_Figure').AsString; //提花 C_KnitNote.Text := ADOQuery1.fieldbyname('C_KnitNote').AsString; //坯布要求 OrdSNote.Text := ADOQuery1.fieldbyname('OrdSNote').AsString; //备注 //self.OrdSNote.Text := ADOQuery1.fieldbyname('ConSNote').AsString; end; procedure TfrmKnitPlanInPut.ConNoBtnUpClick(Sender: TObject); begin try frmTradeSalesContractSel := TfrmTradeSalesContractSel.Create(Application); with frmTradeSalesContractSel do begin if ShowModal = 1 then begin self.ConNo.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('ConNo').AsString; //合同号 FConMId := frmTradeSalesContractSel.CDS_1.fieldbyname('ConMID').AsString; FConSId := frmTradeSalesContractSel.CDS_1.fieldbyname('ConSId').AsString; self.DlyDate.date := frmTradeSalesContractSel.CDS_1.fieldbyname('DlyDate').AsDateTime; //交货日期 self.OurCoName.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('SellName').AsString; //公司抬头 self.CustName.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('BuyName').AsString; //客户 self.FtyCoName.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('MiddleName').AsString; //加工单位 self.Saleser.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('Saleser').AsString; //业务员 self.C_Code.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Code').AsString; //产品编号 self.C_Name.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Name').AsString; //产品名称 self.C_Width.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Width').AsString; //门幅 Self.C_KnitGramWeight.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_KnitGramWeight').AsString; //坯布克重 self.C_GramWeight.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_GramWeight').AsString; //成品克重 self.C_Color.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Color').AsString; //颜色 if frmTradeSalesContractSel.CDS_1.fieldbyname('ConUnit').Value <> 'Roll' then begin self.OrdQty.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('ConQty').Value; //数量 end else begin self.OrdPiece.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('ConQty').Value; //匹数 end; self.C_Spec.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Spec').AsString; self.C_Deal.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Deal').AsString; self.C_Composition.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Composition').AsString; self.C_Yarn.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Yarn').AsString; self.C_Figure.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('C_Figure').AsString; self.OrdSNote.Text := frmTradeSalesContractSel.CDS_1.fieldbyname('ConSNote').AsString; end; end; finally frmTradeSalesContractSel.Free; end; end; procedure TfrmKnitPlanInPut.C_CodeBtnUpClick(Sender: TObject); begin try frmClothInfoSel := TfrmClothInfoSel.Create(Application); with frmClothInfoSel do begin if ShowModal = 1 then begin Self.C_Code.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Code').AsString; Self.C_Name.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Name').AsString; Self.C_I_Name.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Name').AsString; Self.C_Width.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Width').AsString; Self.C_KnitGramWeight.Text := frmClothInfoSel.CDS_1.fieldbyname('C_KnitGramWeight').AsString; Self.C_GramWeight.Text := frmClothInfoSel.CDS_1.fieldbyname('C_GramWeight').AsString; Self.C_Spec.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Spec').AsString; Self.C_Color.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Color').AsString; Self.C_Figure.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Figure').AsString; Self.C_Yarn.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Yarn').AsString; Self.C_jiaceng.Text := frmClothInfoSel.CDS_1.fieldbyname('C_jiaceng').AsString; Self.C_DYARN.Text := frmClothInfoSel.CDS_1.fieldbyname('C_DYARN').AsString; Self.OrdSNote.Text := frmClothInfoSel.CDS_1.fieldbyname('Note').AsString; Self.C_Deal.Text := frmClothInfoSel.CDS_1.fieldbyname('C_Deal').AsString; end; end; finally frmClothInfoSel.Free; end; end; procedure TfrmKnitPlanInPut.CustNameBtnDnClick(Sender: TObject); begin TBtnEditC(Sender).TxtCode := ''; TBtnEditC(Sender).Text := ''; end; procedure TfrmKnitPlanInPut.CustNameBtnUpClick(Sender: TObject); begin try frmCompanySel := TfrmCompanySel.Create(Application); with frmCompanySel do begin FCoType := '客户'; if ShowModal = 1 then begin CustName.TxtCode := Trim(CDS_1.fieldbyname('CoCode').AsString); CustName.Text := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); Saleser.Text := Trim(CDS_1.fieldbyname('Saleser').AsString); end; end; finally frmCompanySel.Free; end; end; end.