unit CadRelatorioSistema;

interface

uses
  Windows, system.UItypes, IB_Access, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ModeloCadastro, StdCtrls, IB_Controls, Mask, IB_Grid, 
  IB_Components, Buttons, UCBase, ImgList, AppEvnts, ExtCtrls, Grids,
  ComCtrls, jpeg, IB_EditButton, System.ImageList;

type
  TfrmCadRelatorioSistema = class(TFrModeloCadastro)
    edtRelatorio: TIB_LookupCombo;
    edtDescricao: TIB_Edit;
    IB_CheckBox1: TIB_CheckBox;
    IB_CheckBox2: TIB_CheckBox;
    GrupoUsaParamentro: TGroupBox;
    IB_ComboBox1: TIB_ComboBox;
    IB_ComboBox2: TIB_ComboBox;
    IB_Edit1: TIB_Edit;
    IB_CheckBox3: TIB_CheckBox;
    qrRelatNoBanco: TIB_Query;
    dsrRelatBanco: TIB_DataSource;
    BitBtn2: TBitBtn;
    procedure FormCreate(Sender: TObject);
    procedure AtualizaTela;
    procedure BtAnteriorClick(Sender: TObject);
    procedure BtProximoClick(Sender: TObject);
    procedure BtExcluirClick(Sender: TObject);
    procedure BtEditarClick(Sender: TObject);
    procedure BtInserirClick(Sender: TObject);
    procedure BtGravarClick(Sender: TObject);
    procedure BtCancelarClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmCadRelatorioSistema: TfrmCadRelatorioSistema;

implementation

uses DataModulo, Rotinas;

{$R *.dfm}

procedure TfrmCadRelatorioSistema.AtualizaTela;
begin
   qrRelatNoBanco.Close;
   qrRelatNoBanco.SQLWhere.Clear;
   qrRelatNoBanco.SQLWhere.Add(' WHERE RB_ITEM.FOLDER_ID >= 0 ');

   if TbPrincipal.State in [dssInsert] then
   begin
      qrRelatNoBanco.SQLWhere.Add(' AND RB_ITEM.ITEM_ID NOT IN ( ');
      qrRelatNoBanco.SQLWhere.Add('                              SELECT RELATORIO_SISTEMA.COD_RELATORIO');
      qrRelatNoBanco.SQLWhere.Add('                              FROM RELATORIO_SISTEMA');
      qrRelatNoBanco.SQLWhere.Add('                            )');
   end;
   qrRelatNoBanco.Open;

   if not qrRelatNoBanco.Locate('ITEM_ID', TbPrincipal.FieldByName('COD_RELATORIO').Value , [] ) then
   begin
      if not qrRelatNoBanco.Bof then
      begin
         qrRelatNoBanco.First;
         qrRelatNoBanco.Prior;
      end
   end;
end;

procedure TfrmCadRelatorioSistema.FormCreate(Sender: TObject);
begin
  inherited;
   qrRelatNoBanco.Open;
   if not qrRelatNoBanco.Bof then
   begin
      qrRelatNoBanco.First;
      qrRelatNoBanco.Prior;
   end;
end;

procedure TfrmCadRelatorioSistema.BtAnteriorClick(Sender: TObject);
begin
  inherited;
AtualizaTela
end;

procedure TfrmCadRelatorioSistema.BtProximoClick(Sender: TObject);
begin
  inherited;
AtualizaTela
end;

procedure TfrmCadRelatorioSistema.BtExcluirClick(Sender: TObject);
begin
  inherited;
AtualizaTela
end;

procedure TfrmCadRelatorioSistema.BtEditarClick(Sender: TObject);
begin
  inherited;
   AtualizaTela
end;

procedure TfrmCadRelatorioSistema.BtInserirClick(Sender: TObject);
begin
   inherited;
   //=============== No cadastro nao mostra os relatorios ja utilizados ================
   AtualizaTela;
end;

procedure TfrmCadRelatorioSistema.BtGravarClick(Sender: TObject);
begin
   if edtRelatorio.Text = '' then
   begin
      MessageDlg('É necessário seleciona um relatório ', mtWarning, [mbOK], 0);
      edtRelatorio.SetFocus;
      Exit;
   end;

   if edtDescricao.Text = '' then
   begin
      MessageDlg('Informe uma descrição para o relatório', mtWarning, [mbOK], 0);
      edtDescricao.SetFocus;
      Exit;
   end;

   TbPrincipal.FieldByName('COD_RELATORIO').Value := qrRelatNoBanco.FieldByName('ITEM_ID').Value ;
   TbPrincipal.FieldByName('NOME').Value          := qrRelatNoBanco.FieldByName('NAME').Value ;
   inherited;

end;

procedure TfrmCadRelatorioSistema.BtCancelarClick(Sender: TObject);
begin
  inherited;
   AtualizaTela;
end;

end.
