unit U_MLMangeTJ; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxTextEdit, cxButtonEdit, Menus, cxLookAndFeelPainters, cxButtons, cxImage; type TfrmMLMangeTJ = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBDel: TToolButton; TBClose: TToolButton; DataSource1: TDataSource; ADOQueryTree: TADOQuery; ADOQueryTemp: TADOQuery; ADOQueryCmd: TADOQuery; cxGridPopupMenu1: TcxGridPopupMenu; Panel1: TPanel; ToolButton2: TToolButton; ToolButton3: TToolButton; DataSource2: TDataSource; ADOQueryMain: TADOQuery; CDS_Main: TClientDataSet; ToolButton1: TToolButton; RM1: TRMGridReport; RMDB_Main: TRMDBDataSet; ODPat: TOpenDialog; IdFTP1: TIdFTP; SaveDialog1: TSaveDialog; DataSource3: TDataSource; cxGridPopupMenu2: TcxGridPopupMenu; Order_GX: TClientDataSet; DataSource4: TDataSource; cxGridPopupMenu3: TcxGridPopupMenu; ML_Col: TClientDataSet; DataSource5: TDataSource; cxGridPopupMenu4: TcxGridPopupMenu; CDS_Sub: TClientDataSet; cxStyleRepository1: TcxStyleRepository; cxStyle1: TcxStyle; cxGridPopupMenu5: TcxGridPopupMenu; DataSource6: TDataSource; Ord_HX: TClientDataSet; ADOQuery1: TADOQuery; TCK: TToolButton; ToolButton11: TToolButton; Panel5: TPanel; Label2: TLabel; MLNo: TEdit; Label1: TLabel; Label4: TLabel; MLName: TEdit; GYLXName: TEdit; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1MLNo: TcxGridDBColumn; v1MLName: TcxGridDBColumn; v1MLMF: TcxGridDBColumn; v1MLKZ: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1GYLXName: TcxGridDBColumn; v1SKID: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; TPrint: TToolButton; Label3: TLabel; TColAdd: TToolButton; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBDelClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure cxDBTreeList1DblClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure MLNoChange(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure ToolButton10Click(Sender: TObject); procedure TV4CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure Tv1DblClick(Sender: TObject); procedure TCKClick(Sender: TObject); procedure ToolButton11Click(Sender: TObject); procedure TPrintClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure TColAddClick(Sender: TObject); private { Private declarations } PState:Integer; FCPID,FTopID:String; procedure InitTree(); procedure InitGrid(); procedure ReadINIFile(); procedure ButtonColorCSH(); public canshu1:string; { Public declarations } end; var frmMLMangeTJ: TfrmMLMangeTJ; implementation uses U_DataLink,U_Fun,U_CPAdd,U_FileUp,U_MLManage_LR,U_BPZdy_LR,U_BPZdy_SH,U_MLManage_LRRS, U_MLManage_FHLR,U_MLManage_ZHLR,U_BPZdy_HXK,U_MLMange_CX,U_BPZdy_LRPB,U_BPZdy_LRGX, U_CPManage_TP,U_BPZdy_LRSHK, U_BPZdy_PanelCX,U_BPZdy_Panel,U_MLManage_LRTJ; {$R *.dfm} procedure TfrmMLMangeTJ.InitTree(); begin end; procedure TfrmMLMangeTJ.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Close; SQL.Clear; SQL.Add('select * '); sql.Add(',SKID=(select B.SKID from BP_ZDY B where B.BPID=A.MBPID)'); sql.Add(',BPCode=(select B.BPCode from BP_ZDY B where B.BPID=A.MBPID)'); sql.Add(' from ML_Manage A '); sql.Add(' where isnull(MLType,'''')=''烫金面料'' '); Open; end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmMLMangeTJ.FormDestroy(Sender: TObject); begin frmMLMangeTJ:=nil; end; procedure TfrmMLMangeTJ.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmMLMangeTJ.TBCloseClick(Sender: TObject); begin WriteCxGrid('烫金面料',Tv1,'样品管理'); Close; end; procedure TfrmMLMangeTJ.TBDelClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; with ADOQueryCmd do begin close; sql.Clear; SQL.Add('select * from BP_DY '); sql.Add('where MLID='''+trim(CDS_Main.fieldbyname('MLID').AsString)+''''); Open; end; if ADOQueryCmd.IsEmpty=false then begin if Application.MessageBox('数据已打印确定要删除吗?','提示',32+4)<>IDYES then Exit; exit; end else begin if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('delete ML_Manage where MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+''''); sql.Add('delete ML_Manage_PB where MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+''''); sql.Add('delete ML_Manage_GX where MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+''''); ExecSQL; end; CDS_Main.Delete; end; procedure TfrmMLMangeTJ.FormShow(Sender: TObject); begin if canshu1='高权限' then begin toolbutton11.Visible:=True; ToolButton3.Visible:=true; TBDel.Visible:=true; TColAdd.Visible:=false; end else begin if canshu1='查询' then begin toolbutton11.Visible:=false; ToolButton3.Visible:=false; TBDel.Visible:=false; TColAdd.Visible:=false; end else begin toolbutton11.Visible:=false; ToolButton3.Visible:=false; TBDel.Visible:=false; TColAdd.Visible:=true; end; end; InitGrid(); ReadCxGrid('烫金面料',Tv1,'样品管理'); end; procedure TfrmMLMangeTJ.cxDBTreeList1DblClick(Sender: TObject); begin InitGrid(); end; procedure TfrmMLMangeTJ.TBRafreshClick(Sender: TObject); begin InitGrid(); if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); end; end; procedure TfrmMLMangeTJ.ToolButton3Click(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; try frmMLManage_LRTJ:=TfrmMLManage_LRTJ.Create(Application); with frmMLManage_LRTJ do begin FCYID:=Trim(Self.CDS_Main.fieldbyname('MLID').AsString); FGYName:='烫金'; if ShowModal=1 then begin Self.InitGrid(); end; end; finally frmMLManage_LRTJ.Free; end; end; procedure TfrmMLMangeTJ.ToolButton2Click(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); end; end; procedure TfrmMLMangeTJ.MLNoChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel5,1,2)); SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); end; end; procedure TfrmMLMangeTJ.ToolButton1Click(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; TcxGridToExcel('客户拿样',cxGrid1); end; procedure TfrmMLMangeTJ.ReadINIFile(); var programIni:Tinifile; //配置文件名 FileName:string; begin FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI'; programIni:=Tinifile.create(FileName); server:=programIni.ReadString('SERVER','服务器地址','127.0.0.1'); programIni.Free; end; procedure TfrmMLMangeTJ.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin with ADOQueryCmd do begin Close; SQL.Clear; sql.Add(' select A.*,isnull(B.BPCode,C.MLNo) BPCode,isnull(B.BPName,C.MLName) BPName'); sql.Add(' ,isnull(B.BPMF,C.MLMF) BPMF,isnull(B.BPKZ,C.MLKZ) BPKZ'); sql.Add(',B.BPJS,B.BPWS,B.BPMiDu,B.BPUnit,C.MLDLNo,C.DLHXK'); SQL.Add(' from ML_Manage_PB A left join BP_ZDY B on B.BPID=A.BPID '); sql.Add(' left join ML_Manage C on C.MLID=A.BPID'); sql.Add(' where A.MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+''''); //ShowMessage(sql.Text); Open; end; SCreateCDS20(ADOQueryCmd,CDS_Sub); SInitCDSData20(ADOQueryCmd,CDS_Sub); with ADOQueryCmd do begin Close; SQL.Clear; sql.Add(' select A.*,B.*,C.* from ML_Manage_GX A inner join BP_ZDY B on B.BPID=A.BPID '); sql.Add('inner join BP_ZDY_Sub C on C.BPSubID=A.BPSubID'); sql.Add(' where A.MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+''''); Open; end; SCreateCDS20(ADOQueryCmd,Order_GX); SInitCDSData20(ADOQueryCmd,Order_GX); //if CDS_Main.FieldByName('MLType').AsString<>'复合' then begin //if CDS_Main.FieldByName('MLType').AsString<>'组合' then begin with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select * from BP_ZDY_Sub '); sql.Add('where BPCode='''+Trim(CDS_Main.fieldbyname('MLDLNo').AsString)+''' and BPflag=''SHK'''); Open; end; SCreateCDS20(ADOQueryCmd,ML_Col); SInitCDSData20(ADOQueryCmd,ML_Col); end; with ADOQueryCmd do begin Close; SQL.Clear; sql.Add('select A.*,B.* from BP_ZDY_Sub A '); Sql.Add('inner join KH_Zdy_Attachment B on A.HXATID=B.ATID and B.Type=''CPHX'''); sql.Add(' where A.BPCode='''+trim(CDS_Main.fieldbyname('DLHXK').AsString)+''''); open; end; SCreateCDS20(ADOQueryCmd,Ord_HX); SInitCDSData20(ADOQueryCmd,Ord_HX); end; end; procedure TfrmMLMangeTJ.ToolButton10Click(Sender: TObject); begin {if RadioGroup1.ItemIndex=-1 then begin application.MessageBox('请选择工序','提示'); exit; end;} end; procedure TfrmMLMangeTJ.TV4CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin //if CDS_Main.FieldByName('MLType').AsString='复合' then begin with ADOQuery1 do begin Close; SQL.Clear; sql.Add('select * from BP_ZDY_Sub '); sql.Add('where BPCode='''+Trim(CDS_Sub.Fieldbyname('MLDLNo').AsString)+''' and BPflag=''SHK'''); Open; end; SCreateCDS20(ADOQuery1,ML_Col); SInitCDSData20(ADOQuery1,ML_Col); with ADOQuery1 do begin Close; SQL.Clear; sql.Add('select A.*,B.* from BP_ZDY_Sub A '); Sql.Add('inner join KH_Zdy_Attachment B on A.HXATID=B.ATID and B.Type=''CPHX'''); sql.Add(' where A.BPCode='''+trim(CDS_Sub.Fieldbyname('DLHXK').AsString)+''''); open; end; SCreateCDS20(ADOQuery1,Ord_HX); SInitCDSData20(ADOQuery1,Ord_HX); end; end; procedure TfrmMLMangeTJ.Tv1DblClick(Sender: TObject); begin TCK.Click; end; procedure TfrmMLMangeTJ.TCKClick(Sender: TObject); begin try frmMLManage_LRTJ:=TfrmMLManage_LRTJ.Create(Application); with frmMLManage_LRTJ do begin FCYID:=Trim(Self.CDS_Main.fieldbyname('MLID').AsString); FGYName:='烫金'; viewFlag:=True; if ShowModal=1 then begin Self.InitGrid(); end; end; finally frmMLManage_LRTJ.Free; end; end; procedure TfrmMLMangeTJ.ToolButton11Click(Sender: TObject); begin try frmMLManage_LRTJ:=TfrmMLManage_LRTJ.Create(Application); with frmMLManage_LRTJ do begin FCYID:=''; FGYName:='烫金'; if ShowModal=1 then begin Self.InitGrid(); end; end; finally frmMLManage_LRTJ.Free; end; end; procedure TfrmMLMangeTJ.ButtonColorCSH(); begin end; procedure TfrmMLMangeTJ.TPrintClick(Sender: TObject); var i,j,x:Integer; begin i:=0; j:=0; frmBPZDY_PanelCX:=TfrmBPZDY_PanelCX.create(self); with frmBPZDY_PanelCX do begin FColorFlag:=Trim(self.CDS_Main.fieldbyname('SKID').asstring); FBPID:=Trim(self.CDS_Main.fieldbyname('MBPID').asstring); FMLID:=Trim(Self.CDS_Main.fieldbyname('MLID').AsString); if ShowModal=1 then begin end; free; end; end; procedure TfrmMLMangeTJ.FormCreate(Sender: TObject); begin canshu1:=Trim(DParameters1); end; procedure TfrmMLMangeTJ.TColAddClick(Sender: TObject); var i,j,x:Integer; begin j:=0; frmBPZDY_Panel:=TfrmBPZDY_Panel.create(self); with frmBPZDY_Panel do begin if self.CDS_Main.fieldbyname('SKID').asstring='' then begin FColorFlag:=Trim(self.CDS_Main.fieldbyname('BPCode').asstring); end else FColorFlag:=Trim(self.CDS_Main.fieldbyname('SKID').asstring); if ShowModal=1 then begin end; free; end; end; end.