unit U_ZdyAttachGYS;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
  cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
  StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
  cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
  cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
  cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
  RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
  IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar,
  cxButtonEdit, cxTextEdit, cxPC;

type
  TfrmZdyAttachGYS = class(TForm)
    ToolBar1: TToolBar;
    TBRafresh: TToolButton;
    TBDel: TToolButton;
    TBClose: TToolButton;
    ADOQueryTemp: TADOQuery;
    ADOQueryCmd: TADOQuery;
    Panel1: TPanel;
    ToolButton2: TToolButton;
    ADOQueryMain: TADOQuery;
    ToolButton1: TToolButton;
    RM1: TRMGridReport;
    RMDB_Main: TRMDBDataSet;
    Label3: TLabel;
    ZdyName: TEdit;
    cxGrid2: TcxGrid;
    Tv2: TcxGridDBTableView;
    cxGridLevel1: TcxGridLevel;
    cxGridPopupMenu2: TcxGridPopupMenu;
    DS_HZ: TDataSource;
    CDS_HZ: TClientDataSet;
    ToolButton3: TToolButton;
    v2Column6: TcxGridDBColumn;
    v2Column1: TcxGridDBColumn;
    v2Column2: TcxGridDBColumn;
    v2Column3: TcxGridDBColumn;
    v2Column4: TcxGridDBColumn;
    v2Column5: TcxGridDBColumn;
    v2Column7: TcxGridDBColumn;
    v2Column9: TcxGridDBColumn;
    Label1: TLabel;
    ZdyCode: TEdit;
    TBedit: TToolButton;
    v2Column8: TcxGridDBColumn;
    Label2: TLabel;
    DEFstr5: TComboBox;
    v2Column10: TcxGridDBColumn;
    v2Column11: TcxGridDBColumn;
    v2Column12: TcxGridDBColumn;
    v2Column13: TcxGridDBColumn;
    DEFStr7: TEdit;
    Label4: TLabel;
    v2Column14: TcxGridDBColumn;
    v2Column15: TcxGridDBColumn;
    Tchk: TToolButton;
    TNochk: TToolButton;
    cxTabControl1: TcxTabControl;
    v2Column16: TcxGridDBColumn;
    ToolButton4: TToolButton;
    procedure FormDestroy(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure TBCloseClick(Sender: TObject);
    procedure TBDelClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure TBRafreshClick(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure ZdyNameChange(Sender: TObject);
    procedure ToolButton1Click(Sender: TObject);
    procedure TBeditClick(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure TchkClick(Sender: TObject);
    procedure TNochkClick(Sender: TObject);
    procedure cxTabControl1Change(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure Tv2CellDblClick(Sender: TcxCustomGridTableView;
      ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
      AShift: TShiftState; var AHandled: Boolean);
  private
    { Private declarations }
    procedure InitGrid();
    procedure setstatus();

  public
    fDEFstr5:string;
    canshu1:string;
  end;

var
  frmZdyAttachGYS: TfrmZdyAttachGYS;

implementation
uses
  U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInputGYS, U_FjList_RZ;

{$R *.dfm}
procedure TfrmZdyAttachGYS.setstatus();
begin
  TBedit.Visible:=false;
  TBdel.Visible:=false;
  tchk.Visible:=false;
  tnochk.Visible:=false;
  IF trim(canshu1)=''then
  begin
   case cxTabControl1.TabIndex of
    0:begin
        TBedit.Visible:=true;
         TBdel.Visible:=true;
      end;
    1:begin
      end;
    end;
  end
  else IF trim(canshu1)='高权限'then
  begin
    case cxTabControl1.TabIndex of
    0:begin
        TBedit.Visible:=true;
        tbdel.Visible:=True;
        tchk.Visible:=True;
      end;
    1:begin
        tNochk.Visible:=True;
      end;
    end;
  end;
 // InitGrid();
end;



procedure TfrmZdyAttachGYS.InitGrid();
begin
  try
    ADOQueryMain.DisableControls;
    with ADOQueryMain do
    begin
      Filtered:=False;
      Close;
      SQL.Clear;
      sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' ');
      if cxTabControl1.TabIndex<2 then
      sql.Add(' and status='''+inttostr(cxTabControl1.TabIndex)+''' ');
      Open;
    end;
    SCreateCDS20(ADOQueryMain,CDS_HZ);
    SInitCDSData20(ADOQueryMain,CDS_HZ);
  finally
    ADOQueryMain.EnableControls;
  end;
  ToolButton2.Click;
end;


procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject);
begin
  frmZdyAttachGYS:=nil;
end;

procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action:=caFree;
end;

procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject);
begin
  WriteCxGrid('供应商资料',Tv2,'客户自定义');
  Close;
end;
procedure TfrmZdyAttachGYS.TBDelClick(Sender: TObject);
begin
  if CDS_HZ.IsEmpty then Exit;
  if Application.MessageBox('确定要删除数据吗？','提示',32+4)<>IDYES then Exit;
  if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then
  begin
    with ADOQueryCmd do
    begin
      Close;
      SQL.Clear;
      sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+'''');
      sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+'''');
      ExecSQL;
    end;
  end;
  CDS_HZ.Delete;
end;

procedure TfrmZdyAttachGYS.FormShow(Sender: TObject);
begin
  ReadCxGrid('供应商资料',Tv2,'客户自定义');
  IF trim(fDEFstr5)<>'' then
  begin
    DEFstr5.Text:=trim(fDEFstr5);
    DEFstr5.Enabled:=false;
  end;
  setstatus();
  InitGrid();
end;

procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject);
begin
  InitGrid();
end;

procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject);
begin
  if ADOQueryMain.Active then
  begin
    SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
    SCreateCDS20(ADOQueryMain,CDS_HZ);
    SInitCDSData20(ADOQueryMain,CDS_HZ);
  end;
end;

procedure TfrmZdyAttachGYS.ZdyNameChange(Sender: TObject);
begin
  ToolButton2.Click;
end;


procedure TfrmZdyAttachGYS.ToolButton1Click(Sender: TObject);
begin
  if ADOQueryMain.IsEmpty then Exit;
    TcxGridToExcel(self.Caption,cxgrid2);
//  SelExportData(Tv2,ADOQueryMain,'供应商资料列表');
end;

procedure TfrmZdyAttachGYS.TBeditClick(Sender: TObject);
begin
  try
    frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application);
    with frmZdyAttInputGYS do
    begin
      FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
      fDEFstr5:=self.fDEFstr5;
      if ShowModal=1 then
      begin
        TBRafresh.Click;
      end;
    end;
  finally
    frmZdyAttInputGYS.Free;
  end;
end;

procedure TfrmZdyAttachGYS.ToolButton3Click(Sender: TObject);
begin
  try
    frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application);
    with frmZdyAttInputGYS do
    begin
      FCYID:='';
      fDEFstr5:=self.fDEFstr5;
      if ShowModal=1 then
      begin
        TBRafresh.Click;
      end;
    end;
  finally
    frmZdyAttInputGYS.Free;
  end;
end;

procedure TfrmZdyAttachGYS.FormCreate(Sender: TObject);
begin
   canshu1:=trim(DParameters1);
end;

procedure TfrmZdyAttachGYS.TchkClick(Sender: TObject);
begin
 if CDS_HZ.IsEmpty then exit;
  if CDS_HZ.Locate('ssel',true,[])=false then
  begin
    Application.MessageBox('没有选择数据!','提示',0);
    Exit;
  end;

 try
   with CDS_HZ do
   begin
     DisableControls;
     First;
     while not eof do
     begin
       iF fieldbyname('ssel').AsBoolean then
       begin
         with ADOQueryCmd do
         begin
           close;
           sql.Clear;
           sql.Add('update  KH_Zdy_Attachment SET status=1 ');
           sql.Add('where ATID='+quotedstr(trim(CDS_HZ.fieldbyname('ATID').AsString)));
           execsql;
         end;
       end;
       next;
     end;
     First;
     EnableControls;
    end;
    application.MessageBox('审核成功！','提示信息');
    TBRafresh.Click;
  except
    CDS_HZ.EnableControls;
    application.MessageBox('审核失败！','提示信息',0);
  end;
end;

procedure TfrmZdyAttachGYS.TNochkClick(Sender: TObject);
begin
  if CDS_HZ.IsEmpty then exit;
  if CDS_HZ.Locate('ssel',true,[])=false then
  begin
    Application.MessageBox('没有选择数据!','提示',0);
    Exit;
  end;
  try
   with CDS_HZ do
   begin
     DisableControls;
     First;
     while not eof do
     begin
       iF fieldbyname('ssel').AsBoolean then
       begin
         with ADOQueryCmd do
         begin
           close;
           sql.Clear;
           sql.Add('update  KH_Zdy_Attachment SET status=0 ');
           sql.Add('where ATID='+quotedstr(trim(CDS_HZ.fieldbyname('ATID').AsString)));
           execsql;
         end;
       end;
       next;
     end;
     First;
     EnableControls;
    end;
    application.MessageBox('撤销审核成功！','提示信息');
    TBRafresh.Click;
  except
    CDS_HZ.EnableControls;
    application.MessageBox('撤销审核失败！','提示信息',0);
  end;
end;

procedure TfrmZdyAttachGYS.cxTabControl1Change(Sender: TObject);
begin
  setstatus();
  InitGrid();
end;

procedure TfrmZdyAttachGYS.ToolButton4Click(Sender: TObject);
begin
  if CDS_HZ.IsEmpty then Exit;
  try
    frmFjList_RZ:=TfrmFjList_RZ.Create(Application);
    with frmFjList_RZ do
    begin
    //  PState:=1;
   //   if Trim(DParameters1)<>'高权限'  then cxButton1.Visible:=false;
      fkeyNO:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
      fType:='供应商资料';
      if ShowModal=1 then
      begin

      end;
    end;
  finally
    frmFjList_RZ.Free;
  end;
end;

procedure TfrmZdyAttachGYS.Tv2CellDblClick(Sender: TcxCustomGridTableView;
  ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
  AShift: TShiftState; var AHandled: Boolean);
begin
  TBedit.Click;
end;

end.


