unit U_YarnInfoList; 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, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, U_BaseList; type TfrmYarnInfoList = class(TfrmBaseList) ToolBar1: TToolBar; TBRafresh: TToolButton; TBFind: TToolButton; TBExport: TToolButton; TBClose: TToolButton; Panel1: TPanel; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; DataSource1: TDataSource; cxGridPopupMenu1: TcxGridPopupMenu; CDS_Main: TClientDataSet; RM1: TRMGridReport; RMDBMain: TRMDBDataSet; RMXLSExport1: TRMXLSExport; RMDBHZ: TRMDBDataSet; CDS_HZ: TClientDataSet; CDS_PRT: TClientDataSet; TBDel: TToolButton; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; TBAdd: TToolButton; TBEdit: TToolButton; cxGrid2: TcxGrid; Tv1: TcxGridDBTableView; v2Column1: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1Column12: TcxGridDBColumn; cxGrid2Level1: TcxGridLevel; v1Column1: TcxGridDBColumn; v1Column10: TcxGridDBColumn; v1Column17: TcxGridDBColumn; v1Column18: TcxGridDBColumn; v1Column9: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; Label2: TLabel; Label4: TLabel; Label5: TLabel; Y_Name: TEdit; Y_Spec: TEdit; Brand: TEdit; Tv1Column3: TcxGridDBColumn; ToolButton1: TToolButton; Tv1Column1: TcxGridDBColumn; Tv1Column4: TcxGridDBColumn; ToolButton2: TToolButton; 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 TBDelClick(Sender: TObject); procedure TBAddClick(Sender: TObject); procedure TBEditClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); private canshu1, FSTKName, canshu3: string; procedure InitGrid(); { Private declarations } public { Public declarations } end; implementation uses U_DataLink, U_RTFun, U_YarnInfoInPut, U_ZDYHelp; {$R *.dfm} procedure TfrmYarnInfoList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; Action := caFree; end; procedure TfrmYarnInfoList.FormCreate(Sender: TObject); begin inherited; canshu1 := Trim(DParameters1); FSTKName := Trim(DParameters2); canshu3 := Trim(DParameters3); end; procedure TfrmYarnInfoList.InitGrid(); begin try ADOQueryMain.DisableControls; with ADOQueryMain do begin Filtered := False; Close; sql.Clear; sql.Add(' select A.* '); sql.Add(' from BS_Yarn_Info A'); Open; end; SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); finally ADOQueryMain.EnableControls; end; end; procedure TfrmYarnInfoList.TBRafreshClick(Sender: TObject); begin InitGrid(); end; procedure TfrmYarnInfoList.ToolButton1Click(Sender: TObject); begin WriteCxGrid(Self.Caption, Tv1, '染色坯布仓库'); end; procedure TfrmYarnInfoList.ToolButton2Click(Sender: TObject); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'YType'; flagname := '类型'; MainType := '纱线档案'; if ShowModal = 1 then begin end; end; finally frmZDYHelp.Free; end; end; procedure TfrmYarnInfoList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); end; end; procedure TfrmYarnInfoList.TBCloseClick(Sender: TObject); begin Close; end; procedure TfrmYarnInfoList.FormShow(Sender: TObject); begin inherited; ReadCxGrid(Self.Caption, Tv1, '染色坯布仓库'); InitGrid(); end; procedure TfrmYarnInfoList.TBExportClick(Sender: TObject); begin if ADOQueryMain.IsEmpty then exit; TcxGridToExcel(trim(self.Caption), cxGrid2); end; procedure TfrmYarnInfoList.TBFindClick(Sender: TObject); begin if ADOQueryMain.Active then begin SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); SCreateCDS(ADOQueryMain, CDS_Main); SInitCDSData(ADOQueryMain, CDS_Main); end; end; procedure TfrmYarnInfoList.N1Click(Sender: TObject); begin SelOKNo(CDS_Main, True); end; procedure TfrmYarnInfoList.N2Click(Sender: TObject); begin SelOKNo(CDS_Main, False); end; procedure TfrmYarnInfoList.TBDelClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from BS_Yarn_IO where Y_Code=''' + Trim(CDS_Main.fieldbyname('Y_Code').AsString) + ''''); Open; end; if ADOQueryTemp.IsEmpty = False then begin Application.MessageBox('已入库不能修改!', '提示', 0); Exit; end; if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; try ADOQueryCmd.Connection.BeginTrans; with ADOQueryCmd do begin Close; sql.Clear; sql.Add(' delete BS_Yarn_Info where BYIID=''' + Trim(CDS_Main.fieldbyname('BYIID').AsString) + ''''); ExecSQL; end; ADOQueryCmd.Connection.CommitTrans; CDS_Main.Delete; except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('删除异常!', '提示', 0); end; end; procedure TfrmYarnInfoList.TBAddClick(Sender: TObject); begin try frmYarnInfoInPut := TfrmYarnInfoInPut.Create(Application); with frmYarnInfoInPut do begin FBYIID := ''; FSTKName := self.FSTKName; if ShowModal = 1 then begin Self.InitGrid(); end; end; finally frmYarnInfoInPut.Free; end; end; procedure TfrmYarnInfoList.TBEditClick(Sender: TObject); begin if CDS_Main.IsEmpty then Exit; try frmYarnInfoInPut := TfrmYarnInfoInPut.Create(Application); with frmYarnInfoInPut do begin FBYIID := Trim(CDS_Main.fieldbyname('BYIID').AsString); FSTKName := self.FSTKName; if ShowModal = 1 then begin Self.InitGrid(); end; end; finally frmYarnInfoInPut.Free; end; end; end.