unit U_GDJinDuMXList; // 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, cxCheckBox; type TfrmGDJinDuMXList = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBAdd: TToolButton; TBEdit: TToolButton; TBDel: TToolButton; TBClose: TToolButton; cxGridPopupMenu1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; TBExport: TToolButton; Order_Main: TClientDataSet; CDS_PRT: TClientDataSet; ToolButton2: TToolButton; ToolButton3: TToolButton; cxGridPopupMenu2: TcxGridPopupMenu; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1FactoryNo1Name: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1PRTSpec: TcxGridDBColumn; v1Column1: TcxGridDBColumn; v1PRTQty: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column7: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column18: TcxGridDBColumn; v1Column19: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; v1Column8: TcxGridDBColumn; v1Column12: TcxGridDBColumn; v1Column13: TcxGridDBColumn; v1Column14: TcxGridDBColumn; v1Column20: TcxGridDBColumn; v1Column21: TcxGridDBColumn; Panel1: TPanel; Label1: TLabel; Label4: TLabel; Label6: TLabel; Label7: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; GDPerson: TEdit; OrderNo: TEdit; v1Column2: TcxGridDBColumn; Label2: TLabel; FactoryName: TEdit; Label3: TLabel; PSName: TEdit; Label8: TLabel; CRType: TComboBox; v1Column4: TcxGridDBColumn; BPType: TComboBox; Label9: TLabel; FromFactoryName: TEdit; Label10: TLabel; ToFactoryName: TEdit; Label11: TLabel; GYS: TEdit; v1Column5: TcxGridDBColumn; v1Column9: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure TBEditClick(Sender: TObject); procedure TBDelClick(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure TBAddClick(Sender: TObject); procedure FPNoChange(Sender: TObject); procedure FormShow(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); procedure cxTabControl1Change(Sender: TObject); private FInt,PFInt:Integer; canshu1:string; procedure InitGrid(); procedure InitGridWSql(fsj:string); procedure InitForm(); function DelData():Boolean; { Private declarations } public { Public declarations } end; var frmGDJinDuMXList: TfrmGDJinDuMXList; implementation uses U_DataLink,U_RTFun,U_GDJinDuMXInPut,U_ModuleNote; {$R *.dfm} procedure TfrmGDJinDuMXList.FormDestroy(Sender: TObject); begin frmGDJinDuMXList:=nil; end; procedure TfrmGDJinDuMXList.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmGDJinDuMXList.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('跟单进度明细列表',Tv1,'合同管理'); end; procedure TfrmGDJinDuMXList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(',GYS=isnull(FactoryName,'''')+'' ''+isnull(FromFactoryName,'''')+'' ''+isnull(ToFactoryName,'''') '); sql.Add(' ,Case when isnull(CRType,'''')=''发'' then PS else null end as FBPS '); sql.Add(' ,Case when isnull(CRType,'''')=''发'' then Qty else null end as FBQty '); sql.Add(' ,Case when isnull(CRType,'''')=''收'' then PS else null end as SBPS '); sql.Add(' ,Case when isnull(CRType,'''')=''收'' then Qty else null end as SBQty '); sql.Add(' from JYOrder_GD_Info A '); sql.Add(' where 1=1 '); if Trim(canshu1)<>'高权限' then begin sql.Add(' and A.FillerCode='''+Trim(DCode)+''''); end; sql.Add(' and A.GDDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); sql.Add(' and A.GDDate<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmGDJinDuMXList.InitGridWSql(fsj:string); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' ,Case when isnull(CRType,'''')=''发'' then PS else null end as FBPS '); sql.Add(' ,Case when isnull(CRType,'''')=''发'' then Qty else null end as FBQty '); sql.Add(' ,Case when isnull(CRType,'''')=''收'' then PS else null end as SBPS '); sql.Add(' ,Case when isnull(CRType,'''')=''收'' then Qty else null end as SBQty '); sql.Add(' from JYOrder_GD_Info A '); sql.Add(' where 1=1 '); if Trim(canshu1)<>'高权限' then begin sql.Add(' and A.FillerCode='''+Trim(DCode)+''''); end; sql.add(fsj); Open; end; SCreateCDS20(ADOQueryMain,Order_Main); SInitCDSData20(ADOQueryMain,Order_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmGDJinDuMXList.InitForm(); begin ReadCxGrid('跟单进度明细列表',Tv1,'合同管理'); EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); BegDate.DateTime:=EndDate.DateTime-30; {if Trim(canshu1)<>'高权限' then begin TBEdit.Visible:=False; TBDel.Visible:=False; end else begin TBEdit.Visible:=True; TBDel.Visible:=True; end; } end; procedure TfrmGDJinDuMXList.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; procedure TfrmGDJinDuMXList.TBEditClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; {with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from GD_JinDu_Main where GMID='''+Trim(Order_Main.fieldbyname('GMId').AsString)+''''); sql.Add(' and isnull(GMStatus,'''')=''已完成'' '); Open; end; if ADOQueryTemp.IsEmpty=False then begin Application.MessageBox('已完成不能修改数据!','提示',0); Exit; end;} try frmGDJinDuMXInPut:=TfrmGDJinDuMXInPut.Create(Application); with frmGDJinDuMXInPut do begin PState:=1; FMainId:=Trim(Self.Order_Main.fieldbyname('GDID').AsString); if ShowModal=1 then begin end; end; finally frmGDJinDuMXInPut.Free; end; end; procedure TfrmGDJinDuMXList.TBDelClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; {with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from GD_JinDu_Main where GMID='''+Trim(Order_Main.fieldbyname('GMId').AsString)+''''); sql.Add(' and isnull(GMStatus,'''')=''已完成'' '); Open; end; if ADOQueryTemp.IsEmpty=False then begin Application.MessageBox('已完成不能删除数据!','提示',0); Exit; end; } if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete JYOrder_GD_Info where GDId='''+Trim(Order_Main.fieldbyname('GDId').AsString)+''''); ExecSQL; end; Order_Main.Delete; end; function TfrmGDJinDuMXList.DelData():Boolean; begin end; procedure TfrmGDJinDuMXList.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then Exit; TcxGridToExcel('外销发票列表',cxGrid1); end; procedure TfrmGDJinDuMXList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmGDJinDuMXList.TBAddClick(Sender: TObject); begin try frmGDJinDuMXInPut:=TfrmGDJinDuMXInPut.Create(Application); with frmGDJinDuMXInPut do begin PState:=0; FMainId:=''; if ShowModal=1 then begin end; end; finally frmGDJinDuMXInPut.Free; end; end; procedure TfrmGDJinDuMXList.FPNoChange(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 TfrmGDJinDuMXList.FormShow(Sender: TObject); begin InitForm(); end; procedure TfrmGDJinDuMXList.ToolButton2Click(Sender: TObject); begin if Order_Main.IsEmpty then Exit; try frmGDJinDuMXInPut:=TfrmGDJinDuMXInPut.Create(Application); with frmGDJinDuMXInPut do begin PState:=1; FMainId:=Trim(Self.Order_Main.fieldbyname('GDId').AsString); TBSave.Visible:=False; ToolButton1.Visible:=False; ToolButton2.Visible:=False; if ShowModal=1 then begin end; end; finally frmGDJinDuMXInPut.Free; end; end; procedure TfrmGDJinDuMXList.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 TfrmGDJinDuMXList.FormCreate(Sender: TObject); begin canshu1:=Trim(DParameters1); end; procedure TfrmGDJinDuMXList.OrderNoKeyPress(Sender: TObject; var Key: Char); var fsj:string; begin if Key=#13 then begin if Length(Trim(OrderNo.Text))<3 then Exit; fsj:=' and A.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''; InitGridWSql(fsj); end; end; procedure TfrmGDJinDuMXList.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; end.