unit U_ContractCGJGViewList; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxTextEdit, cxPC, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI, cxCheckBox,jpeg,IniFiles; type TfrmContractCGJGViewList = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBPrint: TToolButton; TBClose: TToolButton; Panel1: TPanel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; Label1: TLabel; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; Label3: TLabel; ConNo: TEdit; Label5: TLabel; C_CodeName: TEdit; Order_Main: TClientDataSet; Label4: TLabel; FactoryNoName: TEdit; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; CDS_PRT: TClientDataSet; ToolButton2: TToolButton; ToolButton3: TToolButton; ODPat: TOpenDialog; IdFTP1: TIdFTP; SaveDialog1: TSaveDialog; ToolButton8: TToolButton; ComboBox1: TComboBox; Label14: TLabel; ConTypeOther: TComboBox; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1ConNo: TcxGridDBColumn; v1Column9: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1DeliveryDate: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1PRTSpec: TcxGridDBColumn; v1FactoryNo1Name: TcxGridDBColumn; v1Qty1: TcxGridDBColumn; v1C_Color: TcxGridDBColumn; v1C_SeNo: TcxGridDBColumn; v1PS: TcxGridDBColumn; v1PRTOrderQty: TcxGridDBColumn; v1OrderUnit: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1PRTQty: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1C_Note: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1Column10: TcxGridDBColumn; v1KZQty: TcxGridDBColumn; v1KZ: TcxGridDBColumn; v1C_CF: TcxGridDBColumn; v1PiZhong: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; TSsel: TToolButton; v1OrderNO: TcxGridDBColumn; Label6: TLabel; OrderNo: TEdit; v1ConNoHZ: TcxGridDBColumn; ToolButton1: TToolButton; v1KHJC: TcxGridDBColumn; Label2: TLabel; KHJC: TEdit; v1IFRK: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBPrintClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ConNoChange(Sender: TObject); procedure FormShow(Sender: TObject); procedure conPress(Sender: TObject; var Key: Char); procedure ToolButton2Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); procedure ToolButton8Click(Sender: TObject); procedure TSselClick(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure ToolButton1Click(Sender: TObject); procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); private FInt,PFInt:Integer; canshu1:string; lstPat: TStringList; AJpeg: TJPEGImage; procedure InitGrid(); procedure InitForm(); function DelData():Boolean; procedure ReadINIFile10(); { Private declarations } public FFormid:string; { Public declarations } end; var frmContractCGJGViewList: TfrmContractCGJGViewList; implementation uses U_DataLink,U_RTFun,U_ClothContractInPutSXMX,U_ZDYHelp,U_FjList_RZ {U_ClothContractInPutSX, U_ProductOrderList,U_ZDYHelp, ,U_ClothContractInPutHZ,U_ClothContractInPutPB}, U_ModuleNote; {$R *.dfm} procedure TfrmContractCGJGViewList.FormDestroy(Sender: TObject); begin frmContractCGJGViewList:=nil; end; procedure TfrmContractCGJGViewList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmContractCGJGViewList.TBCloseClick(Sender: TObject); var FPath:String; begin Close; WriteCxGrid('采购加工合同View1',Tv1,'生产合同管理'); end; procedure TfrmContractCGJGViewList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('select A.*,B.*,B.OrderNO OrderNoM,Money=B.C_Qty*B.Price '); sql.Add(',KHJC=(select Top 1 C.zdyNameZ from KH_Zdy_Attachment C inner join JYOrder_Main D on C.ZdyName=D.CustomerNoName where D.OrderNo=B.OrderNO)'); sql.Add(',ConNoHZ=(select Top 1 C.ConNo from JYOrder_Main C where C.OrderNo=B.OrderNo)'); sql.Add(',OrdMainid=(select Top 1 C.Mainid from JYOrder_Main C where C.OrderNo=B.OrderNo)'); sql.Add(',IFRK=(case when isnull((select Top 1 C.SPID from CK_SXPB_CR C where C.CGSubId=B.Subid and isnull(C.CKName,'''')=''坯布'' and C.CRFlag=''入库''),'''')='''' then ''否'' else ''是'' end)'); sql.Add(' from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId '); sql.Add(' where A.FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); sql.Add(' and A.FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); sql.Add(' and isnull(B.SChkstatus,'''')<>'''' '); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmContractCGJGViewList.InitForm(); begin ReadCxGrid('采购加工合同View1',Tv1,'生产合同管理'); EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); BegDate.DateTime:=EndDate.DateTime-30; end; procedure TfrmContractCGJGViewList.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active=False then Exit; SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; function TfrmContractCGJGViewList.DelData():Boolean; begin try Result:=false; ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); ExecSQL; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); Open; end; if ADOQueryTemp.IsEmpty then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); ExecSQL; end; end; if Trim(Order_Main.fieldbyname('SubId').AsString)='' then begin with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); ExecSQL; end; end; ADOQueryCmd.Connection.CommitTrans; Result:=True; except ADOQueryCmd.Connection.RollbackTrans; Result:=False; Application.MessageBox('数据删除异常!','提示',0); end; end; procedure TfrmContractCGJGViewList.TBPrintClick(Sender: TObject); var fPrintFile,FConNoM,RPTName:string; begin if Order_Main.IsEmpty then Exit; if Trim(ComboBox1.Text)='' then begin Application.MessageBox('报表名称不能为空!','提示',0); Exit; end; RPTName:='Report\'+Trim(ComboBox1.Text)+'.rmf'; // fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\采购加工合同.rmf' ; fPrintFile:= ExtractFilePath(Application.ExeName) +RPTName; with ADOQueryTemp do begin Filtered:=False; Close; sql.Clear; sql.Add('select A.*,B.*,Money=B.C_Qty*B.Price,C.*,D.KHName,D.ZKTelNo,D.ZKFax,D.ZKAddress '); sql.Add(' ,C.ZdyName,C.ZdyStr1,C.ZdyStr2,C.ZdyStr3,C.ZdyStr4'); sql.Add(' from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId'); sql.Add(' left join KH_Zdy C on A.CompanyName=C.ZdyName and C.Type=''GSTT'' '); sql.Add(' left join ZH_KH_Info D on A.FactoryNo=D.ZKID'); sql.Add(' where A.Mainid='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); Open; end; SCreateCDS20(ADOQueryTemp,CDS_PRT); SInitCDSData20(ADOQueryTemp,CDS_PRT); if FileExists(fPrintFile) then begin //RMVariables['begindate']:=begindate.DateTime; //RMVariables['enddate']:=enddate.DateTime; //RMVariables['printtime']:=Now; //RMVariables['printer']:=Trim(gUserName); RM1.LoadFromFile(fPrintFile); RM1.ShowReport; end else begin Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+RPTName),'提示',0); end; end; procedure TfrmContractCGJGViewList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmContractCGJGViewList.ConNoChange(Sender: TObject); begin if ADOQueryMain.Active=False then Exit; SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); end; procedure TfrmContractCGJGViewList.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmContractCGJGViewList.conPress(Sender: TObject; var Key: Char); begin if Key=#13 then begin if Length(Trim(ConNo.Text))<3 then Exit; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add('select A.*,B.*,Money=B.C_Qty*B.Price from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId '); sql.Add(' where A.ConNo like '''+'%'+Trim(ConNo.text)+'%'+''''); sql.Add(' and isnull(SSPerson,'''')<>'''' '); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; end; procedure TfrmContractCGJGViewList.ToolButton2Click(Sender: TObject); begin try frmClothContractInPutSXMX:=TfrmClothContractInPutSXMX.Create(Application); with frmClothContractInPutSXMX do begin PState:=1; FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); FConNo:=Trim(Self.Order_Main.fieldbyname('ConNo').AsString); TBSave.Visible:=False; ToolBar2.Visible:=False; if ShowModal=1 then begin end; end; finally frmClothContractInPutSXMX.Free; end; end; procedure TfrmContractCGJGViewList.ToolButton3Click(Sender: TObject); begin try frmModuleNote:=TfrmModuleNote.Create(Application); with frmModuleNote do begin flag:='采购加工合同'; if ShowModal=1 then begin end; end; finally frmModuleNote.Free; end; end; procedure TfrmContractCGJGViewList.FormCreate(Sender: TObject); begin canshu1:=Trim(DParameters1); end; procedure TfrmContractCGJGViewList.ReadINIFile10(); 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 TfrmContractCGJGViewList.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; procedure TfrmContractCGJGViewList.ToolButton8Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; TcxGridToExcel('采购加工合同',cxGrid1); end; procedure TfrmContractCGJGViewList.TSselClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; ModalResult:=1; end; procedure TfrmContractCGJGViewList.Tv1CellDblClick( Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin TSsel.Click; end; procedure TfrmContractCGJGViewList.ToolButton1Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; try frmFjList_RZ:=TfrmFjList_RZ.Create(Application); with frmFjList_RZ do begin fkeyNO:=Trim(Self.Order_Main.fieldbyname('ConNoHZ').AsString); fType:='合同'; if ShowModal=1 then begin end; end; finally frmFjList_RZ.Free; end; end; procedure TfrmContractCGJGViewList.Tv1StylesGetContentStyle( Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); var id,id10:Integer; begin Id:=Tv1.GetColumnByFieldName('IFRK').Index; if FFormid='1' then begin if ARecord.Values[id]='是' then AStyle:=DataLink_FMMD.Green; end; end; end.