unit U_JGSXKNewList_SH; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, cxPC; type TfrmJGSXNewList_SH = class(TForm) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBExport: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; Label1: TLabel; Label2: TLabel; BegDate: TDateTimePicker; EndDate: TDateTimePicker; CDS_Main: TClientDataSet; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; TBAdd: TToolButton; TBEdit: TToolButton; Label4: TLabel; Label5: TLabel; Label12: TLabel; FactoryName: TEdit; SPID: TEdit; CRType: TComboBox; Label6: TLabel; YLName: TEdit; cxTabControl1: TcxTabControl; Label3: TLabel; CheDui: TEdit; Label7: TLabel; tuoBie: TEdit; Label8: TLabel; YLQName: TEdit; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v1Ssel: TcxGridDBColumn; v1CRTime: TcxGridDBColumn; v1filltime: TcxGridDBColumn; v1DHDate: TcxGridDBColumn; v1CRType: TcxGridDBColumn; v1FactoryName: TcxGridDBColumn; v1YLQName: TcxGridDBColumn; v1YLName: TcxGridDBColumn; v1CheQty: TcxGridDBColumn; v2Qty: TcxGridDBColumn; v1QtyUnit: TcxGridDBColumn; v1CheDui: TcxGridDBColumn; v1tuobie: TcxGridDBColumn; v1dunWei: TcxGridDBColumn; v1YFPrice: TcxGridDBColumn; v1Note: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); procedure ConNoMChange(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBExportClick(Sender: TObject); procedure TBFindClick(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure SPIDKeyPress(Sender: TObject; var Key: Char); procedure SPIDChange(Sender: TObject); procedure SPSpecChange(Sender: TObject); procedure FactoryNameChange(Sender: TObject); procedure TBAddClick(Sender: TObject); procedure TBEditClick(Sender: TObject); procedure cxTabControl1Change(Sender: TObject); private canshu1,canshu2,canshu3:string; procedure InitGrid(); { Private declarations } public { Public declarations } end; var frmJGSXNewList_SH: TfrmJGSXNewList_SH; implementation uses U_DataLink,U_RTFun,U_SXCKInPut, U_JGSXCKInPut; {$R *.dfm} procedure TfrmJGSXNewList_SH.FormDestroy(Sender: TObject); begin frmJGSXNewList_SH:=nil; end; procedure TfrmJGSXNewList_SH.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; procedure TfrmJGSXNewList_SH.FormCreate(Sender: TObject); begin //cxGrid1.Align:=alClient; EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); BegDate.DateTime:=EndDate.DateTime-30; canshu1:=Trim(DParameters1); canshu2:=Trim(DParameters2); canshu3:=Trim(DParameters3); end; procedure TfrmJGSXNewList_SH.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' from CK_SXPB_CR A'); sql.add(' where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+''''); sql.Add(' and A.CRTime<='''+Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1))+''''); sql.Add(' and isnull(CKName,'''')=''原料'''); SQL.Add(' and CRFlag=''入库'' '); if cxTabControl1.TabIndex=0 then begin sql.Add('and isnull(Chkstatus,'''')=''已提交'''); end; if cxTabControl1.TabIndex=1 then begin sql.Add('and isnull(Chkstatus,'''')=''已审核'''); end; SQL.Add(' order by A.CRTime desc'); Open; end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmJGSXNewList_SH.TBRafreshClick(Sender: TObject); begin BegDate.SetFocus; InitGrid(); end; procedure TfrmJGSXNewList_SH.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); end; end; procedure TfrmJGSXNewList_SH.TBCloseClick(Sender: TObject); begin WriteCxGrid('原料审核列表FM',Tv1,'原料仓库'); Close; end; procedure TfrmJGSXNewList_SH.FormShow(Sender: TObject); begin ReadCxGrid('原料审核列表FM',Tv1,'原料仓库'); //InitGrid(); end; procedure TfrmJGSXNewList_SH.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; TcxGridToExcel('原料审核列表',cxGrid2); end; procedure TfrmJGSXNewList_SH.TBFindClick(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 TfrmJGSXNewList_SH.N1Click(Sender: TObject); begin SelOKNo(CDS_Main,True); end; procedure TfrmJGSXNewList_SH.N2Click(Sender: TObject); begin SelOKNo(CDS_Main,False); end; procedure TfrmJGSXNewList_SH.SPIDKeyPress(Sender: TObject; var Key: Char); begin if Key=#13 then begin {if Length(Trim(SPID.Text))<4 then Exit; try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered:=False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(',ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId)'); //sql.Add(' ,ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId )'); sql.Add(' from CK_SXPB_CR A'); sql.add(' where SPID like :SXID'); Parameters.ParamByName('SXID').Value:='%'+Trim(SXID.Text)+'%'; Open; //ShowMessage(SQL.Text); end; SCreateCDS20(ADOQueryMain,CDS_Main); SInitCDSData20(ADOQueryMain,CDS_Main); finally ADOQueryMain.EnableControls; end; } end; end; procedure TfrmJGSXNewList_SH.SPIDChange(Sender: TObject); begin if Length(Trim(SPID.Text))<4 then begin if Trim(SPID.Text)<>'' then Exit; end; TBFind.Click; end; procedure TfrmJGSXNewList_SH.SPSpecChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJGSXNewList_SH.FactoryNameChange(Sender: TObject); begin TBFind.Click; end; procedure TfrmJGSXNewList_SH.TBAddClick(Sender: TObject); begin if CDS_Main.IsEmpty then exit; if cxTabControl1.TabIndex<>0 then Exit; if CDS_Main.Locate('Ssel',True,[])=false then begin application.MessageBox('没有选择数据','提示'); exit; end; with CDS_Main do begin First; while not eof do begin if FieldByName('Ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('Update CK_SXPB_CR set '); sql.Add('Chker='''+trim(DName)+''',Chkstatus=''已审核'',Chkdate=getdate()'); sql.Add('where SPID='''+trim(CDS_Main.fieldbyname('SPID').AsString)+''''); ExecSQL; end; CDS_Main.Delete; end else next; end; end; application.MessageBox('操作成功','提示'); end; procedure TfrmJGSXNewList_SH.TBEditClick(Sender: TObject); begin if CDS_Main.IsEmpty then exit; if CDS_Main.Locate('Ssel',True,[])=false then begin application.MessageBox('没有选择数据','提示'); exit; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from YF_Money_CR where Mainid='''+Trim(CDS_Main.fieldbyname('SPID').AsString)+''''); Open; end; if ADOQueryTemp.IsEmpty=False then begin Application.MessageBox('已产生费用,不能修改!','提示',0); Exit; end; with CDS_Main do begin First; while not eof do begin if FieldByName('Ssel').AsBoolean=true then begin with ADOQueryCmd do begin close; sql.Clear; sql.Add('Update CK_SXPB_CR set '); sql.Add('Chker='''+trim(DName)+''',Chkstatus=''审核不通过'',Chkdate=getdate() '); sql.Add('where SPID='''+trim(CDS_Main.fieldbyname('SPID').AsString)+''''); ExecSQL; end; CDS_Main.Delete; end else next; end; end; application.MessageBox('操作成功','提示'); end; procedure TfrmJGSXNewList_SH.cxTabControl1Change(Sender: TObject); begin InitGrid(); end; end.