unit U_ClothGYInPut; 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, cxLookAndFeels, cxLookAndFeelPainters, dxBarBuiltInMenu, cxNavigator; type TfrmClothGYInPut = class(TForm) ToolBar1: TToolBar; TBSave: TToolButton; TBClose: TToolButton; ADOTemp: TADOQuery; ADOCmd: TADOQuery; ADOQuery1: TADOQuery; ADOQueryTemp: TADOQuery; Panel2: TPanel; DataSource2: TDataSource; CDS_YuanLiao: TClientDataSet; ADOQueryCmd: TADOQuery; cxPageControl1: TcxPageControl; cxTabSheet1: TcxTabSheet; cxTabSheet2: TcxTabSheet; cxGrid2: TcxGrid; Tv2: TcxGridDBTableView; cxGridDBColumn1: TcxGridDBColumn; v2Column2: TcxGridDBColumn; cxGridDBColumn2: TcxGridDBColumn; v2Column4: TcxGridDBColumn; cxGridDBColumn6: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; cxTabSheet4: TcxTabSheet; cxGrid3: TcxGrid; Tv3: TcxGridDBTableView; cxGridLevel2: TcxGridLevel; v3Column18: TcxGridDBColumn; cxGrid5: TcxGrid; Tv5: TcxGridDBTableView; cxGridDBColumn4: TcxGridDBColumn; cxGridDBColumn5: TcxGridDBColumn; cxGridDBColumn7: TcxGridDBColumn; cxGridDBColumn8: TcxGridDBColumn; cxGridDBColumn9: TcxGridDBColumn; cxGridDBColumn10: TcxGridDBColumn; cxGridDBColumn11: TcxGridDBColumn; cxGridDBColumn12: TcxGridDBColumn; cxGridDBColumn13: TcxGridDBColumn; cxGridDBColumn14: TcxGridDBColumn; cxGridDBColumn15: TcxGridDBColumn; cxGridDBColumn16: TcxGridDBColumn; cxGridDBColumn17: TcxGridDBColumn; cxGridDBColumn18: TcxGridDBColumn; cxGridDBColumn19: TcxGridDBColumn; cxGridDBColumn20: TcxGridDBColumn; cxGridDBColumn21: TcxGridDBColumn; cxGridDBColumn22: TcxGridDBColumn; cxGridDBColumn23: TcxGridDBColumn; cxGridDBColumn24: TcxGridDBColumn; cxGridDBColumn25: TcxGridDBColumn; cxGridDBColumn26: TcxGridDBColumn; cxGridDBColumn27: TcxGridDBColumn; cxGridDBColumn28: TcxGridDBColumn; cxGridLevel3: TcxGridLevel; Panel1: TPanel; Panel3: TPanel; cxGrid6: TcxGrid; Tv6: TcxGridDBTableView; cxGridDBColumn41: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column2: TcxGridDBColumn; cxGridDBColumn42: TcxGridDBColumn; cxGridLevel4: TcxGridLevel; ClientDataSet6: TClientDataSet; DataSource6: TDataSource; ClientDataSet5: TClientDataSet; DataSource3: TDataSource; ClientDataSet3: TClientDataSet; DataSource5: TDataSource; Panel4: TPanel; v2Column1: TcxGridDBColumn; v2Column3: TcxGridDBColumn; v2Column5: TcxGridDBColumn; v2Column6: TcxGridDBColumn; v2Column7: TcxGridDBColumn; v2Column10: TcxGridDBColumn; v2Column11: TcxGridDBColumn; ClientDataSet7: TClientDataSet; DataSource7: TDataSource; v5Column1: TcxGridDBColumn; v5Column2: TcxGridDBColumn; v5Column3: TcxGridDBColumn; v5Column4: TcxGridDBColumn; v5Column5: TcxGridDBColumn; v5Column6: TcxGridDBColumn; v5Column7: TcxGridDBColumn; v5Column8: TcxGridDBColumn; v5Column9: TcxGridDBColumn; v5Column10: TcxGridDBColumn; v5Column11: TcxGridDBColumn; v5Column12: TcxGridDBColumn; v3Column37: TcxGridDBColumn; ScrollBox1: TScrollBox; Label3: TLabel; Label11: TLabel; Label9: TLabel; Label18: TLabel; Label19: TLabel; Label22: TLabel; Label16: TLabel; Label26: TLabel; Label31: TLabel; Label42: TLabel; CarType: TcxButtonEdit; C_Note: TRichEdit; LabName: TComboBox; C_Spec: TRichEdit; KZ: TEdit; MF: TEdit; C_CodeName: TcxButtonEdit; C_Code: TEdit; Label7: TLabel; SJNote: TRichEdit; ISKF: TCheckBox; ISYT: TCheckBox; ISCZ: TCheckBox; Label24: TLabel; Label25: TLabel; GongYiCode: TEdit; ToolBar3: TToolBar; ToolButton3: TToolButton; ToolButton4: TToolButton; Label27: TLabel; JTZB: TcxButtonEdit; ZhenCun: TEdit; Label2: TLabel; PBFactoryNoName: TcxButtonEdit; QFlag: TComboBox; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure cxGridDBColumn1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v2Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure PiQtyChange(Sender: TObject); procedure Tv6DblClick(Sender: TObject); procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Tv5MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v2Column11PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure SJCarNOPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure C_CodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ISCZClick(Sender: TObject); procedure ISKFClick(Sender: TObject); procedure cxButtonEdit1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure CarTypePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TBSaveClick(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure PBFactoryNoNameClick(Sender: TObject); procedure QFlagChange(Sender: TObject); private FXS, Fint: Integer; procedure InitData(); function SaveData(): Boolean; { Private declarations } public PState, FCopyInt: Integer; FMainId, FConNo, PType, FSubId: string; { Public declarations } end; var frmClothGYInPut: TfrmClothGYInPut; newh: hwnd; implementation uses U_DataLink, U_ZDYHelp, U_RTFun, U_CompressionFun, U_ZdyAttachGYS, U_ShaKCSelList, U_SCPerson, U_ContractListNXSel, U_FjList_RZ, U_JTAllSel, U_CPManageFMSel, U_ZdyAttachment, U_MachineTypeSel, U_YCLViewSel; {$R *.dfm} function TfrmClothGYInPut.SaveData(): Boolean; var maxno, maxsubno, maxpbno, maxpzno, maxsjno: string; begin try ADOCmd.Connection.BeginTrans; if Trim(FSubId) = '' then begin if GetLSNo(ADOCmd, maxsubno, 'GY', 'Cloth_GY', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取工艺流水号失败!', '提示', 0); Exit; end; end else begin maxsubno := Trim(FSubId); end; with ADOCmd do begin Close; SQL.Clear; sql.Add('select * from Cloth_GY where '); sql.Add(' GYId=''' + Trim(maxsubno) + ''''); Open; end; with ADOCmd do begin if Trim(FSubId) = '' then begin Append; FieldByName('Filler').Value:=Trim(DName); FieldByName('FillTime').Value:=SGetServerDateTime(ADOTemp); end else begin Edit; FieldByName('Editer').Value:=Trim(DName); FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); end; FieldByName('GYId').Value := Trim(maxsubno); RTSetsavedata(ADOCmd, 'Cloth_GY', ScrollBox1, 2); FieldByName('ISYT').Value := ISYT.Checked; FieldByName('ISKF').Value := ISKF.Checked; FieldByName('ISCZ').Value := ISCZ.Checked; FieldByName('Valid').Value := 'Y'; Post; end; with ADOCmd do begin Close; sql.Clear; sql.Add('select * from Cloth_GY where GongYiCode='''+Trim(GongYiCode.Text)+''''); Open; end; if ADOCmd.RecordCount>1 then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('此工艺编号已存在!','提示',0); Exit; end; ///保存子表 ///保存配比表 with CDS_YuanLiao do begin First; while not Eof do begin if Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) = '' then begin if GetLSNo(ADOTemp, maxpbno, 'GB', 'Cloth_YCL_PB_GY', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取配比子流水号失败!', '提示', 0); Exit; end; end else begin maxpbno := Trim(CDS_YuanLiao.fieldbyname('PBId').AsString); end; with ADOCmd do begin Close; SQL.Clear; sql.Add('select * from Cloth_YCL_PB_GY where '); sql.Add(' PBId=''' + Trim(maxpbno) + ''''); Open; end; with ADOCmd do begin if Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); end; FieldByName('GYId').Value := Trim(maxsubno); FieldByName('PBId').Value := Trim(maxpbno); FieldByName('SPId').Value := Trim(CDS_YuanLiao.fieldbyname('SPId').AsString); RTSetSaveDataCDS(ADOCmd, Tv2, CDS_YuanLiao, 'Cloth_YCL_PB_GY', 0); Post; end; CDS_YuanLiao.Edit; CDS_YuanLiao.FieldByName('GYId').Value := Trim(maxsubno); CDS_YuanLiao.FieldByName('PBId').Value := Trim(maxpbno); //Order_Sub.Post; 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(ADOCmd, maxpzno, 'GZ', 'Cloth_PaiZhen_GY', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取排针流水号失败!', '提示', 0); Exit; end; end else begin maxpzno := Trim(ClientDataSet3.fieldbyname('PZId').AsString); end; with ADOCmd do begin Close; SQL.Clear; sql.Add('select * from Cloth_PaiZhen_GY where '); sql.Add(' PZId=''' + Trim(maxpzno) + ''''); Open; end; with ADOCmd do begin if Trim(ClientDataSet3.fieldbyname('PZId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); end; FieldByName('GYId').Value := Trim(maxsubno); FieldByName('PZId').Value := Trim(maxpzno); RTSetSaveDataCDS(ADOCmd, Tv3, ClientDataSet3, 'Cloth_PaiZhen', 0); FieldByName('PZType').Value := '排针'; FieldByName('PZName').Value := ClientDataSet3.fieldbyname('PZName').AsString; Post; end; ClientDataSet3.Edit; ClientDataSet3.FieldByName('GYId').Value := Trim(maxsubno); 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(ADOCmd, maxsjno, 'GS', 'Cloth_PaiZhen', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; Application.MessageBox('取三角流水号失败!', '提示', 0); Exit; end; end else begin maxsjno := Trim(ClientDataSet5.fieldbyname('PZId').AsString); end; with ADOCmd do begin Close; SQL.Clear; sql.Add('select * from Cloth_PaiZhen_GY where '); sql.Add(' PZId=''' + Trim(maxsjno) + ''''); Open; end; with ADOCmd do begin if Trim(ClientDataSet5.fieldbyname('PZId').AsString) = '' then begin Append; FieldByName('Filler').Value := Trim(DName); FieldByName('FillTime').Value := SGetServerDateTime(ADOTemp); end else begin Edit; FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); end; FieldByName('GYID').Value := Trim(maxsubno); FieldByName('PZId').Value := Trim(maxsjno); RTSetSaveDataCDS(ADOCmd, Tv5, ClientDataSet5, 'Cloth_PaiZhen', 0); FieldByName('PZType').Value := '三角'; Post; end; ClientDataSet5.Edit; ClientDataSet5.FieldByName('GYId').Value := Trim(maxsubno); ClientDataSet5.FieldByName('PZId').Value := Trim(maxsjno); //Order_Sub.Post; Next; end; end; ClientDataSet5.EnableControls; ///保存三角表 ///更新附件表主键 ClientDataSet6.DisableControls; with ClientDataSet6 do begin First; while not Eof do begin with ADOCmd do begin Close; sql.Clear; sql.Add('Update TP_File Set WBID=''' + Trim(maxsubno) + ''''); sql.Add(' where TFID=''' + Trim(ClientDataSet6.fieldbyname('TFID').AsString) + ''''); ExecSQL; end; Next; end; end; ClientDataSet6.EnableControls; ///更新附件表主键 ADOCmd.Connection.CommitTrans; FSubId := Trim(maxsubno); Result := True; except Result := False; ClientDataSet3.EnableControls; ClientDataSet5.EnableControls; ClientDataSet6.EnableControls; CDS_YuanLiao.EnableControls; ADOCmd.Connection.RollbackTrans; Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmClothGYInPut.TBCloseClick(Sender: TObject); begin ModalResult := 1; end; procedure TfrmClothGYInPut.InitData(); var PBNO, PBFlag: string; begin with ADOQuery1 do begin Close; SQL.Clear; sql.Add(' select * from Cloth_GY '); sql.Add(' where GYId= ' + quotedstr(Trim(FSubId))); Open; end; SCSHData(ADOQuery1, ScrollBox1, 2); ISYT.Checked := ADOQuery1.FieldByName('ISYT').AsBoolean; ISKF.Checked := ADOQuery1.FieldByName('ISKF').AsBoolean; ISCZ.Checked := ADOQuery1.FieldByName('ISCZ').AsBoolean; with ADOTemp do begin Close; sql.Clear; sql.Add('select A.* '); sql.Add('from Cloth_YCL_PB_GY A '); sql.Add(' where A.GYID=''' + Trim(FSubId) + ''''); Open; end; SCreateCDS20(ADOTemp, CDS_YuanLiao); SInitCDSData20(ADOTemp, CDS_YuanLiao); with ADOTemp do begin Close; sql.Clear; sql.Add('select * from Cloth_PaiZhen_GY where GYID=''' + Trim(FSubId) + ''''); sql.Add(' and PZType=''排针'' '); Open; end; SCreateCDS20(ADOTemp, ClientDataSet3); SInitCDSData20(ADOTemp, ClientDataSet3); with ADOTemp do begin Close; sql.Clear; sql.Add('select * from Cloth_PaiZhen_GY where GYID=''' + Trim(FSubId) + ''''); sql.Add(' and PZType=''三角'' '); Open; end; SCreateCDS20(ADOTemp, ClientDataSet5); SInitCDSData20(ADOTemp, ClientDataSet5); with ADOTemp do begin close; sql.Clear; sql.Add('select TFID,FileName,TFdate,Filler,FillTime from TP_File '); sql.Add('where WBID=' + quotedstr(FSubId)); sql.Add('and TFType=''PB附件'' '); open; end; SCreateCDS20(ADOTemp, ClientDataSet6); SInitCDSData20(ADOTemp, ClientDataSet6); end; procedure TfrmClothGYInPut.FormShow(Sender: TObject); begin InitData(); end; procedure TfrmClothGYInPut.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 TfrmClothGYInPut.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 TfrmClothGYInPut.PiQtyChange(Sender: TObject); var FQty1, FQty2: string; begin {FQty1:=Qty1.Text; if Trim(FQty1)='' then begin FQty1:='0'; end; FQty2:=Qty2.Text; if Trim(FQty2)='' then begin FQty2:='0'; end; C_Qty.Text:=FloatToStr(StrToFloat(FQty1)*StrToFloat(FQty2)); } end; procedure TfrmClothGYInPut.Tv6DblClick(Sender: TObject); var sFieldName: string; fileName: string; ff: TADOBlobStream; FJStream: TMemoryStream; begin if ClientDataSet6.IsEmpty then exit; Panel4.Caption := '正在下载文件,请稍等...'; Panel4.Visible := true; application.ProcessMessages; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from TP_File where TFID=''' + Trim(ClientDataSet6.fieldbyname('TFID').AsString) + ''''); Open; end; sFieldName := 'D:\图片查看'; if not DirectoryExists(pchar(sFieldName)) then CreateDirectory(pchar(sFieldName), nil); fileName := ClientDataSet6.fieldbyname('FileName').AsString; sFieldName := sFieldName + '\' + trim(fileName); try ff := TADOBlobstream.Create(ADOQueryTemp.fieldByName('FilesOther') as TblobField, bmRead); FJStream := TMemoryStream.Create; ff.SaveToStream(FJStream); UnCompressionStream(FJStream); FJStream.SaveToFile(sFieldName); Panel4.Visible := False; ShellExecute(Handle, 'open', PChar(sFieldName), '', '', SW_SHOWNORMAL); finally Panel4.Visible := False; FJStream.free; ff.Free; end; end; procedure TfrmClothGYInPut.Tv3MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Fint := 1; end; procedure TfrmClothGYInPut.Tv5MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Fint := 2; end; procedure TfrmClothGYInPut.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin FactType.Text:='坯布厂'; if ShowModal = 1 then begin with Self.ClientDataSet7 do begin Edit; FieldByName('WFGYSName').Value := Trim(CDS_HZ.fieldbyname('CoName').AsString); FieldByName('WFGYSNo').Value := Trim(CDS_HZ.fieldbyname('CoCode').AsString); FieldByName('WFGYSNameJC').Value := Trim(CDS_HZ.fieldbyname('CoHRName').AsString); end; end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmClothGYInPut.v2Column11PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin if ShowModal = 1 then begin with Self.CDS_YuanLiao do begin Edit; FieldByName('GYSName').Value := Trim(CDS_HZ.fieldbyname('CoName').AsString); end; end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmClothGYInPut.SJCarNOPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var FSJCarNO: string; begin try frmJTAllSel := TfrmJTAllSel.Create(Application); with frmJTAllSel do begin if ShowModal = 1 then begin with frmJTAllSel.ClientDataSet1 do begin while frmJTAllSel.ClientDataSet1.Locate('SSel', true, []) do begin if trim(FSJCarNO) = '' then FSJCarNO := trim(ClientDataSet1.fieldbyname('MCNO').AsString) else FSJCarNO := FSJCarNO + ',' + trim(ClientDataSet1.fieldbyname('MCNO').AsString); frmJTAllSel.ClientDataSet1.delete; end; end; end; end; finally frmJTAllSel.Free; end; end; procedure TfrmClothGYInPut.C_CodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmYCLViewSel := TfrmYCLViewSel.Create(Application); with frmYCLViewSel do begin if ShowModal = 1 then begin C_Code.Text := frmYCLViewSel.CDS_HZ.fieldbyname('SPCode').asstring; C_CodeName.Text := frmYCLViewSel.CDS_HZ.fieldbyname('SPName').asstring; // MPRTSpec.Text := frmYCLViewSel.CDS_HZ.fieldbyname('SPSpec').asstring; // MPRTCF.Text := frmYCLViewSel.CDS_HZ.fieldbyname('CYCF').asstring; // MPRTMF.Text := frmYCLViewSel.CDS_HZ.fieldbyname('SPMF').asstring; // MPRTKZ.Text := frmYCLViewSel.CDS_HZ.fieldbyname('SPKZ').asstring; end; end; finally frmYCLViewSel.Free; end; end; procedure TfrmClothGYInPut.ISCZClick(Sender: TObject); begin if ISCZ.Checked then ISKF.Checked := False; end; procedure TfrmClothGYInPut.ISKFClick(Sender: TObject); begin if ISKF.Checked then ISCZ.Checked := False; end; procedure TfrmClothGYInPut.cxButtonEdit1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); 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); V1Name.Caption := '针寸'; if ShowModal = 1 then begin ZhenCun.Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmClothGYInPut.CarTypePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmMachineTypeSel := TfrmMachineTypeSel.Create(Application); with frmMachineTypeSel do begin if ShowModal = 1 then begin CarType.Text := Trim(CDS_HZ.fieldbyname('MCZX').AsString) + Trim(CDS_HZ.fieldbyname('MCLS').AsString) + Trim(CDS_HZ.fieldbyname('MCType').AsString); JTZB.Text := Trim(CDS_HZ.fieldbyname('MCClass').AsString); end; end; finally frmMachineTypeSel.Free; end; end; procedure TfrmClothGYInPut.TBSaveClick(Sender: TObject); begin GongYiCode.SetFocus; if SaveData() then begin Application.MessageBox('保存成功!', '提示', 0); ModalResult := 1; end; end; procedure TfrmClothGYInPut.ToolButton3Click(Sender: TObject); var OpenDiaLog: TOpenDialog; fFileName: string; fFilePath: string; maxNo: string; FJStream: TMemoryStream; mfileSize: integer; mCreationTime: TdateTime; mWriteTime: TdateTime; begin //if cxPageControl1.ActivePageIndex=0 then Exit; if cxPageControl1.ActivePageIndex = 0 then begin with CDS_YuanLiao do begin Append; FieldByName('PBQty').Value := 0; Post; end; end else if cxPageControl1.ActivePageIndex = 1 then begin if Fint = 1 then begin with ClientDataSet3 do begin Append; Post; end; end else if Fint = 2 then with ClientDataSet5 do begin Append; Post; end; end else if cxPageControl1.ActivePageIndex = 2 then begin try adoqueryCmd.Connection.BeginTrans; OpenDiaLog := TOpenDialog.Create(Self); if OpenDiaLog.Execute then begin fFilePath := OpenDiaLog.FileName; fFileName := ExtractFileName(OpenDiaLog.FileName); Panel4.Caption := '正在加载文件,请稍等...'; Panel4.Visible := true; application.ProcessMessages; if GetLSNo(ADOQueryCmd, maxNo, 'FJ', 'TP_File', 4, 1) = False then begin adoqueryCmd.Connection.RollbackTrans; Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; //获取文件信息 GetFileInfo(fFilePath, mfileSize, mCreationTime, mWriteTime); with adoqueryCmd do begin close; sql.Clear; sql.Add('delete from TP_File '); sql.Add('where TFID=' + quotedstr(trim(maxNo))); execsql; end; try FJStream := TMemoryStream.Create; with adoqueryCmd do begin close; sql.Clear; sql.Add('select * from TP_File '); sql.Add('where TFID=' + quotedstr(trim(maxNo))); open; append; fieldbyname('TFID').Value := trim(maxNo); fieldbyname('TFType').Value := 'PB附件'; fieldbyname('Filler').Value := trim(DName); fieldbyname('FileName').Value := trim(fFileName); fieldbyname('TFDate').Value := mWriteTime; FJStream.LoadFromFile(fFilePath); CompressionStream(FJStream); tblobfield(FieldByName('Filesother')).LoadFromStream(FJStream); post; end; with ClientDataSet6 do begin Append; FieldByName('TFID').Value := Trim(maxNo); FieldByName('FillTime').Value := SGetServerDateTime(ADOTemp); FieldByName('TFdate').Value := mWriteTime; FieldByName('Filler').Value := Trim(DName); fieldbyname('FileName').Value := trim(fFileName); Post; end; finally FJStream.Free; end; end; adoqueryCmd.Connection.CommitTrans; Panel4.Visible := False; except Panel4.Visible := False; adoqueryCmd.Connection.RollbackTrans; application.MessageBox('附件保存失败!', '提示信息', 0); end; end else if cxPageControl1.ActivePageIndex = 3 then begin with ClientDataSet7 do begin Append; Post; end; end; end; procedure TfrmClothGYInPut.ToolButton4Click(Sender: TObject); begin if cxPageControl1.ActivePageIndex = 0 then 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 ADOCmd do begin Close; sql.Clear; sql.Add('delete Cloth_YCL_PB_GY where PBId=''' + Trim(CDS_YuanLiao.fieldbyname('PBId').AsString) + ''''); ExecSQL; end; end; CDS_YuanLiao.Delete; end else if cxPageControl1.ActivePageIndex = 1 then begin if Fint = 1 then begin if ClientDataSet3.IsEmpty then Exit; if Application.MessageBox('确定要删除排针数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOCmd do begin Close; sql.Clear; sql.Add('delete Cloth_PaiZhen_GY where PZID=''' + Trim(ClientDataSet3.fieldbyname('PZID').AsString) + ''''); ExecSQL; end; ClientDataSet3.Delete; end else if Fint = 2 then begin if ClientDataSet5.IsEmpty then Exit; if Application.MessageBox('确定要删除三角数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOCmd do begin Close; sql.Clear; sql.Add('delete Cloth_PaiZhen_GY where PZID=''' + Trim(ClientDataSet5.fieldbyname('PZID').AsString) + ''''); ExecSQL; end; ClientDataSet5.Delete; end; end else if cxPageControl1.ActivePageIndex = 2 then begin if ClientDataSet6.IsEmpty then Exit; if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOCmd do begin Close; sql.Clear; sql.Add('delete TP_File where TFID=''' + Trim(ClientDataSet6.fieldbyname('TFID').AsString) + ''''); ExecSQL; end; ClientDataSet6.Delete; end; end; procedure TfrmClothGYInPut.PBFactoryNoNameClick(Sender: TObject); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin if ShowModal = 1 then begin PBFactoryNoName.Text := Trim(CDS_HZ.fieldbyname('CoName').AsString); end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmClothGYInPut.QFlagChange(Sender: TObject); begin if Trim(QFlag.Text)<>'' then begin with ADOTemp do begin Close; sql.Clear; SQL.Add('select AA=Cast(isnull(Cast(max(GongYiCode) as int),0)+1 as varchar(20)) from Cloth_GY where GongYiCode like '''+Trim(QFlag.Text)+'%'+''''); Open; end; if Trim(ADOTemp.fieldbyname('AA').AsString)='1' then begin GongYiCode.Text:=QFlag.Text+'0001'; end else begin GongYiCode.Text:=Trim(ADOTemp.fieldbyname('AA').AsString); end; end; end; end.