unit U_TradeClothOutList;

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, MovePanel, Math, Clipbrd,
  cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, cxTextEdit, dxSkinsCore,
  dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, cxPC,
  System.StrUtils, dxScrollbarAnnotations;

type
  TfrmTradeClothOutList = class(TfrmBaseList)
    ToolBar1: TToolBar;
    TBRafresh: TToolButton;
    TBExport: TToolButton;
    TBClose: TToolButton;
    Panel1: TPanel;
    ADOQueryCmd: TADOQuery;
    ADOQueryMain: TADOQuery;
    ADOQueryTemp: TADOQuery;
    DS_1: TDataSource;
    GPM_1: TcxGridPopupMenu;
    Label2: TLabel;
    BegDate: TDateTimePicker;
    EndDate: TDateTimePicker;
    CDS_1: TClientDataSet;
    TBRKCX: TToolButton;
    begtime: TDateTimePicker;
    endTime: TDateTimePicker;
    IsJYTime: TCheckBox;
    ToolButton2: TToolButton;
    ToolButton4: TToolButton;
    Panel6: TPanel;
    Label31: TLabel;
    LBCPAP: TLabel;
    BTLP: TButton;
    BTNP: TButton;
    TCBNOR: TComboBox;
    cxGrid1: TcxGrid;
    Tv1: TcxGridDBTableView;
    v1Column22: TcxGridDBColumn;
    v1Column21: TcxGridDBColumn;
    v1Column32: TcxGridDBColumn;
    v1Column1: TcxGridDBColumn;
    Tv1Column4: TcxGridDBColumn;
    v1Column13: TcxGridDBColumn;
    v1Column4: TcxGridDBColumn;
    v1Column23: TcxGridDBColumn;
    v1Column8: TcxGridDBColumn;
    v1Column27: TcxGridDBColumn;
    v1Column28: TcxGridDBColumn;
    v1Column10: TcxGridDBColumn;
    Tv1Column10: TcxGridDBColumn;
    v1Column12: TcxGridDBColumn;
    v1Column42: TcxGridDBColumn;
    v1Column6: TcxGridDBColumn;
    v1Column3: TcxGridDBColumn;
    v1Column5: TcxGridDBColumn;
    cxGrid1Level1: TcxGridLevel;
    Label3: TLabel;
    Label7: TLabel;
    Label10: TLabel;
    Label5: TLabel;
    Label20: TLabel;
    Label23: TLabel;
    OrderNo: TEdit;
    conNO: TEdit;
    STKID: TEdit;
    C_Name: TEdit;
    C_Color: TEdit;
    C_Composition: TEdit;
    C_Code: TEdit;
    Tv1Column9: TcxGridDBColumn;
    Tv1Column11: TcxGridDBColumn;
    PM_1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    ToolButton1: TToolButton;
    N3: TMenuItem;
    Tv1Column6: TcxGridDBColumn;
    Tv1Column1: TcxGridDBColumn;
    Tv1Column2: TcxGridDBColumn;
    Tv1Column3: TcxGridDBColumn;
    Label1: TLabel;
    BCIOID: TEdit;
    Tv1Column5: TcxGridDBColumn;
    Label4: TLabel;
    ToCoName: TEdit;
    Tv1Column7: TcxGridDBColumn;
    Tv1Column8: TcxGridDBColumn;
    Tv1Column12: TcxGridDBColumn;
    ToolButton3: TToolButton;
    panel2: TPanel;
    Label6: TLabel;
    Edit1: TEdit;
    Label8: TLabel;
    Edit2: TEdit;
    Button1: TButton;
    Button2: TButton;
    Label9: TLabel;
    IONO: TEdit;
    btn1: TToolButton;
    btn2: TToolButton;
    ADOQueryPrint: TADOQuery;
    RM1: TRMGridReport;
    RMDB_1: TRMDBDataSet;
    cxgrdbclmnTv1Column13: TcxGridDBColumn;
    MovePanel1: TMovePanel;
    lbl2: TLabel;
    btn3: TButton;
    btn4: TButton;
    edt1: TEdit;
    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 orderNoKeyPress(Sender: TObject; var Key: Char);
    procedure TBRKCXClick(Sender: TObject);
    procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
    procedure BTNPClick(Sender: TObject);
    procedure BTLPClick(Sender: TObject);
    procedure TCBNORChange(Sender: TObject);
    procedure JYTypeChange(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure cxPageControl1Change(Sender: TObject);
    procedure CDS_1BeforeOpen(DataSet: TDataSet);
    procedure Tv1DataControllerFilterBeforeChange(Sender: TcxDBDataFilterCriteria; ADataSet: TDataSet; const AFilterText: string);
    procedure Tv1TcxGridDBDataControllerTcxDataSummaryFooterSummaryItems6GetText(Sender: TcxDataSummaryItem; const AValue: Variant; AIsFooter: Boolean; var AText: string);
    procedure ToolButton4Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure ToolButton1Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure btn1Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
    procedure btn3Click(Sender: TObject);
    procedure btn4Click(Sender: TObject);
  private
    CurrentPage, RecordsNumber: Integer;
    lstCust: TStringList;
    procedure InitGrid();
    procedure SetStatus();
    { Private declarations }
  public
    canshu1, canshu2, FWorkshop, FFCIID, FFIONO: string;
    { Public declarations }
  end;

implementation

uses
  U_DataLink, U_RTFun, U_LabelPrint, U_LabSet;

{$R *.dfm}

procedure TfrmTradeClothOutList.SetStatus();
begin
  TBRKCX.Enabled := False;
  ToolButton3.Enabled := False;
  if canshu1 = '����' then
  begin
    TBRKCX.Enabled := true;
    ToolButton3.Enabled := true;
  end;

end;

procedure TfrmTradeClothOutList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  inherited;
  FreeAndNil(lstCust);
  Action := caFree;
end;

procedure TfrmTradeClothOutList.FormCreate(Sender: TObject);
begin
  inherited;
  lstCust := TStringList.Create;
  EndDate.DateTime := SGetServerDateTime(ADOQueryTemp);
  BegDate.DateTime := EndDate.DateTime - 20;
end;

procedure TfrmTradeClothOutList.InitGrid();
var
  WSql: string;
begin

  WSql := SGetFilters(Panel1, 1, 2);
  if Trim(WSql) <> '' then
    WSql := ' and ' + WSql;
  if IsJYTime.Checked then
  begin
    WSql := WSql + ' and IOTime>=' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime));
    WSql := WSql + ' and IOTime<' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1));
  end;

  try
    ADOQueryMain.DisableControls;

    with ADOQueryMain do
    begin
      Filtered := False;
      Close;
      sql.Clear;
      sql.Add(' select top ' + inttostr(RecordsNumber) + ' temp_row.* ');
      sql.Add(' from  ');
      sql.Add('(select  rownumber=cast((row_number() over(order by A.IOTime desc)) as int)');
      sql.Add(',COUNT(1) OVER() AS TotalCount');
      sql.Add(',* from V_Trade_Cloth_IO  A where A.IOFlag = ''����'' ' + WSql);
      sql.Add(') temp_row ');
      sql.Add(' where  rownumber> ' + inttostr(((CurrentPage - 1) * RecordsNumber)));
      sql.Add(' order by rownumber');
//      showmessage(sql.text);
      Open;
    end;
    SCreateCDS(ADOQueryMain, CDS_1);
    SInitCDSData(ADOQueryMain, CDS_1);
    LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(CDS_1.FieldByName('TotalCount').AsInteger / RecordsNumber));
  finally
    ADOQueryMain.EnableControls;
    TV1.DataController.Filter.Clear;
  end;

end;

procedure TfrmTradeClothOutList.TBRafreshClick(Sender: TObject);
begin
  CurrentPage := 1;
  InitGrid();
end;

procedure TfrmTradeClothOutList.CDS_1BeforeOpen(DataSet: TDataSet);
begin

  lstCust.Clear;
end;

procedure TfrmTradeClothOutList.ConNoMChange(Sender: TObject);
begin
  if ADOQueryMain.Active then
  begin
    SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
  end;
end;

procedure TfrmTradeClothOutList.cxPageControl1Change(Sender: TObject);
begin
  CurrentPage := 1;
  SetStatus();
  InitGrid();
end;

procedure TfrmTradeClothOutList.TBCloseClick(Sender: TObject);
begin

  Close;
end;

procedure TfrmTradeClothOutList.FormShow(Sender: TObject);
begin
  inherited;

  ReadCxGrid(trim(self.Caption) + 'Tv11', Tv1, '��Ʒ�ֿ�');
  CurrentPage := 1;
  RecordsNumber := 500;
  canshu1 := self.fParameters1;
  canshu2 := self.fParameters3;
  FWorkshop := self.fParameters3;

  SetStatus();
end;

procedure TfrmTradeClothOutList.TBExportClick(Sender: TObject);
begin
  if ADOQueryMain.IsEmpty then
    exit;
  TcxGridToExcel(Self.Caption, cxGrid1);
end;

procedure TfrmTradeClothOutList.orderNoKeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then
  begin
    CurrentPage := 1;
    InitGrid();
  end;
end;

procedure TfrmTradeClothOutList.TBRKCXClick(Sender: TObject);
var
  MIOIDS, MStkIds, MOutNos: string;
begin
  if CDS_1.IsEmpty then
    Exit;
  if not CDS_1.Locate('SSel', True, []) then
  begin
    Application.MessageBox('û��ѡ������!', '��ʾ', 0);
    Exit;
  end;

  MIOIDS := '';
  MStkIds := '';
  MOutNos := '';
  CDS_1.DisableControls;
  with CDS_1 do
  begin
    First;
    while not Eof do
    begin
      if CDS_1.fieldbyname('SSel').AsBoolean then
      begin
        MIOIDS := MIOIDS + (Trim(CDS_1.fieldbyname('IOID').AsString)) + ',';
        MStkIds := MStkIds + (Trim(CDS_1.fieldbyname('STKID').AsString)) + ',';
        MOutNos := MOutNos + (Trim(CDS_1.fieldbyname('IONO').AsString)) + ',';
      end;
      Next;
    end;
  end;
  MIOIDS := leftBstr(trim(MIOIDS), length(MIOIDS) - 1);
  MStkIds := leftBstr(trim(MStkIds), length(MStkIds) - 1);
  MOutNos := leftBstr(trim(MOutNos), length(MOutNos) - 1);
  CDS_1.Locate('SSel', True, []);
  CDS_1.EnableControls;

  if Application.MessageBox('ȷ��Ҫִ�в�����', '��ʾ', 32 + 4) <> IdyeS then
    Exit;

  try
    ADOQueryCmd.Connection.BeginTrans;
    with ADOQueryCmd do
    begin
      Close;
      Sql.Clear;
      sql.Add('insert into Finance_Need_Up(UType,UDataId) values(''ӡȾ��Ʒ����'',' + quotedstr(MOutNos) + ')  ');

      Sql.Add('exec P_Trade_Cloth_ReOut ');
      Sql.Add('@StkIds=' + quotedstr(trim(MStkIds)));
      Sql.Add(',@IOIDS=' + quotedstr(trim(MIOIDS)));
      Sql.Add(',@FillId=' + Quotedstr(DCode));
      Sql.Add(',@Filler=' + Quotedstr(DName));

      Sql.Add('exec P_Trade_Cloth_DR ');
      Sql.Add('@OutNo=' + quotedstr(trim(MOutNos)));

      Open;
    end;
    if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
    begin
      raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
    end;
    with ADOQueryCmd do
    begin
      Close;
      sql.Clear;
      sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
      sql.Add(' ' + quotedstr(trim(DName)));
      sql.Add(',getdate() ');
      sql.Add(',' + quotedstr(trim(self.Caption)));
      sql.Add(',' + quotedstr(trim('ó�ײ�ƥ��⳷��')));
      sql.Add(',' + quotedstr(trim(MIOIDS)));
      sql.Add(',' + quotedstr(trim('�ɹ�')));
      sql.Add(')');
      ExecSQL;
    end;

    ADOQueryCmd.Connection.CommitTrans;
    InitGrid();
  except
    ADOQueryCmd.Connection.RollbackTrans;
    application.MessageBox(PChar(Exception(ExceptObject).Message), '��ʾ��Ϣ', 0);
  end;

end;

procedure TfrmTradeClothOutList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
//  Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;

procedure TfrmTradeClothOutList.Tv1DataControllerFilterBeforeChange(Sender: TcxDBDataFilterCriteria; ADataSet: TDataSet; const AFilterText: string);
begin
  lstCust.Clear;
end;

procedure TfrmTradeClothOutList.Tv1TcxGridDBDataControllerTcxDataSummaryFooterSummaryItems6GetText(Sender: TcxDataSummaryItem; const AValue: Variant; AIsFooter: Boolean; var AText: string);
begin
  if lstCust <> nil then
    AText := IntToStr(lstCust.Count);
end;

procedure TfrmTradeClothOutList.btn1Click(Sender: TObject);
var
  fPrintFile, FLabVolume: string;
begin
  if CDS_1.IsEmpty then
    Exit;
  if CDS_1.Locate('SSel', True, []) = False then
  begin
    Application.MessageBox('û��ѡ������!', '��ʾ', 0);
    Exit;
  end;
  frmLabSet := TfrmLabSet.Create(self);
  with frmLabSet do
  begin
    if self.fParameters1 = '¼��' then
      FAuthority := '����ҵ��';
    if showmodal = 1 then
    begin
//      Order_Sub.Edit;
//      Order_Sub.fieldbyname('LabName').Value := frmLabSet.CDS_Label.fieldbyname('labelCaption').asstring;
//      Order_Sub.Post;
      CDS_1.DisableControls;
      with CDS_1 do
      begin
        First;
        while not Eof do
        begin
          if CDS_1.FieldByName('SSel').AsBoolean = True then
          begin
            with ADOQueryCmd do
            begin
              Close;
              sql.Clear;
              sql.Add('Update Trade_Cloth_Inspect Set LabName=''' + frmLabSet.CDS_Label.fieldbyname('labelCaption').asstring + '''');
              sql.Add(' where CIID=''' + Trim(CDS_1.fieldbyname('CIID').AsString) + '''');
              ExecSQL;
            end;
          end;
          Next;
        end;
      end;
      CDS_1.EnableControls;
      application.MessageBox('����ɹ���', '��ʾ��Ϣ');
    end;
    free;
  end;
end;

procedure TfrmTradeClothOutList.btn2Click(Sender: TObject);
begin
  if CDS_1.IsEmpty then
    Exit;
  if CDS_1.Locate('SSel', True, []) = False then
  begin
    Application.MessageBox('û��ѡ������!', '��ʾ', 0);
    Exit;
  end;
  MovePanel1.Visible := true;
end;

procedure TfrmTradeClothOutList.btn3Click(Sender: TObject);
var
  fPrintFile, FLabVolume: string;
begin
  CDS_1.DisableControls;
  with CDS_1 do
  begin
    First;
    while not Eof do
    begin
      if CDS_1.FieldByName('SSel').AsBoolean = True then
      begin
        with ADOQueryCmd do
        begin
          Close;
          sql.Clear;
          sql.Add('Update Trade_Cloth_Inspect Set PrtCount=PrtCount+1,PrtDate=getdate(),Prter=''' + Trim(DName) + '''');
          sql.Add(' where CIID=''' + Trim(CDS_1.fieldbyname('CIID').AsString) + '''');
          ExecSQL;
        end;

        with ADOQueryPrint do
        begin
          Close;
          SQL.Clear;
          sql.Add(' EXEC P_Trade_Insp_Prt_Lab ');
          SQL.Add(' @CIID=''' + Trim(CDS_1.fieldbyname('CIID').AsString) + '''');
          Open;
        end;
        if ADOQueryPrint.IsEmpty then
        begin
          application.MessageBox('��ǩ����δ�ҵ���', '��ʾ��Ϣ', MB_ICONERROR);
          exit;
        end;

        if Trim(ADOQueryPrint.fieldbyname('Grade').AsString) = '��Ʒ' then
          FLabVolume := Trim(ADOQueryPrint.fieldbyname('LabVolume').AsString)
        else
          FLabVolume := '��Ʒ��ǩ';

        ExportFtErpFile(FLabVolume + '.rmf', ADOQueryTemp);
        fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + FLabVolume + '.rmf';

        if FileExists(fPrintFile) then
        begin
          RM1.LoadFromFile(fPrintFile);
          if Trim(ADOQueryPrint.fieldbyname('LabVolume').AsString) <> '��Ʒ��ǩ' then
            Rm1.DefaultCopies := strtointdef((edt1.Text), 1)
          else
            Rm1.DefaultCopies := strtointdef((edt1.Text), 1);
          RM1.PrintReport;
        end
        else
        begin
          Application.MessageBox(PChar('û����' + fPrintFile), '��ʾ', 0);
        end;
      end;
      Next;
    end;
  end;
  MovePanel1.Visible := false;
  CDS_1.EnableControls;
end;

procedure TfrmTradeClothOutList.btn4Click(Sender: TObject);
begin
  MovePanel1.Visible := false;
end;

procedure TfrmTradeClothOutList.BTNPClick(Sender: TObject);
begin
  if CurrentPage < CDS_1.FieldByName('TotalCount').AsInteger / RecordsNumber then
    CurrentPage := CurrentPage + 1;
  InitGrid();
end;

procedure TfrmTradeClothOutList.Button1Click(Sender: TObject);
begin
  if StrToFloatdef(Edit1.Text, 0) = 0 then
  begin
    Application.MessageBox('������д����!', '��ʾ', 0);
    Exit;
  end;

  if Edit2.Text = '' then
  begin
    Edit2.Text := '0';
  end;

  with ADOQueryCmd do
  begin
    Close;
    Sql.Clear;
    Sql.Add('exec P_Trade_Copy_Out ');
    Sql.Add(' @CIID=' + quotedstr(trim(FFCIID)));
    Sql.Add(',@Meter=' + Quotedstr(Edit1.text));
    Sql.Add(',@GrossWeight=' + Quotedstr(Edit2.text));

    Sql.Add('exec P_Trade_Cloth_DR ');
    Sql.Add('@OutNo=' + quotedstr(trim(FFIONO)));

    ExecSQL;
  end;

  Edit1.Text := '';
  Edit2.Text := '';
  TBRafresh.Click;
end;

procedure TfrmTradeClothOutList.Button2Click(Sender: TObject);
begin
  panel2.Visible := false;
  cxGrid1.Enabled := true;
  Edit1.Text := '';
  Edit2.Text := '';
end;

procedure TfrmTradeClothOutList.BTLPClick(Sender: TObject);
begin
  if CurrentPage > 1 then
    CurrentPage := CurrentPage - 1;
  InitGrid();
end;

procedure TfrmTradeClothOutList.TCBNORChange(Sender: TObject);
begin
  RecordsNumber := StrToInt(TCBNOR.Text);
  CurrentPage := 1;
  InitGrid();
end;

procedure TfrmTradeClothOutList.JYTypeChange(Sender: TObject);
begin
  CurrentPage := 1;
  InitGrid();
end;

procedure TfrmTradeClothOutList.N1Click(Sender: TObject);
begin
  SelOKNo(CDS_1, true);

end;

procedure TfrmTradeClothOutList.N2Click(Sender: TObject);
begin
  SelOKNo(CDS_1, false);

end;

procedure TfrmTradeClothOutList.N3Click(Sender: TObject);
begin
  Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;

procedure TfrmTradeClothOutList.ToolButton1Click(Sender: TObject);
begin
  if CDS_1.IsEmpty then
    Exit;

  try
    frmLabelPrint := TfrmLabelPrint.Create(Application);
    with frmLabelPrint do
    begin
      FLMType := 'TradeOutPrint';
      FFiltration1 := Trim(self.CDS_1.fieldbyname('IONO').AsString);
      CheckBox1.Checked := True;
      if ShowModal = 1 then
      begin

      end;
    end;
  finally
    frmLabelPrint.Free;
  end;

end;

procedure TfrmTradeClothOutList.ToolButton2Click(Sender: TObject);
var
  WSql: string;
begin
  if CDS_1.IsEmpty then
    Exit;
  if not CDS_1.Locate('SSel', True, []) then
  begin
    Application.MessageBox('û��ѡ������!', '��ʾ', 0);
    Exit;
  end;
  WSql := '';
  CDS_1.DisableControls;
  with CDS_1 do
  begin
    First;
    while not Eof do
    begin
      if CDS_1.fieldbyname('SSel').AsBoolean then
      begin
        if WSql <> '' then
        begin
          WSql := WSql + ',' + QuotedStr(Trim(CDS_1.fieldbyname('CIID').AsString));
        end
        else
        begin
          WSql := QuotedStr(Trim(CDS_1.fieldbyname('CIID').AsString));
        end;
      end;
      Next;
    end;
  end;
  CDS_1.Locate('SSel', True, []);
  CDS_1.EnableControls;
  try
    frmLabelPrint := TfrmLabelPrint.Create(Application);
    with frmLabelPrint do
    begin
      FLMType := 'TradeClothOut2';
      FFiltration1 := WSql;
      if ShowModal = 1 then
      begin

      end;
    end;
  finally
    frmLabelPrint.Free;
  end;
end;

procedure TfrmTradeClothOutList.ToolButton3Click(Sender: TObject);
begin
  if CDS_1.IsEmpty then
    Exit;
  FFCIID := Trim(CDS_1.fieldbyname('CIID').AsString);
  FFIONO := Trim(CDS_1.fieldbyname('IONO').AsString);
  panel2.Visible := true;
  cxGrid1.Enabled := false;
end;

procedure TfrmTradeClothOutList.ToolButton4Click(Sender: TObject);
begin
  WriteCxGrid(trim(self.Caption) + 'Tv11', Tv1, '��Ʒ�ֿ�');
end;

end.